Building the future
Before diving into the next part of this course, let's understand why DAOs, the Internet Computer and Motoko represent a unique opportunity for you to shape the future and participate in building a new society.
The Internet Computer: crypto x computing.
The Internet Computer is a decentralized cloud. Traditional clouds are owned and operated by a single company (Amazon Web Services, Google Cloud, Microsoft Azure...) - the Internet Computer is owned and operated by a DAO - the Network Nervous System (NNS).
-
You can use the Internet Computer to build and run any application (Game, Website, DeFi, NFT...)
-
The Internet Computer is built leveraging blockchain technology which makes it secure, transparent and decentralized.
-
The Internet Computer is managed by the Network Nervous System (NNS), a DAO that is responsible for managing the network, the economics and the governance. The governance is a public and open process that is managed by the community.
Imagine if Bitcoin and Google Cloud had a baby. That baby would be the Internet Computer.
A canister: a decentralized server
Whether you are considering building:
- A Website
- A DeFi application
- A Game
- A NFT collection
- A social network
- Your application will run from a canister. A canister is a unit of compute and storage that is powerd by the Internet Computer.
Developers write their application by writting code for their canisters. The canister is deployed on the Internet Computer and users can interact with canisters through the Internet.
You can think of a canister as a transparent, autonomous and decentralized computer. The computer can perfom diverse tasks for us and we are able to trust that the tasks will be performed - no matter who write the code.
Motoko: a new language for a new environment
To operate and run tasks canisters run a virtual machine: WebAssembly. WebAssembly is extremly fast, efficient and secure. Unfortunately, WebAssembly is a low level language. Developers don't write code in WebAssembly - they use a higher level language that compiles to WebAssembly.
There was no language that was specifically designed for WebAssembly and the Internet Computer. That's why, the DFINITY Foundation created the Motoko language.
In this entire course, your code will be written in Motoko.
As a new language, Motoko represents a unique opportunity for developers to improve their skills and learn a Web3 native language.
Decentralized Application
A dApp is a decentralized application. For an application to be considered decentralized, it generaly needs to fulfill the following conditions:
- Open source.
- Transparent and auditable.
- Governed by a DAO.
- Running entirely from a decentralized network (like the Internet Computer).
Simply because an application runs on a blockchain doesn't mean it is decentralized.
There is no strict line between what is decentralized and what is not. Most applications and DAOs run somewhat decentralized with still some centralized components. The future looks more and more decentralized, but the path to decentralization is not an obvious one.
For instance, OpenChat is a decentralized application:
- The code for this project is open source, allowing anyone to confirm that the version running on the Internet Computer matches what's been shared on GitHub.
- The community has full access to review and audit the entire codebase and infrastructure.
- Governance of the application is handled by the OpenChat DAO, ensuring a decentralized control structure.
- Both the application and its user interface are hosted entirely on the Internet Computer.
The DAO Revolution
On the Internet Computer, canisters can govern other canisters. Notably, canisters can be used to upgrade the code of other canisters - in a fully transparent manner.
This represents an important building block to build DAOs (Decentralized Autonomous Organization). You can manage the day-to-day operations of your DAOs using canisters and assign the control of those canisters to your community.
If you do it well, others will know how the organization is run, how the funds are managed, how decisions are made and how rules are enforced. All of this can be achieved through fully transparent and auditable code.
This is the first time in human history that we can create organizations that are both fully transparent, auditable and extremly efficient. Imagine being able to collaborate on your projects with the entire world.
Today, humanity's most pressing issue is our inability to organize ourselves and work collaboratively without corruption, inefficiency, or immense inequalities. The Internet Computer and DAOs are incredible tools that enable us to solve these issues.
Imagine a school running from a decentralized infrastructure, imagine your local government running transparently and knowing where your taxes are spent, imagine a company owned and operated by an online community. This is the future that you can build today.
The system doesn't want to change? Let's build a new one.