Earlier this year, I left my team at Mozilla to start something new. Five months later, I’m excited to share the news that Jel is now live for people to come try out. You can create a Space, or join the Jel community Space to check it out. As with all new web-based software, this is just an early version. This first version of Jel will hopefully be enough to kickstart connections with early adopters to refine Jel into something they love. If you want to join the conversation, join the Jel Discord.
So, what’s Jel? I thought I’d share some of the thinking behind it, and why I’m excited about what comes next. If that sounds interesting, read on!
I’ve been working on Social VR applications for many years now. First, at AltspaceVR, and then at Mozilla, on Hubs. For some time, a few things have bugged me that nobody else seemed to be bothered by, making me wonder if I was the only person thinking about them all the time.
First, while Social VR apps are ostensibly focused on creating social presence with VR headsets, the vast majority of users have great success with traditional laptops, phones, and tablets. It seems to me that avatar chat, not VR, is the core thing that people benefit from. VR is a compelling, but non-essential, way to create this form of social presence. 3D avatar chat tools are nothing new, but the Social VR space that grew in the wake of the Oculus acquisition paved the way for a wider exploration, and also led many to believe that billions of people would soon be meeting up as avatars.
Another odd thing is that the people I saw actually using these apps, the power users, had totally different preferences than the people proposing workplace or other “mainstream” use-cases for them. This latter group almost never became power users themselves, no matter how many features we built that they asked for.
The difference between these groups seems to boil down to what they think when you show them a concept like this:
If you pitch a visual like this to a typical businessperson, it will “click.” This looks just like a real business meeting, with nicer furniture and low-maintenance virtual plants, so it makes sense to them that this is what a “virtualized workplace” ought to look like.
Meanwhile, if you look at the avatar chat apps that people are actually hooked on, they are filled with whimsical or cute avatars, diverse, fantastical scenes, and, in some apps like Hubs or Anyland, a rich canvas of ways to share and mix media with one another with little structure or rules. They’re nothing like a boring conference room with floating human heads in seats and slides up on a projector screen, yet that’s the experience it seems like so many of these virtual meeting tools are trying to deliver.
There seems to be a simple question that predicts the reaction people will have the first time they use an avatar chat app: do they play video games? An easy way to find this out is watching what happens when someone learns they need to use the WASD keys to move around. There doesn’t seem to be a middle ground: either they’re completely dumbfounded by this and complain about it, or it’s obvious to them and it never gets brought up. Those who play games will just fly through the app, quickly finding all the features (and bugs!) while everyone else gets frustrated and think the product designers are fools to assume anyone will ever figure it out.
And finally, the most controversial claim I’ll make in this whole post that seems true is that once you start using avatar chat to regularly meet with people who “get it”, you’ll often prefer to being on camera.
In the post-COVID world, an intuition that being on camera all day does indeed suck for remote work has taken hold, despite the logic telling us that it should work just fine. I won’t get into the details here, but research supports this intuition. However, few teams take that intuition and act on it. If they did, they’d discover that meeting in a game like Minecraft or Hubs can be much, much better in many cases, as long as the team isn’t primed to reject it as a silly idea, as many do.
On my team at Mozilla, it would have been weird (and a bit rude!) to propose using a video call instead of Hubs when taking meetings. Hubs removes the obligation from people to be on camera, and is just plain fun in a way video calls can never be. Meanwhile, when I met virtually with anyone outside my team, video was the norm and Hubs was a weird suggestion. I never dreaded meeting up in a Hubs room with someone, yet I loathed every time I had to fire up my webcam. And by all accounts so did everyone else, even the people who thought suggesting something other than video was weird.
So, having used and thought about avatar chat for work for so many years now, here are some things I’ve noticed that all seem true but are not yet widely accepted:
- Avatars on a 2D screen not only work great, but are strictly better than being on camera for chatting with teammates, especially if avatar faces are expressive enough to directly displace talking heads on video.
- The avatar chat apps that inspire the most creativity are the ones that don’t take themselves too seriously, are more open-ended, and aren’t afraid of letting people have fun. Yet, all the avatar chat apps trying to make remote work more engaging are creating the same boring, cookie-cutter “meeting room” experience.
- Avatar chat apps are natural for those who already play games. Everyone else won’t be early adopters unless you build an inferior tool to cater to them, which will suck and they won’t use anyway. Worse, they will propose “faster horse” solutions like virtual conference rooms given they can’t imagine anything better, since to do so requires… wait for it… experience playing games.
The Jel Thesis
All of this points to something that seems true but is not yet widely believed:
The world is ready for the video game for work.
To many, it will look like a toy. It will only make sense to people who’ve played games, and it will be built just for them. And it will provide much-needed relief from being on camera for the teams out there who “get it.”
Jel is my attempt to build this product. I designed it the way I want for myself and the teams I work on. I’m sure there will be many other products like it to come, and some are already out there building their own ideas.
We’re on the cusp of a completely new product category coming to life as the gaming generation grows up. Jel leans into this trend and tries to accelerate it. Working with others remotely is about to get a lot more fun. It’s an exciting time!
Here’s what Jel looks like:
Jel doesn’t look like your typical productivity tool. And that’s on purpose: the line between “fun” and “useful” is going to keep getting blurrier. These tools are all about sparking creativity, so it seems to me the ones that are both useful and fun will beat the ones that are no fun at all.
You always have to cut lots of corners when building something new, otherwise you’ll never ship. But there were some things I saw as essential for this first version of Jel. I’ll unpack these next. If you’re already convinced, go take Jel for a spin, otherwise read on for more details of some of the design decisions I made and the requirements I set in stone for Jel’s first version.
Jel’s Core Elements
The Always-On 3D Space
Jel is designed to be the first always-on, persistent tool for avatar chat, like Slack and Discord, but for 3D virtual spaces.
- You can keep Jel running in the background all day without it becoming a battery or CPU drain.
- Switching between 3D worlds is fast: one click, with no loading screens.
- When you switch worlds, you’ll find everything just how you left it. Objects, environments, and your last position are all persisted.
- Jel tries to always run smoothly, regardless of your device.
Jel can live in a browser tab or be installed as a standalone app. When you switch to something else, it runs quietly in the background, consuming less resources than a typical text chat app. It sets the graphics quality to a level that ensures that no matter if you have a high end GPU or basic laptop graphics, it feels smooth and responsive.
Jel wants to be on your short list of tools that are rock solid, essential, and handy, worth starting automatically when you boot your laptop. When people walk by your desk, if they didn’t know any better, they might think you were goofing off playing a video game with your teammates. But then again, maybe that’s exactly what the future of work looks like!
The Need For Speed
Having used avatar chat at work for years now, I have some pretty strong opinions about how any such tool I use all day should work. I’ve tried to come up with the best user experience I could imagine, the one I’ve always wanted myself.
Its #1 goal: speed.
Jel prioritizes efficiency over intuitivity. When the choice for an interaction was between slow and obvious, or fast and non-obvious, I chose the faster one. Once you’ve learned all the interactions, working with 3D spaces and media in Jel is fast, efficient, and precise. If you know how to play games, Jel leans on your existing knowledge and muscle memory. Jel isn’t hard to learn, but it doesn’t have a button-and-icon driven UI. It relies heavily on pointing at objects and using hotkeys (similar to Blender) —so having on-screen hotkey tips at all times is critical.
Most 3D games just take over the whole screen and don’t expect to live alongside your other tools. Not so with Jel. Jel is perfectly happy in a window like any other app, and has a clean, web-based UI that works just how you’d expect. But hit Shift+Space and the UI slides away, and will lock your cursor for game-style mouse look. Hit Shift+Space again to get back the UI and cursor in a snap. Interactions like this are quick and tuned to not drop frames, so they’re smooth and won’t break your flow.
Jel fits into your existing workflows and lives alongside your other apps. It’s an always-on, fast, fun, and efficient 3D FPS-style video game for collaboration. For some teams, it may just become your secret weapon.
Avatars That Feel Good
Nothing else matters in an avatar chat app if the avatars suck. Jel rejects the idea that the best avatars for work look like humans and should look how you look. I’ve been freaked out by just-not-quite-normal-looking human avatars countless times, and it’s been enough to swear me off of them for life. To me, this is about as bad as it gets:
Instead, Jel has simple but expressive avatars that focus on the key elements of facial expression: the head, eyes, and mouth.
In other words: yes, they’re happy floating cartoon heads.
To be comparable to live video, they need to feel alive. So, Jel has state-of-the-art, real-time lip syncing. With this abstract style and live lip-sync, Jel avatars feel much more like talking to a live person, and also add a bit of lightheartedness to the whole thing. They are also super cheap to render, so Jel should be able to support many, many people in the same place at once. With Jel’s avatars, your conversations feel more natural and fun, and avoid all the baggage that comes with being on camera.
The best way to experience Jel’s avatars is to try them yourself. Words and pictures can’t quite convey how it feels to actually use them.
Worlds as Documents
There are two big benefits I’ve found using avatar chat for work. The first, covered so far, is natural communication.
But there’s another one: spatially-arranged, mixed media.
Avatar chat is totally different when people can quickly bring in images, videos, and 3D models and arrange them together. Once it clicks, people start being more improvisational, creative, and sharing things in a way that feels distinctly different and more playful than in other collaboration tools.
For Jel, I asked myself: if these 3D mixed media spaces do end up being transformative for teams, what would be the best way to structure them?
The simple answer is that Jel is organized into private Spaces, each containing a tree of networked 3D worlds. These worlds can contain media arranged in 3D space.
The more complete answer is there are four key aspects to Jel worlds: the environment, the topology, the metadata, and the media.
Jel Worlds: The Environment
Designing 3D environments for avatar chat is tricky. I’ve spent a lot of time meeting with my team in virtual environments ranging from the most spectacular to the most mundane. Environments have the most potential to expand or constrain what people do in avatar chat, for better or worse. When you’re meeting in the same environment over and over again, some elements have more long term impact than others.
There’s a simple 4-layer model I use for thinking about the effects a 3D environment has on how people use it over time. The top layer, Structure, has the most long term, persistent impact, and the lower layers have less and less long term impact, with the last layer, Detail, having the least impact overall, given enough time.
- Structure — How is it physically laid out?
- Purpose — Does it have a clear purpose?
- Vibe — How does it feel to be there?
- Detail — What are the fine details?
An environment’s Structure is impossible to ignore, and constrains everything else. A clearly defined Purpose can have a huge impact. For example, a movie theater environment will be used for watching movies and not much else. The Vibe is critical to setting the mood but its effect diminishes over time. And the Detail, while often creating the “wow” factor, eventually gets tuned out completely. (Anyone who has dialed down the graphics to get an edge in a competitive video game understands how this happens.)
Jel worlds will be used day-in, day-out for months or even years. So, anything that will be tuned out isn’t worth worrying about beyond first impressions, and things that will be impossible to ever ignore are essential to get right. Everything else must be handled with care.
Working from the bottom up, it’s clear Jel shouldn’t worry too much about Detail. As long as things are pleasant enough to look at, that’s good enough. This greatly reduces the level of effort needed to create environments, and also unlocks approaches that would be incompatible with having environments with rich detail, as we’ll see.
What about Purpose? Jel is a general purpose tool, so environments should be careful not to convey a narrow purpose, since it may limit what people try to do. Eventually Jel could offer environments intended for specific purposes, but for now, with most teams exploring avatar chat for the first time, it’s worth avoiding. For example, making Jel worlds look like conference rooms would make it easy to box people into only using it in very specific ways. (Can you tell I hate virtual conference rooms?)
The Vibe is important to get right. Even though its impact diminishes with time, it never goes away completely. I don’t want Jel to feel boring or stuffy, I want it to feel fun and relaxed. So a vibe of being outdoors, in a natural environment, seemed like a good choice to start with, and one that won’t get too stale. And so the first Jel worlds are outdoor scenes, with grass, trees, and open sky. This seemed such an obvious choice that when I created the teaser page for Jel, before the first line of code was written, it looked like this:
Now for the most critical element to get right: Structure. Unlike purpose, which Jel avoids for now since it constrains what people will do, adding structure expands what they can do, or think to do, and has the longest permanent impact on how an environment will be used. So Jel worlds should have a lot of structure.
Jel worlds are generated by an algorithm that creates lots of structure like hills, valleys, lakes, rivers, bridges, cliffs, walls, and plateaus. By creating such variety, Jel worlds will hopefully lead people to use these structures in all kinds of unexpected ways.
So taken together, Jel has outdoor worlds that have a variety of structure. Since fine detail isn’t a focus, they can be simple, blocky voxel worlds that get the right vibe through their art style, and diverse structure through procedural generation. Voxels are great because they look cool, are easy to generate, and can be loaded and rendered efficiently in chunks, which helps meet Jel’s goals of responsiveness and instant world switching. (Special thanks to Daniel Esteban, whose work was hugely influential in helping me get Jel’s world systems up and running.) And so here, finally, is what Jel worlds look like:
Jel Worlds: The Topology
The common topology for a 3D world is a flat plane, where you can walk in any direction until you hit the edge. At the edge, you’re blocked, since the world doesn’t exist past that point.
Not only do you have to block people from going past the edge, but you also have to figure out what someone sees when looking past the edge. Typically an artist will add a skybox to create the illusion that the world continues on beyond the edge.
This usually works fine, but when I considered it for Jel’s outdoor voxel worlds, a lot of things bugged me:
- What should be visible on the horizon? Showing fake stuff that doesn’t actually exist seems weird in a procedural, voxel world.
- It would get frustrating having to think about which region of the world objects were placed in. If something is on the other side of the world, you’d have to walk all the way across the whole world again to get to it.
- Hitting an “edge” that you can’t get past just feels terrible. Unlike games with large worlds, Jel worlds are going to be quite small so running into the edge is going to happen all the time.
The answer seems obvious: Jel worlds should be little spherical planets. The horizon problem goes away since the world just curves off in the distance. Objects can be reached quickly by following the shortest straight path to them. And, of course, there’s no end-of-the-world edge you need to worry about.
It turns out that creating a spherical world like this is quite challenging since spheres cannot be cleanly mapped onto the flat 3D coordinate system of game engines. However, there is a trick you can use to get most of the benefits with way less work: torus worlds.
So, Jel has small, torus-shaped worlds. If you keep walking in any direction the world will wrap. Combined with light beacons that emit from objects in the distance, it’s quick and easy to see and walk towards any object along the shortest path:
A few tricks are used to make this work: object wrapping, 4D tiling noise to create a seamless environment, and vertex warping to give everything curvature. But the benefit is that Jel worlds are much more forgiving than typical flat worlds for being able to jump in, find others, and navigate to objects.
Having used them for a while, I feel comfortable saying that torus worlds are the right choice for the 3D spatial documents of the future.
Jel Worlds: The Metadata
So that covers what it’s like to be “in” a world. What hangs everything together? Most communication tools, like Slack and Discord, have a “channel” concept to organize threads of communication. However, Jel worlds aren’t just places to chat — they are also documents you work on together.
A flat list of worlds would make them similar to channels but limit how they could be organized. It seemed better to have a linked network of worlds, similar to a wiki.
However, a network can be overwhelming to deal with. Tools like Notion point to a happy medium: documents are part of a network, but all they hang off of a shared, editable navigation tree:
This tree can start as a flat list, so if teams want to use Jel worlds like Slack or Discord channels, they can. For teams that take a document-oriented approach, they can create a rich hierarchy to organize their worlds. My guess is teams will start out treating Jel worlds like channels, and slowly evolve to see them more like documents.
Beyond that, Jel worlds belong to a Space, which is like a Slack workspace or Discord server. These terms can be a little confusing at first, but match the real-world use closely enough that I think they will make the most sense in the long run.
Jel Worlds: The Media
The last core element of Jel is media. Here are some of the requirements I laid down for media in Jel:
- Uploading files, drag-and-drop, copy/paste, and all the usual ways to add content feel natural and work as you’d expect.
- You can paste any URL into Jel, and it will “just work,” spawning the best 3D representation for it. Conversely, all objects in Jel are URLs that you can share and paste into other worlds.
- Objects can be placed anywhere in the world and be freely rotated and scaled by anyone with permission.
- Searching the web for media like GIFs or 3D models is quick and easy.
Under the hood, worlds are shared documents, synchronized using the same technology that powers apps like Google Docs. This makes it possible to add 2D “sub-documents” to the 3D world, such as synchronized text pages, that are embedded in the world itself as part of the same document.
The simple text pages Jel has today are just the beginning: this approach may eventually extend to include things like drawings, sketches, diagrams, and more.
The Future of Jel
This is already a lot of stuff to digest, but the potential of apps like Jel reaches far beyond what I’ve covered here. What exists today is, at best, the foundation for the more important work to come. Product development is a conversation, so it’s hard to know exactly what people will ask for and how it will all fit together. (Have some thoughts? Join the Jel Discord!)
If avatar chat takes off for teams, it will be a much more useful “hub” for all the real time communication flowing through the organization than anything that’s come before. Jel isn’t just a collage of dumb video feeds or an endless stream of characters: communication in Jel always happens inside a spatial and temporal context, within a dynamic medium. If it becomes the primary way teams work together, there are some crazy possibilities:
- Capture and Artifact Generation — If most collaboration and decision-making is happening in 3D virtual spaces, back-end systems and agents can capture, analyze, and summarize what goes on into artifacts for teammates to consume or build upon. Worlds can become living documents to capture all the knowledge that falls out from human-to-human interaction. This can start out organically, and eventually be automated using AI.
- Orchestration — Virtual spaces provide a rich canvas for orchestrating interactions with one another. When coupled with an API, the kinds of things that can be orchestrated in a 3D space may quickly outstrip anything possible using existing text or “boxes on screens” based tools.
- Integration —If knowledge becomes grounded in a virtual, spatial context with avatars, then integration of all existing media, information, and tools with these spaces becomes not only logical but necessary to compete. Eventually, apps like Jel may connect to every other tool or data source you have, since leaving it detached would “unplug” it from your team.
- VR & AR — I have big plans for immersive computing devices like VR and AR fitting into Jel. For now, I’m focusing on making Jel amazing on a laptop or PC. For VR and AR support I’ll be taking a completely unique approach I’ve not seen tried before, since meeting the goals of Jel will require it.
So, this is why I’m excited about Jel, and why I’m more excited than ever to be working in this space. The time has come for the video game for work. Those who dive into these new kinds of tools to start experimenting will be the pioneers exploring the frontier of this new way to work together. If you think this is for you and your team, create your Jel space to get started and join our Discord to stay in touch. Without you, I can’t build something awesome.
Most of all, have fun! I can’t wait to see what you do with Jel!