A Manifesto for the Metaverse

We need open standards for an open metaverse.

What is the Metaverse? Wired tried to figure it out recently and the results were inconclusive. Where is the metaverse? How do we log in to it? Nobody knows! But we kind of have an idea of what we think it should be. We read Snow Crash. Futurama nailed it pretty well.

Hopefully, we'll solve ad-blocking in the metaverse at least as well as we have on the web

When I hear the term metaverse, I think of donning a VR headset and logging in to some virtual reality version of the current internet - an interconnected web of virtual places that one can traverse in a way analgous to how we travel in the physical world. For example, Google's metaverse presence might be something like Grand Central Station, with myriad portals to different places. Walk through one, and you'll find yourself in a new location. Reddit or Discord might mean interacting with other avatars in real-time like a regular face-to-face conversation instead of via time-delayed text messages. Of course, there's limitless possibilities for gaming, where this sort of thing is practically old-hat by now (more on this below).

But that fantasy doesn't exist. There's nowhere to log on to anything approaching that vision. That's why so much of the talk about the metaverse devolves into people loudly declaiming that it's all a bunch of vaporware BS - because, for the most part, it is.

But it doesn't have to be. VR sales have been quietly growing for years and they're poised to take off. We're at a unique inflection point where we have an opportunity to shape the future of the online world. If we play our cards right, we can get back some of the funky, quirky, unique, goofy fun of the early web that we're all constantly lamenting we've lost. First, let's look at how we got here.

A brief history of the Internet

The Internet wasn't always the way it is now, and it wasn't a sure thing that it would turn out as it did (for better or worse). With a few twists of fate, it's quite possible things could have gone differently. Here's a highly abbreviated, no doubt incomplete, timeline of the Internet to date.

1960's - Early 1980s: ARPAnet

ARPAnet linked up military and university computers to share research. Users would connect to remote systems through command-line programs like telnet. Files were transferred via protocols like ftp. Honorable mention to the PLATO System developed at the University of Illinois during this time which introduced a lot of now-commonplace ideas like message boards and online gaming.

Mid 1980s - Early 1990s: Bulletin Board Systems

Bulletin Board Systems (BBS) allowed users to dial in, post messages, share files, play early online games - a sort of proto-Internet. The weren't quite interconnected the way the modern Internet is. You dialed in to one BBS and had access to it, but could not connect to users on a different BBS. During this time France also had the Minitel system, which introduced many of the online services we take for granted today, like travel reservations, checking stock prices, paying bills, and shopping.

1993 - Present: The World Wide Web

Around this time commercial Internet services start taking off. Prodigy, Compuserve, AOL and others start to bring the Internet to the masses. At first they function a lot like the Bulletin Board Systems. Users on AOL interact with other AOL users in chat rooms and specially designed brand pages, but they have no idea what's going on over in Compuserve or Prodigy. But in 1993 Tim Berners-Lee at CERN released the World Wide Web, introducing HTTP, HTML and creating an easy way for anyone to share documents through the Internet.

In 1994 Netscape Navigator is released, opening up the web to everyone. The walled garden portions of the popular Internet services become almost an afterthought as everyone starts exploring the wild, weird world of the World Wide Web. Services like Geocities and Angelfire pop up allowing users to create their own home pages. The web as we know it is born. Anyone can publish anything they want, and it's immediately available to the whole world (at least, that portion of it with an Internet connection).

Why the Web Won

That more or less brings us to the present day1. But like I said, it didn't have to be this way. In some alternate universe, maybe you're reading this on a Minitel or PLATO terminal. So, how come it turned out the way it did?

There was another option besides Tim Berners-Lee's World Wide Web in the early 90s. Gopher was a similar document-sharing system developed at the University of Minnesota in 1991. Initially, it was more popular. But in 1993, the University of Minnesota announced they would begin charging licensing fees to use their implementation of the Gopher server. CERN quickly announced the the World Wide Web software would be released to the public domain. The web then overtook Gopher and became the dominant medium of exchanging information through the Internet.

Why? Because it was open. Anyone could write a server that implemented HTTP or a browser that understood HTML without fear that someone would come looking to collect licensing fees. And so everyone did. Multiple implementations of web servers (Apache, Nginx, IIS, etc) and browsers (Navigator, Internet Explorer, Opera, Chrome, etc) blossomed like a thousand flowers all across the Internet and allowed every user to fullfil their own unique needs in the the way they found most suitable.

To move to the next stage of Web3, we need to maintain the same spirit - open standards that anyone can implement.

But Wait! Virtual worlds aren't new!

Gabe Newell Quote

That other Gabe is half-right. MMOs have been around a long-time. Everquest was released in 1999. I wasted far too much of my young adulthood playing Final Fantasy XI, released in 2003. If you want to go back to MUDs, online virtual worlds have been around practically as long as the Internet. So, what's the big deal?

The difference is they're not open like the web is. There's no common protocol. Every one is a custom server and a customer client. I can't open a World of Warcraft client and log in to Final Fantasy XI. They've been stuck in the BBS era of the Internet. If you're not President of a game company like Mr. Newell with a legion of developers and billions of dollars at your disposal, you have little hope of setting up your own virtual world in the same way you can host your own website.

Many of the current proposals for the metaverse are also closed systems. Meta (née Facebook), Sandbox and others all want to sell you digital real estate in their virtual gated communities, but once there you'll be trapped. If history is any guide this is at best a precursor stage before the widespread adoption of an open platform. These closed systems will ultimately be as relevant as a BBS or AOL chat rooms.

How do we make the metaverse a reality?

The two foundational standards of the web are HTTP (HyperText Transfer Protocol) and HTML (HyperText Markup Language). In order for the open metaverse to flourish, we need analogous standards that are optimized for 3D virtual worlds. They should be published to the public domain to encourage experimentation and innovation.

An application layer protocol

The communication between a metaverse client and server will be far more intense and continuous than the document request / response paradigm embodied in the original web. The client will need to be constantly updating the server of the user's position, orientation, body movements, and possibly facial expressions. The server will need to update the avatar's representation and take into account its interaction with the environment and other users, handling collision detection, object interaction, etc.

Maybe HTTP/2 can already handle this. That seems like the obvious place to start. The best way to find out is to try to build it and see what limitations we run into.

A markup language for 3D virtual worlds.

HTML was crucial to the success of the web. The not-quite-a-programming-language gave users without a lot of technical expertise a way to build their own webpage. Later, tools like Frontpage, Dreamweaver, and eventually Wordpress and site builders like Squarespace and Wix made it even easier. But even from the beginning, a sufficiently motivated person with basic computer skills could learn enough HTML in an afternoon to put up a list of their favorite TV shows with the infamous Under Construction banner, hit counter, and guestbook.

Under Construction

Imagine this, spinning in front of you, glimmering and shining in 3D, while the Beverly Hills Cop theme MIDI plays in full, immersive surround sound. Magnificent!

An HTML for the metaverse will encourage the same kind of experimentation we had with the web. Everyone from major corporations to the kid in his bedroom should have the tools to make a virtual world. A simple, human-readable language and freely available tools to render it will make the metaverse as accessible and compelling as the web has been.

Isn't the blockchain involved somehow?

A lot of web3 and metaverse buzz revolves around the blockchain, Ethereum, smart contracts, decentralized everything, etc. This is a large topic that deserves a post of its own. The short answer is that yes, the blockchain will be a key part of the metaverse and a standarized way of interacting with wallets and NFTs should be built in to the protocols and languages that will build the open metaverse.

One application will be distributed identity management. When you're in a virtual space interacting with an avatar that looks like someone you know, how do you know it's really them? If anyone can design their avatar to look like anything they want, there's nothing to stop them from impersonating someone else. Web2 solved this problem with verified accounts, but this requires each site to independently verify every user (or at least users important enough to warrant someone wanting to impersonate them). With blockchain, users can maintain a consistent identity across the metaverse simply by verifying their wallet address, which nobody else would have access to.

That's just one small example, but there's many other ways the blockchain can maintain and expand the ideal of openness that started with the original web.

Let's Build

Protocols and languages are just the blueprints. They'll need implementations to be useful. That means a server and a browser. Once there are freely available open source versions so that anyone can host their own virtual space and anyone else can visit it, that's when we'll really see the metaverse take off and start changing the world the way the web has.

  1. Of course, there's also Web 2.0 starting in the mid-2000s with the rise of mobile and AJAX, but this is tangential to the point. Web 2.0 is based on mostly the same technology as Web 1.0 - good ol' HTTP and HTML (with some JSON thrown in) and that's what's important here.