3D vs 2D for Legacy Applications

When Alan Kay’s team at Xerox created the overlapping window user interface, they were working for a document company. Everything was organized around documents mimicking paper, sitting in folders except when being operated on by one application or another.

We don’t need the paper metaphor anymore, but we sure have a lot of 2D paper-oriented legacy stuff laying around. While 3D is pretty clearly winning for new applications in which people work together(*), it hasn’t yet demonstrated something so much better with which to replace all the existing 2D docs and their applications.

The state of user-interface design has provided two ways to deal with this: virtual computer displays embedded into the 3D world, and floating 2D windows. Both are pretty good and have their place.

Intensive Care Unit
One avatar is operating an in-world bio-signs display, which is also being shown in the lower left as a 2D panel floating over the view of the virtual room. The text chat is a 2D floating panel in the upper left, while the procedure timer and other applications are in-world.


(*)Without people, there is no realtime collaboration. 2D includes people only as second class abstractions rather than reifing them as first class objects in the communications model. For teaching, training, and working meetings (as opposed to mostly unidirectional sales presentation meeting and lectures), 3D has emerged as the most natural way to show individual presence, and the simplest way to provide enough immersion to give a sense of shared presence.

Continue reading

What's a Server?

I was taught that science is all about managing complexity by creating abstractions over different domains. A common layman’s mistake is to anecdotally observe or hear that something is true at some level, somewhere, and assume that this fact or definition applies throughout every discussion. For example:
One hears that computers are “programmed in binary,” or that they “understand binary,” but in fact, programmers don’t write in binary. Programmers work at a higher level of abstraction than binary encoding.
One hears that computers use “digital circuits,” that are simply “on” or “off”, but in fact, the physics of each electronic component is continuously variable. Device physics is at a lower level of abstraction than digital electronics.

So, what’s a server and what is peer-to-peer? It depends on what ‘s being discussed?

Continue reading

Transparent Computing

In What Is It About Immersive 3D?, I claim that being immersed in among the application components allows and encourages us to mix and match among bits and pieces of different applications. That is, we’re getting rid of the idea of having separate “applications” on a computer.

I forgot to mention the other aspect of immersive 3d: that we want to get rid of the computer. Well, actually, that we want to make using each application object feel like a real world object, not a computer thingie. The direct manipulation feel makes it easier to work with stuff, and the lack of indirect abstractions and symbols makes it easier to understand.

A few examples below the fold.

Continue reading