WTF is a Moloch DAO and why are they so special??
OG Moloch DAO
The purpose of the original (OG) Moloch DAO was to self-organize, fund, and develop public infrastructure for ETH 2.0 . They wanted a simple DAO structure so they could get started immediately. Ameen summoned Moloch DAO on Feb 14th, and so began the Year of DAOs.
Moloch’s name was inspired by Meditations on Moloch by Scott Alexander. It’s a deep read into the philosophical pitfalls humans have run into while attempting to coordinate (or not!) with one another. You can also read their Whitepaper if you wanna dive deeper into Moloch’s game theory et al.
First off, why a DAO?
DAOs have become an overly complex concept, but a DAO is basically just a way for a group of people to align around a cause and pool their funds together, knowing absolutely that noone can spend a penny without the DAO Members, including themselves, voting on it first.
And why are there so many?
Each DAO is focused on a particular purpose, a reason for self-organizing together, which can be as broad or specific as a DAO decides. While there certainly will be ‘Super DAOs’ that fund and coordinate many things, those would likely still share some purpose. In the future, that purpose could simply be ‘revenue’, but even then it would likely be revenue from a certain type of business/event. Hence, many DAOs are rising. Especially the Molochs.
While other DAO frameworks and projects are looking to solve for every use case and build technology suitable for large organizations, Moloch is built more upon the idea of a DAO as a primitive solution to human coordination, and testing real-world use-cases. Moloch as a framework is very unopinionated and can be combined/enhanced with many different currencies, functions, and extensions.
Its contracts are simple, secure (audited), and battle-tested in the real-world. Due to this combo of simplicity && security, Molochs can uniquely be used in many many different ways for many many different purposes. It’s basically a form of MVP decentralization that we can test and iterate on while operating within real world use cases.
Ragequit is the magic sauce
The ragequit mechanism of Moloch lowers the coordination cost even more. It ensures that if you, a member, really don’t like a proposal you can exit with your funds before the proposal goes through. This lowers the coordination cost closer to ‘0’. 0 may be an unrealistic target, but certainly the closer we can get, the better. ‘Not Perfect. More Perfect’.
Ragequit burns Shares and returns the equivalent amount of value back to the user, based on current share value. It is used for two purposes:
- Express Dissent
If a member does not like a proposal, they can ragequit their Shares at anytime as long as they do not have a ‘Yes‘ vote pending on a proposal.
- Withdraw Funds from the Bank
Grantees receive Shares through proposals. They ragequit their shares to withdraw funds and execute on the proposal’s purpose in the real world.
No Quorum needed
It doesn’t matter how many votes are cast, they are literally just counted against each other, and unless more than 50% vote yes, the proposal will fail.
- If 1 share votes ‘Yes’, and 0 shares votes ‘No’, the proposal will pass.
- If 0 shares vote ‘Yes’, and 1 share votes ‘No’, the proposal will fail.
- If 1 share vote ‘Yes’, and 1 share votes ‘No’, the proposal will fail.
- If noone votes, the proposal will fail.
All Proposals only require 3 inputs, but those inputs create very different dynamics.
Tribute goes into the Bank
Shares are minted by the DAO
Destination address for Shares
New Member Proposal (Ex. 100 Tribute, 100 Shares)
A prospective Member prepares their Tribute (ex. 100 DAI) and requests the same amount in governance (100 shares). Typically, some other form of documentation is provided to inform the members on their decision.
An existing Member champions the new member, submitting their membership proposal to the DAO. The DAO members then vote yes/no to accept/reject the new member.
Grant Proposal (Ex. 0 Tribute, 100 Shares)
To submit a grant proposal to the DAO, a Member simply sets Tribute to ‘0’ and requests the share amount equal to the funds requested. (Ex. 100 shares for 100 DAI)
Alice needs 500 DAI to design and place orders for swag for an event. Alice, or a DAO member if she is not a member, submits a proposal offering 0 DAI as tribute and requests 500 shares. If the proposal passes, Alice receives the shares and can ragequit (burn) the shares, withdrawing the funds.
Donation Proposal (Ex. 100 Tribute, 0 Shares)
If a member submits a proposal for 100 DAI tribute and requests 0 shares, they are basically donating to the DAO’s bank while not requesting any governance. To be clear, this type of proposal has not appeared yet, because it is “Pointless” says Ameen. One can simply send funds directly to the Bank if they wish to make a donation.
All proposals go through the same process.
Queue => Voting => Grace => Ready for Processing > Completed
The Proposal is submitted and waiting for Voting Period.
The Proposal can be voted on by Members.
The Proposal can no longer be voted on. Any Members who voted ‘No’ and do not have an existing ‘Yes’ vote on other Proposals can ragequit before the Proposal is processed.
Ready for Processing
After the Grace Period, proposals move here where they can be processed by any Member, executing their purpose (Ex. distribute Shares, accept Tribute).
After being processed, all Proposals end up here as a record for the DAO of all the final states of all proposals.
A glance at current Molochs and their use cases
Moloch DAO (The OG Moloch)
Grant-giving organization funding initiatives for ETH 2.0, scalability and adoption.
Grant-giving organization funding and supporting the Ethereum application ecosystem. Basically a Y Combinator for Ethereum.
Super PAC for the US presidential candidate Andrew Yang. Lots of Memes.
Creation, curation and selling of Artwork during Devcon V in Osaka
A network of artists & developers, on a mission to transform the cultural economy from the ground-up with the help of blockchain. Starting from Athens, Greece
A collective of builders that form Raid Parties to team up on epic boss fights (open source web3 projects).
An events-focused DAO born from the sponsoring events for Devcon V in Osaka and beyond.
Some Early Discoveries through Experimentation
Using a DAO greatly lowers the coordination cost for a group of people to self-organize and distribute capital. Moloch’s ragequit mechanism and no quorum dependency lowers that even further.
Only a DAO’s smart contracts are autonomous, the organization that’s formed is not. Actual coordination within benefits significantly from a good Summoner who acts as community builder and facilitator.
Due to the simplicity of operating a Moloch DAO, I find it’s become much easier for people to understand DAOs, which motivates them to give it a try, which gives us more real world users to gather feedback from.
Other Questions fielded from Twitter
wETH is just a way to wrap Ether as an ERC-20 token, allowing much more flexibility with how it can be used in dapps, such as setting approval amounts and better convertibility between assets.
Mariano Conti of Maker and Moloch built a way for someone to ‘sell out’ their shares to another party, allowing them to submit a proposal to the DAO. The DAO would still have to vote yes on the proposal for it to be executed (members could ragequit beforehand also) but *most* of us find it interesting, if not necessary, to continue testing the boundaries of Moloch as a DAO framework and its game theory. He’s giving a talk about SelloutDAO at Year of the DAOs at Devcon.
All this experimentation has been great (and really fun!), but we’re only getting started. We’re looking forward to gathering more details from current real-world use cases of Moloch DAOs and seeing even more come to fruition. All this data from experimentations is critical for us to understand what they’re best for and how humans like to use them. After Devcon and the Year of the DAOs, I’ll look to compile usability data from all known Molochs and report back in a Part II.
Wanna Summon your own Moloch?
If you want to summon your own Moloch, head over to DAOHaus. After helping all these DAOs get started, we built DAOHaus at EthBerlin to make the summoning process super easy.
After Summoning, feeling cute? Go get yourself a PokéMol. PokéMol is short for Pocket Moloch, an open source mobile-first frontend for Moloch with built-in Abridged contract wallets.
Questions? Ideas? Discuss!
This is a simple breakdown, but obviously there is more to it, so don’t hesitate to hit me up on Twitter with any questions or ideas you’d like me to elaborate on in the next pass.