How (Not) To Build a MetaverseWed 05 October 2022 by Jim Purbrick
Earlier in the year I helped Josh Sanburn and his team put together a podcast series on building Second Life for the Wall Street Journal called “How To Build a Metaverse” which I’m now really enjoying. It’s great to hear all of the amazing stories about the origin of Second Life told by some of the most amazing people I’ve ever worked with, but the stories I’m enjoying the most are the stories I hadn’t heard before.
An incredible example from the most recent episode is the story of how Second Life’s moderation began. Peter Alau tells the tale of how he cribbed together a 20 paragraph Terms of Service using examples from other virtual worlds before Philip stepped in and mandated that the terms of service should be “Be Nice”.
My life was changed forever when I read Julian Dibbell’s article “A Rape In Cyberspace” while working on the literature review for my PhD in Persistent Virtual Environments at the University of Nottingham. The article made me realize that virtual worlds were not just a collection of interesting technical challenges, but that they could become real, meaningful communities and that the people who met in them could be hurt, just as they can in real life. Reading Dibbell’s article made me want to work on commercial virtual worlds that enabled those real human communities rather than experimental worlds that only existed as technical proofs of concept. I left academia, started working in the games industry, and quickly found the Terra Nova group blog that Julian Dibbell was contributing to along with Cory Ondrejka, the CTO of Linden Lab.
Given that the path that led me to Second Life, I was saddened to hear that the origin story of moderation in Second Life didn’t mention it. Peter should have known that people wouldn’t read his epic Terms of Service, but at least he tried to apply best practice. “A Rape In Cyberspace” was already 10 years old when Second Life launched and Linden Lab were talking to many of the pioneers who worked on early virtual worlds. Philip should have known better, but pursued a wishful, naive approach to moderation and Second Life ended up learning a lot of lessons that had already been learned the hard way.
This wasn’t the only occasion that Second Life’s design was optimistic, naive and didn’t give enough thought to how it might be abused by bad actors. When I first visited San Francisco I hosted a party on Russian Hill to get to know my colleagues only to end up huddled in the living room with other engineers battling a plague of grey goo spreading across the grid that was enabled by an over-permissive API. The API allowed scripted objects to self-replicate and so exponentially overwhelm regions until firewalls of shut down simulators limited the spread and space lasers were able to delete scripts to purge the world of the menace. Shortly after I returned to the UK I woke up one morning to my first encounter with the infamous Goatse image which a resident had pasted across the world so that it would show up on the live map that had been naively been added to the front page of secondlife.com without enough thought about how it might be abused.
Eventually Second Life’s moderation policies and processes got to a good place (Robin Harper was one of the people I spoke to about best practices for moderation when I was working on building safety into Oculus Venues) but the story of how moderation began in Second Life is one of missed opportunities. We shouldn’t just laugh off Second Life’s failings as the stories of swashbuckling hackers while at the same time pointing fingers at the similar failings of the current efforts to build a Metaverse. Multi-user virtual worlds were already 20 years old when Second Life was built and many lessons had already been learned.
“How To Build a Metaverse” is incredibly entertaining and illuminating, but this part of the story is a good example of how not to build a metaverse. You can’t just read the fiction about virtual worlds and ignore the non-fiction. You can’t just talk to people who built early virtual worlds or hire them: you have to actually listen to them and apply the lessons they learned.
Virtual Worlds, Real People
Last week I gave a lab talk to my former research colleagues at the Mixed Reality Lab at the University of Nottingham about the work I’ve been doing since leaving the lab over 20 years ago. Rather than talk about technology I focussed on the lessons that todays efforts …read more
Virtual Objects You Can Touch
Now that Horizon Workrooms has launched I’m very happy to be able to write about the functionality that I found most exciting while building the experience: the mapping of virtual objects to their real world counterparts.
Typically augmented and mixed reality experiences overlay real world objects with virtual annotations …read more
The Art Of Social VR
The recording of my recent Stereopsia 2020 talk about the art of designing social VR experiences is now online. The talk summarises a lot of material covered in more depth in my posts on The Conversation Around Content, A Tall Dark Stranger and Small Places Loosely Joined, so if please …read more
A Past And Present Future Of Work
Over the last few years I’ve spent a lot of time helping people new to virtual worlds learn how they work. Over the last few weeks I’ve been sharing a series of short posts on some of the high level concepts I covered which will hopefully be useful …read more
Small Places Loosely Joined
Over the last few years I’ve spent a lot of time helping people new to virtual worlds learn how they work. Over the next few weeks I’m sharing a series of short posts on some of the high level concepts I covered which will hopefully be useful to …read more
A Tall Dark Stranger
Over the past few years I’ve spent a lot of time helping people new to virtual worlds understand how they work. Over the next few weeks I’m going to share a series of short posts on some of the high level concepts I covered which will hopefully be …read more
The Conversation Around Content
Over the last few years I’ve spent a lot of time helping people new to virtual worlds learn how they work. Over the next few weeks I’m going to share a series of short posts on some of the high level concepts I covered which will hopefully be …read more
Before my recent post about leaving Facebook, it had been a while since I’d updated The Creation Engine and it turned out I had some housekeeping to do. After pushing the Pelican output to https://github.com/jimpurbrick/jimpurbrick.github.com I got a mail from GitHub saying that …read more
0 to 1
8 years ago London was hosting the Olympics and I met Philip Su for the first time at Browns in Covent Garden to talk about the engineering office Facebook was planning to open in London. By the end of this year Facebook London will have thousands of people working in …read more
This blog is 10
Just over ten years ago I set up The Creation Engine No. 2 after previously blogging on the original Linden Lab hosted Creation Engine and before that on Terra Nova. So, while I’ve been blogging for almost 14 years, 10 years of The Creation Engine No. 2 seems like …read more
Replicated Redux: The Movie
The recording of my recent React Europe talk about Replicated Redux is now online and I’ve written several other posts describing designing, testing and generalising the library if you would like to know more about the details. If you’d like to play the web version of pairs or …read more
Replaying Replicated Redux
While property based tests proved to be a powerful tool for finding
and fixing problems with ReactVR
the limitations of the simplistic
It’s easy to think of applications where one order of a sequence of actions is valid, but another order is invalid. Imagine an …read more
Building Safety in to Social VR
Last year I hosted a panel on creating a safe environment for people in VR with Tony Sheng and Darshan Shankar at OC3. I commented at the time that the discussion reminded me of the story of LambdaMOO becoming a self-governing community told by Julian Dibbell in My Tiny Life …read more
Testing Replicated Redux
Opening a couple of browser windows and clicking around was more than sufficient for testing the initial version of ReactVR pairs. Implementing a simple middleware to log actions took advantage of the Redux approach of reifying events to allow a glance at the console to reveal precisely which sequence of …read more
ReactVR Redux Revisited
There were a couple of aspects of my previous experiments building networked ReactVR experiences with Redux that were unsatisfactory: there wasn’t a clean separation between the application logic and network code and, while the example exploited idempotency to reduce latency for some actions, actions which could generate conflicts used …read more
I’ve just got back from Kaş where I spent a lovely few days celebrating Pinar and Simon’s wedding and while there spent a few hours reading Now We Are 40: a thoughtful and entertaining look at everything from house music to house prices from the perspective of Generation …read more
Several years ago when we were in 100 robots together, Max was celebrating his 40th birthday. When I said that mine would be in 2017, it felt like an impossibly far future date, but, after what feels like the blink of an eye, here we are.
Along with many other …read more
Mike and I have been talking about how to easily build simple networked social applications with ReactVR for a while, so I spent some time hacking over the Christmas break to see if I could build a ReactVR version of the pairs game in Oculus Rooms. Pairs is simple and …read more