How do you Solve the Metaverse Problem?
When you meet someone who has a metaverse or virtual world project, ask them what they’re creating. If their answer is something like, “I’m creating a engine in C++ that uses a distributed computing to present an interactive world that is defined by point clouds”, they’ve only described their solution. Do you fully understand the problem that they’re solving? More important: do they?
I came across a great quote about systems engineering at Wikipedia. “The systems engineering process must begin by discovering the real problem that needs to be solved; the biggest failure that can be made in systems engineering is finding an elegant solution to the wrong problem.” When we’re making a Metaverse, what is it that we’re trying to solve?
When I read the quote above, it resonated with me. Why don’t we make a fresh attempt to start with needs and then work towards a technical solution? Who’s problems are we trying to solve, what are they, and how important at they?
We are going to try to understand the needs behind something that is very thorny: a metaverse project.
It is worth pointing out that even though we’ll start our focus with needs and we’ll end up at solutions, we’re still following the same path that has been made many times before us. We’re going into this by saying that our solution is a metaverse. The only uncertainty is what form that metaverse will take.
The mistake? We’re defining the problem in terms of a solution. At least this time we recognizing that fact up-front. Perhaps this illustrates yet another reason why the very attempt to intentionally create a metaverse can result in its failure.
Now, back to determining needs…
To understand the needs that drive a metaverse, we could start by asking people what they want or need in their everyday life. (Finding an expert summary would make more sense.) It might be hard to turn their answers into something useful, but I think there is a lot of insight into basic human needs and desires that shouldn’t be easily dismissed. I’m reminded of Maslow’s hierarchy of needs, but I find myself to be critical of that approach.
At the other end of the spectrum, we could find people who already know what a metaverse is, and we can ask them what they hope to do there and get out of the experience. Their answers are going to be much more specific and easily turned into goals… but we also have to be aware that the kind of people who know what a metaverse is may not be representative of a larger online world.
We should look at existing and previous virtual worlds (Second Life is a big one) and see what experiences people really liked, and why. We should make note of them. We should also take the opportunity to find out what they didn’t like, and why.
Finally, we look at what real-word activities provide value to people. What works? What doesn’t work? If we’re going to be building a world in a virtual environment, we better have a good idea of what currently works and doesn’t work in the real world, for who, and why.
To recap, we ask people what they’re interested in, and then we find out more about their activities. We look at the virtual world, and we look at the real world. As we do so, we need to observe from a broad social perspective, but we also zoom in and look at it from an individual level.
When you put the data together, I hope that you come to the same conclusion as I have: a successful metaverse should be capable of meeting enough of the needs and desires, both broad and specific, of a large section of the entire population. Pause a minute to digest that and reflect on the list below.
Learning about ostriches, gossip, mindless entertainment, relaxation, building a company, vanity, competitive sport, love, shopping for a better pair of shoes, education, building a fan base, religion, creating a poem, telling a secret in private, domination, public performances, saying goodbye.
This isn’t technical stuff, and I suspect that I might have lost a few of you, so let me drive it all back home. See all those items in the box above? That is just a small sample of all things that people will want to do in the metaverse. You know what else is true? Those are all things that people are already doing on the Internet today.
So now you see the scope of the problem. What do people want from the metaverse? Everything. That’s all. You’ll never be able to directly satisfy it all by yourself.
This is the point where a developer might say, “You know what? I’m just going to build my interactive point-cloud virtual world and see where it goes from there.” I don’t blame them. But they should at least figure out who they are going to be solving problems for, what those problems are, and how important they are.
You shouldn’t need to write down the sum of the human experience. If you made some effort towards this, you should probably focus on real and virtual world activities, and go through in your mind how they’d work out. Later, this becomes an excellent tool for when you want to flesh out design specifics.
How might you cultivate one particular commercial area with artistic quality buildings and prevent a first-time designer putting up a shack or a house? You might start with how they took care of that in other virtual worlds, like Second Life. (Answer: it would be up to the land owner to enforce.) You could also ask yourself how they handle that problem in the real world. (Answer: zoning.)
To move forward on a metaverse project, the most obvious conclusion would be that you need to build a general-purpose machine… a large underlying platform. You would expect for others to build on top of your platform to create the virtual world experiences that people want and need.
Now that you’ve identified a new group of people who have a stake in your project (the developers, experience builders, or advanced users), you’re going to have to figure out their needs and how far you’re going to go in order to make them successful. Technical requirements? Documentation? Financial motivation? Trust in you?
You’ll also need to figure out how you’re going to prioritize their needs. Is your primary focus really on the users, the developers, or yet another group?
One of the greatest challenges may be meeting the expectations of developers and users alike. I think we’ve covered expectations in terms of needs and activities, but what about technological expectations?
Features found in existing applications are going to drive people to want the same things they are doing today, and at the same level of quality. Are you ready to create a back-end capability which simultaneously supports a shared movie experience, twitch-based action, secure communications, live performances, building objects from in-world, and a player inventory filled with functional items?
More directly: can your world simultaneously enforce conflicting goals, like the real-time requirements of twitch-based action, while simultaneously supporting situations which require the fairness of time dilation? What if we add in the requirements of a secure communications channel which brings some additional latency?
Let’s look at the front-end code for your metaverse client. The same questions apply, and more. Will your movie experience be as good as a stand-alone one? What are the challenges over time in extending the platform to support new functionality?
You’re also probably going to decide that you need the financial backing of a large company to create this great platform. If so, we’ve got to examine the needs of this large company and roll that into our metaverse requirements as well.
Risk, return on investment, cash flow, shareholder sentiment, competition. You have a limited runway to get the project in the air. You have user counts and revenue goals that you have to meet. You’ve got to design your metaverse in a way that you can make a profit. You have to roll all of this into your initial design and prioritize these needs, too.
If you’re lucky, you might just have an existing system to lean on. (I think that if Valve is creating a metaverse, their existing infrastructure provides much of this.) On the other hand, if you have a patient partner, you might be able to create a metaverse without too many up-front business concerns. What if you could build a metaverse today, and worry about monetizing it later down the road?
That is one way that the arrangement between Oculus and Facebook could work out… but I don’t see Facebook being hands-off for too long. It is also the way it would work if you’re building a metaverse in hopes of being acquired by another company (“bake and flip”). The business side may not be a problem that you have to solve right away.
If you have not already, you should already recognize that not all the needs that you’ll have to address are technical. These other issues need just as much of your attention.
The Big Problem
We’ve made a first pass at developing a list of needs. You might also be starting with out with other requirements, constraints, and pre-existing choices. Now we’ve got some tough decisions to make. How you turn these needs into solutions is critical. Do you sit down and start with priorities and design compromises? Try to tackle everything at once? Start small and build out from there?
If you were Valve, perhaps you would consider reducing the problem by addressing a subset of it. Trim the fat. Could you build a shared entertainment universe instead of a full-blown metaverse?
Here is my suggestion: put a stake in the ground and take a stab at a design. See if you can figure out the different ways that it would play out, and for all the involved parties. Try to understand it from different angles. As you go, make note of the rough spots in the design.
Many of you have at one time or another refactored your code, but what if we use that same process before we even write our first line of code? Try your hand at refactoring the design. Find your common elements. Look for efficiencies. Is there a different way to get to the result that you’re looking for? Are you focused on the right thing? Can you solve a different problem instead, and still arrive at an equivalent answer?
If building a metaverse was just a technical problem, it already would have been done by now (or we could have fixed someone else’s broken implementation). It isn’t. A metaverse is a design problem first. Due to its complexity, it has to be addressed from a holistic perspective. It is a modern-day Apollo program; it is a systems engineering problem.
The next article should be pretty basic, but fairly unique. It will focus on current-day observations and updated beliefs in metaverse design.
- Augmented reality
- Data Collection
- Intellectual Property
- Science Fiction
- Second Life
- Virtual home