A very cool story surrounding Shaggy’s hit song It Wasn’t Me starts what I believe were market forces suggesting premonitions of Web 2.0’s future… a distributed internet. The story goes like this: two artists (Rikrok and Shaggy) got together at the turn of the 21st century to create the song It Wasn’t Me; however, no record label would agree to publish it, so it was omitted from the album. How did this song become the best selling single of 2001 when it was dead on arrival at the record labels?
Around this time, Napster had just taken hold of the music listening world. What consumers understood as a free music sharing platform without DRM licensing limits was actually a Peer to Peer distributed file sharing network. With mainstream music labels serving as the gatekeepers to the music industry, it was through Napster that the rejected single It Wasn’t Me reached the public. What happened was that a Hawaiian DJ had serendipitously discovered the song on Napster and played it on the Honolulu radio station KIKI. From there, the song went viral.
Fast forward twenty years. Today, we see headlines like the ones cited above; big tech censorship, elitist financial regulation – a general push against information and financial gatekeeping. So, what do these headlines share in common?
There is a shift in power dynamics powered by a new form of leverage: CPU and Memory. Power used to accumulate in tight circles of closely guarded wealth: private institutions with domain knowledge, control over institutional media outlets, and access to working capital were all forms of traditional leverage. The personal computer and its ubiquity in society have added another form of leverage, one that is accessible to all and that’s poured riches on savvy entrepreneurs who had bet on the internet.
With the invention of the transistor (1947 Bell Labs) and the steady course predicted by Moore’s law, computers have become more powerful and provided leverage to common people and their needs. A quick look at social media (which I see as a reflection of humanity and its thoughts, a collective consciousness of sorts) displays the amplification of what used to be private thoughts. The personal computer revolution has changed the fabric of society and continues adapting; the question is where does the internet move next?
Citing article 3 above, the addition of IPFS to the web browser is a straw in the wind for eventual adoption of peer to peer networks in everyday applications. Napster was one example, but the world was not ready for such changes yet – an example of another product that was too early for the market was Myspace, and we all know how that misfire paved the way for Facebook. However, with current demand for distributed crypto currency and a general distrust of institutions I believe the market is ready for the next sweeping change in the internet. The market is ready for a distributed internet… web 2.0.
What would the technology stack look like? Of course, it’s too early to say for certain the exact terms that web 2.0 would manifest itself. But I am sure it will be pushed forward by increasing CPU speeds, higher memory, 5G and satellite bandwidth, the Internet Of Things movement, and especially cheaper hardware costs for the consumer. Here is a SWAG of what I believe the future web 2.0 stack could look like (Stupid Wild Ass Guess).
It starts with a protocol: IPFS (the interplanetary file sharing system) is a P2P communication protocol that acts like an immutable, distributed Content Delivery Network. In plain English, that means that this means of communication allows for storing static files like mp3 files, PDF’s, or HTML web pages on a bunch of normal servers instead of just one beefy server hidden away in a company’s datacenter. If a company was a gatekeeper to a PDF or a web page via their lone server, then IPFS is Maximilien Robespierre fighting for the release of that PDF onto a bunch of common man servers on the IPFS network.
But what about Access Control? If nothing can be deleted from the distributed network (by design, distributed networks employ consensus algorithms that prohibit tampering with static assets so nothing can be deleted or altered), then how can I host private sessions on the web? Enter, blockchain smart contracts.
A smart contract is an automated, self-executing contract between two or more parties involved in a transaction that acts sort of like an escrow enforcer or middle man. According to this research paper, computer scientists have created an operational proof of concept built atop of the Ethereum smart contract feature to allow selective access to static assets hosted on a distributed IPFS network. That means that items on the network can be shared privately, yet still hold the immutable distributed properties of IPFS.
Blockchains are another piece of the puzzle not only for their smart contracts, but also for their distributed logs and coin features. Any organization who wants to share a common state of events can rely on blockchain’s consensus algorithms to trust that the information in the logs were not tampered with and accurately reflect the current state of affairs, whatever their shared mutual interest may be (examples could be logging the state of a package, or even the state of a pizza being delivered). This is an important feature for web 2.0 as it allows for apps to collaborate and agree on a common state of events to base actions upon.
One slight digression here before the topic of cryptocurrency coin values and incentives are mentioned: I must address the current speculative craze over Bitcoin. I personally share the beliefs of hedge fund billionaire Ray Dalio when he says these things:
“Although Bitcoin is limited in supply, digital currencies are not limited in supply because new ones have come along and will continue to come along to compete so the supply of Bitcoin-like assets should, and competition will, play a role in determining Bitcoin and other cryptocurrency prices.”
“Starting with the formation of the first central bank (the Bank of England in 1694), for good logical reasons governments wanted control over money and they protected their abilities to have the only monies and credit within their borders.”
“The big questions to me are what can it realistically be used for”
With that being said, I believe that Bitcoin’s short term value may go up as fund managers package up bitcoin into retail assets and demand drives the price up. Furthermore, it may play a role in moving the money of wealthy individuals outside of the country as the United States comes to grips with its upside down finances and regulation locks money within its borders.
Anyways, the missing aspect of web 2.0 is the CPU bit. IPFS with ACL may provide Memory for business applications, but what about the computational features? I believe that computing power is moving towards modular, decentralized computing that could serve CRUD operations using API interfaces via serverless computing. In the last twenty years, computing has moved from on premise servers, to virtual machines hosting applications, to Docker containers, and now serverless functions. I believe the next leap in computation could be abstracted away entirely from single datacenters into serverless functions that run on a distributed network, perhaps incentivized by cryptocurrency for consumers to offer up their idle machines in exchange for a digital coin. These credits will finally store future value as compute credits and CPU will become a commodity that can be traded in the free market in exchange for traditional goods and services.
This technology is still yet to come, but I believe it’s the next critical piece of the puzzle. I’m hoping the roaring 2020’s inspires its inception and that I was the one to muster the inspiration that manifests the technology (just joking).
With distributed computing via serverless computing, distributed state via blockchain logs, compute and memory credits via crypocurrency, and distributed memory via IPFS (or something similar), that leaves all but database technology in the web 2.0 stack. As far as databases go, I am not sure if there is a way to distribute columnar databases across random nodes as it’s hard enough to achieve eventual consistency with distributed nodes as it is – I believe databases will just remain as an essential vestige of web 1.0. Or, perhaps homomorphic encryption could allow some sort of primitive database to exist on the distributed web.
One final note: I’d like to end with an example project to mull over, brought to the public by the creators of Youtube and Twitch (aka very successful engineers). Thetacoin is a project to bring Video to a distributed CDN network. This project has the backing of large corporations and that may just be enough to serve the market pressures for web 2.0 and get the momentum moving towards developing on this new stack. I believe this to be one of many future web applications to appear on the web 2.0 stack. I recommend checking it out.