Not just another DAG in the sea of blocks…
I like DAGs. I didn’t at first, but as I saw the limitations of current blockchains and how one popular DApp could bring Ethereum to its knees, I started to research them. I liked what I learned and became a believer that they could help to alleviate some of the problems traditional blockchains are experiencing. I figure I should start off with the differences between a blockchain and a DAG.
DAG VS Blockchain
What is the difference between a DAG and a traditional blockchain? First, in a blockchain all miners need to come to consensus on a transaction before it gets added to a block, and then added to the blockchain. This requires a lot of computational power as well as time for this to occur. In only a few years, the Ethereum blockchain is upwards of 480GB and growing.
With a DAG however, transactions are verified by a neighbor and then sent on their way. For example, I verify one transaction that just occured on the DAG, and then I create my transaction which is then verified by the next person in line who is looking to make a transaction. This allows for the blockchain to remain fluid and fast. If you add in horizontal scaling, then the more nodes or wallets on the blockchain then the faster the DAG becomes and it’s TPS rises with each added node.
Now, onto Constellation Lab’s DAG and why I am so bullish on what they are doing.
Constellation is a DAG that will be able to utilize mobile devices such as your cell phone and tablet as a full node on the network. Constellation Lab’s DAG is written in the Scala programming language which allows it to be compatible with the JVM, or Java Virtual Machine. This is a big deal since it allows all sorts of developers to write smart contracts for it using just about any language available. Here is a list of languages currently supported by the JVM, but just to name a few there’s Java, Python, and Kotlin.
They are developing what they call Hylochain. In Hylochain, each wallet/node is its own blockchain and keeps its own history of transactions to itself. These transactions, when created, are signed and then broadcast to the next node and then verified. This allows the DAG structure to flow and allows transactions to be verified by the signing. This goes beyond my personal understand to explain it any further than this so I won’t even try and I apologize. I will try to add on more as I research and learn the project more thoroughly.
Consensus will be done through what the team is calling Proof-of-Meme. This is basically a reputation based structure in which you earn reputation for confirming correct transactions, being online, and contributing to the overall health of the network. The more transactions you verify by being online and donating your resources, the higher your rep score becomes and the more likely you will be chosen to verify another transaction. Rep also comes into play when the network is congested. If you have a very low rep, or meme score, your transactions will be slower than someone else whos rep score is higher than yours. This helps the network govern itself as there is incentive to keep your node online and to not try to attack the network.
Development on Constellation Lab’s DAG is done using any JVM compatible language. This means that a whole range of developers can start writing smart contracts right away for it. The list of compatible languages that I listed earlier is just the start of the gambit of compatible languages. By utilizing the JVM in this manner, adoption can start right away as soon as the mainnet comes online. Developers will not be limited even by what machines can run their DApps as a mobile phone or tablet can function as a full node, essentially being able to run any DApp written on the platform. This opens up a whole new world of possibilities for DApps. Imagine that there was no transaction fees and millions of TPS on Ethereum right now. A cat game or exchange promotion would not be able to bring it to its knees. DApp adoption would be moving along a lot faster than it is now.
I’m bullish on this project for the reasons listed above as well as so many more. The team is extremely transparent and has been since the start of the project. I personally have asked Brendan, the CEO some hard questions in their public Telegram room and he has answered each one publically without hesitation. The team is always willing to answer a question or point you in the right direction. I really appreciate this transparency, considering we are aiming for a decentralized future. I am also a fan of the technology and the mobile first stance they are taking on everything. Let’s face it, we live on our smartphones and tablets and for anything to survive presently, it needs to be mobile compatible. So for all these reasons and so many more that I cannot think of at this time, I am saying check this project out and see what they’re doing for yourself.