Hi(ve) everyone!
Although my account was created at @gtg’s suggestion long time ago (on October 14, 2021), this is the very first time I'm writing a post here! 😀
I wanted to take a moment to summarize my contributions to Hive 🐝 so far and share some thoughts about my view of the platform’s future. 🕐
What Have I Done?
First Contributions
I started contributing to the Hive core on March 11, 2021 (just after the hard fork), and one of my very first contributions was the Merge Request titled “Remove MIRA”.
It might look strange that one of the first contribution involved deleting nearly 10k lines of code, but trust me, I did my best to balance that number out later on! 😉
My next task was to upgrade the C++ version in the hived source code to C++17, which is still in use today. 🙂
After that, I added the “offline mode” to the cli_wallet 👛 (Back in the good old days, this tool was the only way to create and send transactions to the blockchain). I also took part in transitioning from legacy operation serialization ([0,{...}]
) to the new format ({"type":"vote_operation","value":{...}}
) 🏭.
Remember when I said those deleted lines would be balanced out? Here we go:
Maybe not 10k yet, but we’re getting there! 😀
This task made me memorize around 11k lines of code 🤪 (database.cpp
, hive_evaluator.cpp
, and hive_operations.hpp
).
The tool’s name is Blockchain Converter.
Basically, with this tool, you can create your own mirrored network with a tampered chain ID, and optionally, a “global authority” with your skeleton key - perfect for dApp testing purposes. 🔧
Not only does it convert previous blocks, but it also supports a “Live” mode where blocks are analyzed, converted, and instantly transmitted as signed transactions to the mirrored witness node. 📃
@gtg explained the technical details in this post, along with other posts linked within it.
With a lot of help from my mentor (@small.minion) 🤠, I also successfully implemented optimizations in HAF by introducing a new PostgreSQL base type: operation.
This allowed storing and managing operations in binary form, converting to human-readable JSON only on demand. 🤝
Next Generation of Hive Software
Given the growing interest in Hive-related higher-level language libraries (Python/JS) and the complex Hive architecture, which had to be rewritten for every app or library, we decided to create official next-generation Hive libraries based on a common C++ Hive Protocol core! 🎉
About two years ago, @thebeedevs group emerged and started experimenting with WASM (WebAssembly) using Emscripten, which led to the creation of the Wax and Beekeeper libraries. 🍯 These libraries can be used for a wide range of tasks (from basic API calls to advanced cryptographic functions) on both Web and Node (server) platforms, leveraging protobufs for common type definitions. They were discussed in detail in this post.
My role in the group was to create an advanced, but easy to use TypeScript interface and integrate it with the Hive Protocol methods:
What’s special is that all these methods are fully documented so you don’t need to consult any online documentation - full support for types and IntelliSense on board (even for API calls)! 🤯
And to better illustrate, how simple using Wax is - thanks to its operationBinaryViewMetadata
function, I was able to implement binary view component (used in Transaction Inspector) in just a week!
Shortly after, I started working on an automation library called WorkerBee, discussed here. This tool allows you to automate almost anything on the blockchain, from advanced personalized tools 🥸 to large on-chain games. 🎮
This Telegram bot was created in 2 days and 100 lines of code using WorkerBee
Wax, Beekeeper, and WorkerBee also enhanced the development of the Block Explorer UI, Denser, Hive Bridge, and Transaction Inspector! 👀
Current Work
We recently passed the audit for the Hive Wallet (MetaMask Snap) and are planning to develop Hive Bridge as a central hub for decentralized authorization on the Hive blockchain. 😀
Additionally, multiple bots are currently under development using WorkerBee.
Due to high demand, @small.minion and I optimized Wax to significantly speed up bots by more than 8 times!
Now, using JavaScript, bots can analyze 7 days of past blockchain data (~200k blocks) and perform custom operations in under 15 minutes! 😲
Summary
I really have fond memories of the last 4 years with Hive. It was nice to meet everyone at various events, including those organized by @krolestwo (Which I highly recommend you visit). 😊
These 4 years also came with the transformation - Transformation of the shy back-end guy, writing small utils in C++ into a full-(grown)stack developer, programming dApps and entire frameworks! 🦸 I have to say I am really proud of my progress and want to share the knowledge and experience I gained with other Hive Developers!
Hive Projects I Have Contributed To:
- hived
- cli_wallet
- Blockchain Converter
- Beekeeper
- Wax
- External Wax signers - PeakVault, Keychain, Hive Wallet, hb-auth
- WorkerBee
- Multiple WorkerBee bots (details coming soon!)
- Transaction Inspector via Binary view component (Distributed for Vue and Web Component)
- Hive Wallet, developed under the close guidance of @small.minion
- Hive Bridge
- hb-auth, Denser, Block Explorer UI (minor fixes, issue resolutions, etc.)
- HAF, HAF Block Explorer, Balance Tracker, Reputation Tracker (including automatic generation of Wax API specifications)
Personal Thoughts on Hive’s Future
Hive is an amazing platform filled with wonderful people, building cutting-edge technologies, nurturing great communities, and helping those in need. 🚰
My dream is for Hive to return to the Top 100 cryptocurrencies on CoinGecko 🔝. I firmly believe we can achieve this through hard work, hackathons, live events, and various integrations such as WalletConnect and Cosmos. 🚀
Let’s keep building the Hive ecosystem together! 🐝✨
Images from private archive & chatgpt.com