Lesson 2. Governance
In 2016, 3.6 million ETH (worth around $9B today), were drained from The DAO, around 1/3 of their treasury aimed at decentralized investments, all because of a bug in the smart contract that governed the DAO. This hack showed some of the vulnerabilities of on-chain governance, and also ended leading to the 2016 Ethereum hard fork, where Ethereum (backed by the Ethereum Foundation) forked and reverted the exploit, while the chain without changes became Ethereum Classic.
In this second lesson, we will dive into the world of on-chain governance, one of the few obvious use cases for blockchains. We’ll talk about DAOs, why they are important, what is brewing in the ecosystem and learn how to actually participate and even create our own DAO very easily.
Before we start, we all “are in a DAO”. Since this concept has been around, the word has been thrown around and used for marketing a bit too freely. We’ve seen Telegram chats, Discord channels, NFT communities call themselves DAOs. But what really is a DAO? How do I form part of one? What can I do? Let’s find out.
Introduction
Governance is the complex system of processes and structures that are set by organized individuals with a common goal to be able to make decisions. Yes, I’m fun at parties. Wikipedia’s definition is even more fun. Governance is how, what and why decisions are made among a group of people with a common goal. In web3 the most common decisions are centered around voting on proposals, managing funds, and determining protocol parameters, and the structures behind it are DAOs.
DAO is, of course, short for “Dudes Arguing Online”.
A Decentralized Autonomous Organization (DAO) is a type of organizational structure unique to blockchain. These entities are governed by smart contracts and allow members to participate in decision-making through on-chain voting. In web3, we use the expression “code is law”, since there is no real regulation, the ecosystem is governed by the code that developers have written, and that is the law we abide by (the catchphrase was created by a Harvard professor in 2000). In the case of DAOs, the smart contracts that govern them are the equivalent of bylaws, rules or regulations by which other organizations in the real world operate, like businesses or governments. In the case of The DAO, mentioned at the start of this lesson, there was a loophole in their smart contracts (laws) that someone was able to exploit. DAOs are the equivalent on-chain to companies in the physical world.
On-chain governance is very different to any other governance because every decision is fully trustless, on-chain, impossible to steal or fake votes, traditional systems can’t match this. A great and recent example are the Venezuelan elections of 2024. Surprisingly, Venezuela has a robust voting system, that introduces several anti-tampering methods that make it difficult to fake the final results (not going to bore you with this, (go read more about it), the issue is that the results are sent to a centralized government entity, that, in this case, has denied to publish the complete final results. If instead, this was handled on-chain instead of through a government entity, it would be fully tamper-proof.
DAOs and on-chain governance are in their early stages. We have seen some examples of DAOs being used for specific use cases, like pooling resources to purchase an original copy of the U.S. Constitutions (ConstitutionDAO) or others to manage donations for humanitarian aid in Ukraine (UkraineDAO). Nevertheless, it’s early, and these frameworks and entities require time, especially from a legal and compliance perspective. In fact, one of the major hurdles of these entities is regulation, and we know how quick that moves.
On-Chain Governance & DAOs
On-chain governance and DAOs represent a new way of managing organizations and making decisions using blockchain in a transparent and trustless way. One can think of a DAO as a digital organization governed by open-sourced smart contracts, where the rules are transparent, and every decision is recorded immutably on-chain. This approach removes intermediaries, making processes faster, transparent, and, in general, better. A DAO can own on-chain assets and have the same authorities as any other crypto wallet. Signing any transaction from that wallet (from a simple transfer to upgrading a smart contract), requires a DAO vote.
The first instances of decentralized on-chain entities appear in 2013, they started being called Decentralized Autonomous Companies (DAC), which later evolved into DAOs, all this was made possible thanks to the launch of smart contract-enabled chains. We already talked about “The DAO”, their hack was pivotal in the ecosystem and set the stage for what DAOs could achieve. Since then, many projects have successfully implemented on-chain governance, such as MakerDAO, governing the DAI stablecoin, or Compound, a decentralized lending platform.
On-chain governance in its purest form would include only proposals that are executed directly on-chain, with the help of the smart contracts, with no outside intervention. Code changes to important protocols or even entire blockchains are a perfect example of this, and the best way to understand why this structure is amazing. On-chain governance in its purest form clearly is one of the most natural applications of blockchain.
That said, not all DAOs function in such a pure form, and not all proposals are executed on-chain. You will often see councils with some different voting and executional responsibilities, or DAO votes on actions that require trust in a third party in order to execute off-chain. And that’s OK! Not everything is possible to achieve by an on-chain instruction. The tendency should be to make it as trustless, transparent and decentralized as possible, without depending on any element that can be manipulated in any way.
Despite being in its infancy, several real-world examples showcase the potential of this type of governance. For instance, Friends With Benefits (FWB) DAO has raised substantial funds to support open-source projects, while CityDAO has used this structure to collectively purchase and manage land, paving the way for new governance and citizenship models. The most common use case of a DAO have been decentralized investment funds, and management of treasuries and on-chain protocols.
Different chains have adopted various on-chain governance models. Ethereum remains a leader driving this ecosystem. Other protocols, like Tezos or Polkadot, have introduced new mechanics and approaches to governance, highlighting the strengths and weaknesses of each model. Solana, with its SPL-governance suite, focuses on efficiency and decentralization, enabling fast and secure on-chain governance. The low transaction fees encourage more participation, making it accessible to more members. Despite this, on-chain governance has not thrived on Solana as it could. The governance toolset on Solana is relatively small and slow-growing, with many developers and investors focusing on projects that offer more immediate financial returns. Ethereum on the other hand, has a completely opposite ethos to Solana. For this reason it has been the natural place to develop governance and the reason Ethereum is ahead when developing these frameworks.
Various governance models exist, such as token-based voting, where voting power is proportional to the number of tokens held. Delegated voting, allows token holders to delegate their voting power to representatives. Some projects use NFTs to represent voting power, where ownership grants voting rights. Quadratic voting gives diminishing returns on voting power with more tokens, promoting fairer representation.
The biggest problem for DAOs is their legal status which varies globally. In the U.S., Wyoming has recognized DAOs as legal entities, allowing them to register as LLCs. However, this recognition is not widespread. Other countries are exploring regulatory frameworks, but regulation is catching up slowly, which means DAOs often operate in a gray area, stitching together legal entities for different purposes and governed by traditional legal standards in physical jurisdictions. There is a great AthensDAOx 2023 talk by Jawna from Keras Labs about regulation.
Regulation is important because everybody can then play by the same rules, and, more importantly, avoid participating in anything illegal.
In addition to regulatory issues, most DAOs are known for being inefficient due to slow decision making and vulnerability security risks like smart contract exploits. On the topic of exploits and hacks, r0bre from Neodyme had a great talk at AthensDAOx where he goes over some exploits, hacks and vulnerabilities.
Governance on Solana
Solana’s governance framework is centered around the SPL-Governance program and the Realms interface. Let’s explore this system in more detail.
SPL-Governance
The SPL-Governance program, developed by Solana Labs, is the framework used for creating and managing DAOs on Solana. This framework defines and allows to setup and configure DAOs, create and execute proposals, from minting tokens or transferring treasury funds to upgrading program code, while ensuring the initial rules and bylaws of the DAO are followed. Some of the key features of the SPL-Governance include:
- Account structure. Includes DAO wallet (native treasury), governance accounts, and proposal accounts, each with specific responsibilities, roles and configurations.
- Voting and locking tokens. Voting power can be defined in several ways, the most common is by the number of tokens locked in governance accounts, although it can also be set to one vote per account regardless of tokens locked. Token holders must lock their tokens to participate in votes.
- Proposal system. Allows the community to vote on a wide range of actions, from fund transfers to code upgrades.
- Multi-signature control. Enhances security by requiring multiple signatures for DAO actions to execute.
- Plugin system. Extends functionality through add-ins, such as the Voter Stake Registry (VSR) plugin for customized voting power calculations, multi token support and more.
The lifecycle of a proposal on SPL-Governance is the following:
- Create a proposal. Proposals are created in the draft state, refined, and then moved to the voting state once all signatories have approved.
- Voting process. During the voting state, token holders cast their votes. Votes can be changed before the voting period ends.
- Finalizing votes: After voting ends, results are finalized, and successful proposals move to the execution phase where actions are carried out.
Realms, the SPL-Governance UI
Realms is the user interface for interacting with the SPL-Governance program. It simplifies DAO management by providing tools to create and manage DAOs, propose and vote on actions, and handle treasury funds. This interface allows for complex governance tasks to happen, making it easier for users to participate and engage in the process without having to use complex interfaces or tools.
Realms offers step-by-step wizards for creating different types of DAOs, such as NFT Community DAOs, Community Token DAOs, and Multisig DAOs. Their UI gives a way to users to deposit tokens to gain voting power, create and vote on proposals. Treasuries can also be managed through their UI, allowing DAO members to transfer funds, create staking accounts, setup domain names and more actions, similar to those you would do with your personal wallet.
Realms also supports governance plugins that allow for more complex operations to be introduced in the governance of these entities, like NFT voting, Civic Pass support for identity verification, or the Voter Stake Registry (VSR) for customized voting power calculations, multi-token support, and more.
We want to thank the Realms team for being committed to advancing the governance ecosystem on Solana, they have been around for a long time, and are always willing to lend a hand. They have made possible not only the DAO that you will interact with in the exam for this lesson, but also the GREED DAO, the most active DAO in Solana to date, used for users of the Real GREED Experiment to unlock their staking accounts.
DAO Tooling and Other Governance Tools on Solana
As we mentioned previously, Solana is not a hotbed for governance, the DAO tooling ecosystem is not broad and many protocols have branched, fully pivoted outside of the space or stopped operations. The reason? Solana’s fast-paced culture and community are not optimal for the slower, more deliberate processes required for developing governance systems. These systems need substantial time to design, validate, and prove their effectiveness, and currently, they are far from being foolproof. Despite this, some brave and dedicated developers work in the DAO and DAO tooling ecosystems on Solana. Currently, the most well known and used DAO tools are:
- Dialect. Open source smart messaging platform that serves as an alternative way to communicate with DAO members, stay up to date with proposals and DAO business with their notifications.
- Squads. The multi-sig wallet on Solana, through which DAOs can collectively initiate and approve transactions without having to create multiple governance proposals.
- Streamflow. A token distribution platform that allows Solana teams to vest tokens and manage payroll, that has multi signature functionality.
- Grape Protocol. A decentralized social media network that brings together all DAOs and provides extra tools and functionalities for these entities.
As you can see in the ecosystem map below, DAO Tooling is a small subsection of the Infrastructure segment on Solana, and it is growing at a slow pace.
During 2022, the interest in DAOs and decentralization surged. The governance and DAO ecosystem in Solana was promising, new potential user interfaces, tools, and standards to enhance DAO functionality. However, many of these initiatives have since closed down, leaving Realms as one of the few active governance tools on Solana. In the past few months, a new initiative has sprouted in the Solana governance ecosystem, MetaDAO. This DAO aims to bring the concept of futarchy on-chain. This new approach brings a lot of new nuance and complexity to governance, so we will cover it better in the future.
Entities Using SPL-Governance
Several notable projects and protocols in Solana use the DAO structure to manage partially or totally their operations. Some examples are:
- Metaplex. The digital asset protocol on Solana is known for its NFT standards. The Metaplex DAO manages the protocol, with MPLX token holders voting on proposals and allocating protocol fees. Recent initiatives include changes to the protocol through MIPs and grants.
- Mango Markets. A decentralized lending/borrowing market maker, uses its DAO for protocol upgrades and treasury management.
- Marinade Finance. A liquid staking protocol, employs a DAO to decide on staking parameters and reward distributions
- OpenBook. An order book DEX, uses its DAO to manage protocol upgrades and fee structures.
And those are only some of the DAOs that operate and are active on Solana. You can go to the main page of Realms and search for any DAO on the chain and see their proposals, treasuries, ongoing votes and maybe even join one of them.
Participating in Governance
Remember, a Telegram chat or Discord channel is NOT a DAO, neither is owning an NFT or a token. If you got this far, you might be able to tell if you are in a DAO. If it’s not clear, don’t worry, in this section, we’ll go over the basics of participating in a DAO in Solana, with several short guides on how to create a DAO in realms and how to participate in a vote.
Becoming a Member
Owning a membership token or NFT which can grant voting rights is the first step in becoming a DAO member. After buying, earning or receiving these tokens you must sign a transaction that either deposits these tokens or proves you meet the requirements to be a DAO member.
How Does It Work?
DAOs operate through smart contracts and predefined bylaws. As with a traditional organization like a company, these rules are decided in the process of creation, but many times can be modified, amended, or eliminated. These bylaws usually include the fundamentals for a DAO to work, like who has voting rights (minimum amount of tokens), vote weights, how proposals work, if there is veto power by an individual or council and more. All these parameters are included in the smart contracts since day 0 and regulate the DAO.
Who Has Voting Rights?
Voting rights are usually tied to the number of fungible tokens or NFTs held. Some DAOs use a one-vote-per-asset system, while others have weighted voting or even per-person voting to promote fairness.
Proposal of Decisions
Each DAO has its own method. Some allow for members to put proposals up for vote directly, but many have an off-chain process that lets the community review and discuss the proposal and give feedback before it goes to vote. In this last case, a council or 3rd party is usually in charge of putting these proposals up for vote once it has been approved to go for vote.
Execution of Results
Approved proposals are executed automatically by the DAO’s smart contracts, ensuring that decisions are implemented as intended without manual intervention.
Creating a DAO in Realms
- Connect wallet. Connect your Solana wallet to Realms.
- Create DAO. Select “Create DAO” and choose one of the types of DAO supported by Realms, as well as a name.
- Set parameters. Input the DAO’s governance token settings, like which token will be used for governance (in this case we used the $SAMO token), the general setup, and threshold for a vote to pass, also called quorum.
Note: You can also create your own governance token directly here
- Invite council (optional). Add council members by their wallet addresses and other council settings.
- Review & deploy. Review settings and deploy the DAO.
Now, you have a fully functioning DAO on-chain. You can further customize it, set parameters, configure the treasury, and more. For that, head over to the documentation of Realms.
Joining a DAO and Voting on a Proposal in Realms
To join a DAO and be able to vote in Realms, you must have the necessary token(s) and have deposited these governance tokens. These are the steps:
- Access platform. Log into the DAO’s Realms page with your wallet
- Deposit tokens. Click the ‘Deposit’ button and choose how many tokens to deposit to get voting rights.
- Review the proposal. Click on the proposal you are interested in, and research it.
- Cast & confirm your vote. Select the vote and confirm the transaction on your wallet.
Congratulations, you have voted on a proposal and participated in on-chain governance!
- Find the transaction. Everything is recorded on-chain, so now you can go find the transaction ID of the vote that has just been casted. A popup will appear after voting, that will redirect to the transaction on an explorer. If it doesn’t appear, you can search for it manually on an explorer through the signing wallet or the proposal and DAO accounts.
Realms offers a lot of information on the DAO in a very intuitive way, so it’s generally easier to understand directly through this UI.
Exam — Lesson 2
To complete this lesson, you will participate in a pre-created DAO, deposit your tokens, and cast your vote on an active proposal.
Samoyedcoin is one of our partners that made the first semester possible. For this lesson we will be using $SAMO as the token that governs this temporary DAO. There is NO minimum amount of $SAMO needed to gain voting (You can swap any token to $SAMO using a DEX like Jupiter)
Connect your wallet to Realms, head to the GREED Academy — Lesson 2 DAO Realms website, deposit your $SAMO, go to the proposal for this lesson and vote as outlined in the guide provided earlier.
After casting your vote, visit THIS LINK to complete the lesson. You will need to provide the transaction ID of the vote to verify your participation, which can be found in Realms or through an explorer.
Note: The current proposal is for practice purposes only, it is burning an irrelevant amount of $SAMO and it’s up to you.
For this lesson to count as completed for our first semester rewards split, you have to use the same wallet that you signed up with (you should be able to find it on our leaderboard), and collect your star before 3PM UTC on Friday 23rd of August. Good luck!
We hope you found this lesson useful. Thank you for joining us on this second lesson of the GREED Academy, and see you next week.
Follow our Twitter to stay up to date and see how many lessons you have completed successfully in the leaderboard, and stake with the GREED Validator to continue supporting educational initiatives.