The decentralized internet (Internet 3.0) is an exciting promise that has captured hearts and minds. But in Bitcoin’s decennial, we’ve yet to see mainstream adoption of any Internet 3.0 use cases. Is it possible that the natural state of the internet is centralization? And if not, what about Internet 3.0 can shift the balance from centralized to decentralized?
Internet 2.0: state aggregators
First, let’s examine why the internet as we know it ended up centralized.
Internet 1.0 provided open protocols like HTTP and promised that everybody could build on top of these open protocols and trust that they wouldn’t change. However, there was a problem: these open protocols did not capture state (what we think of now as user data). So if I clicked a button on your site, you had no way of remembering my action the next time I visited.
To get around this, Lou Montulli at Netscape invented the HTTP cookie. The first application of the cookie was to record whether a that user had visited the site in the past. This cookie was sent alongside the HTTP request. Over time, the amount of information tracked in cookies grew too large, so the cookies become pointers to a database of user actions (similar to cookies today).
The cookie is the earliest example of what Albert Wegner at USV calls “state aggregation.” State could be browsing history, but it could also be game actions, purchases, messages, and so on. Some companies started to aggregate state and eventually become massively valuable.
State aggregators became the dominant players of the internet and one surprising result of Internet 2.0 is that many of the original open protocols have been replaced by state aggregators:
SMS (Messaging): Messenger
SMTP (Email): Gmail
HTTP (Web): Chrome
IRC (Chat): Slack
FTP (File transfer): Drive, Dropbox
Internet 2.0 also showed us the power of networks. In the absence of open protocols, state aggregators acted as protocols for new areas such as:
Social media: Facebook
State aggregators enabled incredible outcomes: all the magical internet apps we use today. There’s no question that the products and services enabled by Internet 2.0 had a massive positive impact on society.
However, we’re starting to see some of the major drawbacks (e.g. privacy, monopolistic behavior) and consumers are starting to retaliate.
Centralization is the root cause of these problems. When a state aggregator grows to a certain size, the incentives of the state aggregator, the apps built on top of it, and the users misalign. This is covered well by Chris Dixon in Why Decentralization Matters.
This misalignment can be described by the “Principal-Agent Problem.” In a given system, there are owners (principals) and employees (agents) and their incentives can easily get misaligned. The charts above show how over time, state aggregators inevitably run up against the Principal-Agent Problem both with their users and their complements. They also have this problem with their employees.
The internet ended up centralized because the decentralized building blocks could not store state. Centralized internet enabled numerous magical internet experiences, but is causing widespread misalignment of incentives. Is this the natural state of the internet, or could stateful protocols decentralize the internet?
Internet 3.0: Stateful protocols
Internet 3.0 is a return to the original promise of the internet that we can build without fear that a state aggregator will change the rules on us. We’ve just discussed how powerful the forces of centralization were in Internet 2.0. How plausible is decentralization in Internet 3.0?
The most important new concept is stateful protocols like Ethereum. Apps that rely on state no longer need to build on top of state aggregators–they can build directly on the protocols.
In theory, an internet built on top of stateful protocols should benefit everybody but the state aggregators.
Protocol level: tokens incentivize development at the protocol level, reducing the likelihood that a decentralized protocol can compete with a centralized alternative
App level: resolve the principal-agent problem (can trust), and lower barrier to build apps (state can be had for free)
User level: resolve the principal-agent problem
By adding stateful protocols and removing state aggregators, we should see more experimentation at both the protocol and app level and improved alignment across the board.
Yet, as I mentioned in the introduction, we haven’t seen a mainstream Internet 3.0 use case. Its absence is likely due to terrible user experience. Apps are clunky, unfamiliar, and don’t scale. The underlying technology is not invisible enough to users: blockchain is confusing and scary to the layman.
The internet does not inevitably trend towards centralization. Stateless open protocols like HTTP and the immense value of state aggregators like Facebook led to the domination we enjoy today.
Stateful protocols like Ethereum are a plausible driver of the decentralized internet. Capturing state at the protocol level and reducing state aggregators should increase development and improve alignment of incentives.
However, decentralization of the internet is not a given. Without meaningful technical advances and a leap forward in user experience, we may never see a mainstream use case from Internet 3.0.
Overall, there’s reason to feel cautiously optimistic. The ecosystem is developing rapidly, attracting incredible talent, and delivering improvements to both tech and UX every day. At this rate, I’m confident we’ll see a version of the internet that delivers on its original promise.
Why Decentralization Matters - Chris Dixon
Crypto Tokens and the Coming Age of Protocol Innovation - Albert Wegner