DAO technology is still in the early adoption stage. Through experimentation, we continue to discover governance models and best practices that will be successful and sustainable over the long term.
One of the biggest challenges facing DAOs is that blockchain is an immutable ledger, which can make it difficult to adapt and experiment. To solve this problem, many decentralized autonomous organizations (DAOs) have turned to running more off-chain operations, relying on a trusted group of actors to implement decisions. But we believe that for DAOs to be truly unstoppable, they must run on blockchains.
Building adaptability into a DAO framework is the solution for DAOs wanting to run on-chain And To be able to adapt their judgment as they learn and grow. That's why we've published a new DAO framework: Aragon OSx. It is designed to be simple and modular, so organizations can easily customize and adapt their governance.
By following the Unix philosophy and building simple, composable building blocks that can be mixed and matched, organizations can find the solution that works for them—and change it later as their organization evolves.
Let's dive into Aragon OSx: the operating system for decentralized autonomous organizations (DAOs) built on the Unix philosophy.
What is the operating system?
First, let's go over what exactly an operating system is, so we can share how it works with decentralized autonomous organizations (DAOs).
The operating system makes your computer work. Mac OS, for example, is the operating system used by all Mac computers. The operating system acts as an intermediary between the hardware and software of your computer. Basically, The operating system is a permissions management system, Allow programs (applications you install on your computer) to run by granting permissions to them. You can have multiple applications on your computer at once, and when you don't need an application anymore, you can uninstall it.
The operating system works as follows: There is a reliable kernel in the center with unrestricted resource access to tools such as the camera, microphone, screen, and disk. The kernel is the central component of the operating system and has complete control over the hardware systems.
Then there are many untrusted third-party programs that request access to shared resources. One program could be Google Chrome, the Mail app, Discord, or any other app you install on your computer.
Every app you install needs permission from the operating system, and depending on the permissions you set up, it succeeds or fails.
In short: Operating systems manage permissions for untrusted applications.
For example, when you install Discord, you have to give it permission to access your camera and microphone. However, you can choose to block access to these tools.
There is one key element in operating systems that makes them so effective: With a basic operating system, there is no need to reinstall the entire operating system for a single update to an application. You can simply update the application itself. This is the basic difference between the original AragonOS and the new Aragon OSx.
This means that it is not necessary to change the operating system itself, but only the applications, which are small modular parts and therefore easy to change. This makes updating and changing things much easier than it would otherwise be He didn't do that To have a permissions management system in the center.
Before we cover how our operating system for DAOs works, let's take a look at the philosophy behind it.
What is the Unix philosophy?
When building our new operating system for DAOs, we needed some guiding principles to help us stay on track. So, we looked at the Unix philosophy.
The Unix philosophy is a set of rules and practices established by developers working on the Unix operating system in the 1970s. The philosophy has become so influential that it has spread beyond developers in this ecosystem to builders across multiple industries. Here are some of the key aspects of the Unix philosophy that we applied to build OSx:
Write programs that do one thing and do it well. Instead of building one monolithic program that handles many things and is difficult to change, each program should do one thing well.
Write programs to work together. Since we don't build monolithic software, all the small parts need to work together in one larger system.
Allow the feature to be reused in different contexts. The same software, if flexible enough, can be reused in different contexts, so you don't need to create something new every time.
Everything is file -> Everything is permission
In Unix, everything is a file. This makes it easy to reuse the same tools and utilities, because you already know what all those tools and utilities need to interact with.
In Aragon OSx, everything is fine permission. Like the “everything is a file” concept, classifying things as permissions makes it easier to reuse the same tools and reduces complexity.
Here are some additional Unix guidelines that we've applied to OSx:
- One right way to do things: This standardizes best practices, so that creators don't get confused by different ways of doing things.
- Be honest about what you're doing: There is no hidden magic. Everyone can use, understand and audit this protocol.
- Only pay for features you actually use: There is no hidden bulge. You only pay for the features you use, instead of paying for everything.
- Easy to understand, verify, and reason: This contributes to the security of the protocol, because it is not complex or complex.
Now, let's take a look at how operating system concepts and Unix philosophy came together to create Aragon OSx.
The DAO core is in the middle, and the plugins are at the edges
When creating OSx, we took the approach of a trusted kernel in the center plus additional components at the edges – just like the operating system that revolutionized the computer. We applied the Unix philosophy above.
We do this through the DAO core on the inside and plugins on the outside.
DAO Core: Manage permissions for external programs
The DAO Core, or vault, holds DAO assets and acts as a trusted core. The main function of DAO Core is to grant permissions: it needs additional components to perform complex actions. Maintaining the core of DAO Lean is safer, because simple software is safer than complex software.
But for plugins to interact with those assets – such as withdrawing, swapping or staking – they need to obtain permission. This setup is similar to a trusted kernel with external plugins.
In the image below, you can see the assets in the DAO treasury, such as ETH and DAI. There is a layer of permissions that separates those assets from the plugins below, which need to request access from the DAO to interact. So, for the “pull” function to be implemented, it needs to go through the permissions layer.
Add-ons: External software that solves small, ad hoc problems
What's on the other side of permissions? Extras.
A plugin is a smart contract outside the DAO that can do things on behalf of the DAO only when permissions are granted. Extras are Small, modular construction that can be rearranged into many different types of foundations. DAOs will mix and match plugins to build any type of logic their organization needs.
Some examples of plugins:
- Token Voting Plugin: Allows the DAO to make decisions based on token votes, as long as they meet governance limits.
- Uniswap Plugin: Allows DAO to swap tokens in Uniswap.
- Governance Token Streaming Plugin: Allows the DAO to stream governance tokens to contributors based on certain qualifications.
Think of plug-ins as applications that you install and uninstall on your computer. They solve small, ad hoc problems. If you need a new solution, you can iterate quickly — installing, uninstalling, and upgrading apps — without having to reinvent the wheel every time.
Plugins can be unreliable, meaning it doesn't matter who built them or what they contain. This is because plugins are not integrated into DAO itself with full kernel permissions: they are external to the core DAO cabinet, just like applications external to a computer operating system.
This also means that plugins can also be “detached” or revoked. This is similar to uninstalling an application on your computer. Governance development has become easier.
Developers control their plugins, just as they control their own applications
Developers can choose how they want to design their plugins. Plugins can be upgradeable, making it easy to change and install new versions. Or it could be that it is not upgradable and therefore cannot be changed later.
Just like with the apps you use on your computer and phone, developers control how plug-ins are designed.
We provide the operating system and plugins for the core functionality DAOs need to work, but builders like you expand the applications and functionality on top!
Aragon OSx enables immutable enterprises on an immutable blockchain
DAO Core plus additional components — Aragon OSx — come together to enable immutable enterprises on an immutable blockchain. Do you want to start out as a multi-signature DAO, but after a year, you'll join 100 other members and need to launch a token and change your governance? Simply uninstall the old management plugin and install the new one. Want to try a new treasury management strategy? Install a plugin, see if it works for your team, and then remove it when you're done.
Building an immutable organization on an immutable blockchain has never been easier. Instead of deploying a new DAO every time they need to develop, DAOs just need to install, uninstall and upgrade their plugins to easily adapt their organization.
We believe this will help unlock amazing new experiences and enable anyone to truly experience governance at the speed of software.
Anyone can create a plugin: Here's how to get started
Do you already imagine what unique management modules you can create for DAOs? Are you thinking of unique ways to determine membership, manage finances, and get votes? You're in luck, because anyone can create a plugin — in fact, many developers like you already exist! You can check out the projects on the ecosystem page.
Creating a plugin is simple, especially with our quick start guides and templates. For an overview of how to create a plugin, see this guide and video. If you're interested in receiving more content like this, join our developer community to stay informed.
We can't wait to see what you create!
Want to see the talk that inspired this article? Watch here starting at minute 3:00: