VRML: Beyond the Desktop
Bob Rockwell, Chief Scientist |
Sometimes a media event can focus a scattered set of signs on the horizon into a Trend. Something like that happened this Spring, when the publication of a draft standard for Version 2.0 of the relatively young Virtual Reality Modeling Language (VRML, rhymes with "dermal") was promptly endorsed by virtually every relevant vendor in the industry. [1]
Now all by itself, that is not so earth-shaking. Those with long memories may recall the similarly widespread corporate endorsement of a language called PL/1 - and many with no gray hair at all can remember dire prophecies of how the whole software industry was going to be transformed by the official DoD endorsement of ADA. Why should VRML be anything more than yet another specialty language with a good PR agency?
Most dramatically, HTML showed how a new language can create a whole new application industry almost overnight - even when if it is not really "new" at all, but rather a radically minimalist subset of a mature, powerful, but forbiddingly complex technology [SGML], which it thus made seductively easy to learn and deploy.
If VRML turns out to be truly important, it will not be because its syntax is more potent or its data structures more efficient, but because it appears at the right time with the right kind of backing, and empowers programmers to produce a class of applications that people are willing - no, eager - to pay for.
And if, as I want to claim, there is something bigger happening here, if we do indeed stand on the cusp of what evangelist extraordinaire Mark Pesce calls the VRML Equinox[2], then that is because the way we think about computer applications - what we think computers are for - is facing a sea-change: the biggest since applications moved off the mainframe and onto the desktop.
Of course, that shift now seems like ancient prehistory to many people. So it may be worthwhile to take a brief look back, to see whether what happened then can shed any light on what's happening now.
The First Wave of civilian computing (1955-80) was devoted to the creation and deployment of calculation and control systems for corporate management and industrial production[3]. The end of the First Wave began in the Fall of 1981, when what had once been a bit of utopian California dreaming - the vision of computers as personal productivity tools - was validated for corporate America by the IBM PC.
By the time Apple debuted the Lisa computer in January 1983, it was clear that a Second Wave was rolling in. The Lisa would be a flop, but that didn't matter. Nor would it matter how many other efforts to adapt, generalize and popularize the new windows/icon/menu/pointer paradigm (gleaned by Apple from the pioneering work of Alan Kay and his associates at Xerox) would turn out to be technical or commercial dead ends. Anyone with any sense of how technology intersects with history could see it coming: sooner or later, most of what people did with computers was going to look like this.
VRML 2.0 is not so easy to grasp as the Lisa's pathbreaking interface, but a closer look yields that same sense of sudden clarity: something profoundly new has begun.
As before, the media are distracted by their own melodramatic David-vs.-Goliath view of the market. Then, it was the giant IBM being challenged by upstart Apple; now, it is Microsoft against the rest of the world. (Connoisseurs of irony can savor how one of David's 1983 sidekicks now finds himself fending off slingshot attacks from the likes of Netscape and Sun and SGI. ) But as before, the heart of the matter is not in this kind of jockeying for media mindshare.
Nor is it - another favorite red herring - all about a
New Machine (the Lisa or the Macintosh then, the Network PC or set-top
box now). As before, the real issues are deeper. The Third Wave, like the
Second before it, is defined by a massive expansion of the computer-using
population.
1st Wave |
2nd Wave |
3rd Wave |
|
Context |
Institutional |
Personal |
Social |
Audience |
Technical |
Professional |
Consumer |
Architecture |
Mainframe |
Desktop |
Networks |
Display |
Text |
2D Graphic |
VR / Multimedia |
Elements |
Requests, Reports |
Windows, Menus, Icons |
Scenes, Avatars |
Control |
Read & Type |
Point & Click |
Explore & Chat |
Fig. 1 - Successive Waves of Computer Use
The Second Wave brought with it a new class of applications based on interactive graphics, from DTP and business presentations to a wide range of interactive simulations (including a kind called "games"). These applications were based on direct object manipulation of a kind literally unimaginable in the command-line paradigm, and would soon turn millions of otherwise non-technical professionals (and no small number of wide-eyed kids) into computer users: people who may never have mastered the abstruse syntax of a unix command line, but who managed to learn well enough how to point and click, drag and drop.
VRML opens the way for an equally massive expansion. This time, the motor is a new class of applications based on virtual social interaction, multi-user games or real-time discussion groups in 3-dimensional online meeting spaces. These applications, which pretty much demolish the desktop metaphor, are poised to turn millions of non-professional consumers (and an increasing number of alert grandparents) into computer users: people who would never have mastered the intricacies of multi-windowed document management, but who have no trouble "walking" down an online street and entering a "chat room" as comfortably familiar as their corner bar.
The second wave was powered by the convergence of new
hardware (the PC with mouse-controlled bitmapped display), a new programming
paradigm (online interaction), and a new user-interface paradigm (direct
object manipulation).
The third wave is likewise taking form through the increasingly effective
integration of three fundamental system novelties:
The aim of VRML is to empower programmers to build a world of interlocking applications which exploit this technological convergence, which has made a new kind of application possible: virtual social environments. The world that is made of such interconnected settings has a name, and that name is perhaps the best one-word label for the incoming third wave: Cyberspace.
The vision of Cyberspace, a place that is nowhere but in our shared experience, was originally conjured by a few lines in William Gibson's Neuromancer, and later spun out in gaudy (and often hilarious) detail in Neal Stephenson's Snow Crash[4]. Imagine it as a full-fledged parallel world, where people in the guise of animated online "avatars" (from a Sanskrit word meaning "incarnation") to get together for work and play, to flirt and fight and find their fortunes.
Potential applications well within the reach of 1996 third-wave technology, and thus almost certain to populate the 1997-98 cyberspace market, include:
While you use such applications, you do not manipulate objects representing documents on your desktop. Instead, you explore and interpret dynamic scenery, sharing your experience with people you meet there. Your body may be seated at a desk, but your mind is somewhere out there on the net, where the other network citizens are. That is what defines an "immersive" interface, not the VR helmet or data glove. And that is why VRML is the fundamental tool for building cyberspace: not because it is new (it isn't, very) but because it is how the engineers and artists of cyberspace are communicating to each other their growing understanding of what it means to live and work in a place we invent together.
In 1983, much of the second wave of PC applications was foreshadowed in Bill Atkinson's LisaDraw. That 130K of compiled P-code, which Atkinson would spend the next year honing down to 11K of ROMable 6800 machine code, defined the heart of what was to become the Macintosh API. QuickDraw, by offering a common platform for interactive graphic applications, became the technical means for achieving the goal of putting computer power in the service of people's personal activities and imagination.
The QuickDraw syntax was decidedly (and in fact, deliberately) old-fashioned, compared with the pioneering object-orientation of Smalltalk, from which many of its central ideas were taken. What mattered were the QuickDraw semantics: the model of computer use it both enabled and embodied. In place of the familiar first-wave picture of the computer as a vault of valuable data, in which applications are ways of providing properly controlled access to that vault, the Mac proposed a picture of a person at a desk with an idea in mind, and the computer as a tool for implementing that idea. System functions for blocking unauthorized data access and keeping users on track through complex sets of forms took a back seat to functions for composing simple images and assembling useful bits of information.
Like QuickDraw, VRML packs its revolutionary content in a conventional wrapper, building on the syntax of well-established graphics programming systems[5]. And like QuickDraw, VRML embodies a geologic shift in worldview. VRML is not a means for describing data and processes (first wave), nor for manipulating onscreen simulations of pen-and-paper (second wave). It is instead a way of describing imaginary places where people can truly meet. It replaces the Mac's picture of individuals empowered by their computers ("the power to be your best") with the image of communities linked by the computers through which their members share what they know and find what they need.
How does a language do all this? Concretely, please . . .
The first answer (sorry!) is that of course it doesn't do anything. Languages don't write applications, well-paid people do. But in the same sense that QuickDraw opened up the whole world of WIMP-based applications by defining a vocabulary in which they could be written, so VRML lays the conceptual foundations for cyberspace applications: virtual social environments.
That foundation is, fittingly enough, three dimensional: geometry, behavior, and sociality. The VRML standard has been planned from the beginning to develop in three stages, one for each of the axes that define this new application space.
VRML 1.0 - Geometry. The first step was to agree on a way to represent 3D objects in 3D space. This was not a new problem: 3D tools have a long history in CAD/CAM. The challenge was to identify and adopt a syntax as a community, rather than as a ploy to corner market share.
A slightly modified version of the Open Inventor syntax developed by Silicon Graphics was chosen. It prescribes the basic use of coordinate systems; the composition of polygons into objects with attributes such as color and material (shiny or dull? transparent or opaque?); the composition of objects into scenes, including objects stored remotely in the network; and the use of alternative objects to provide different levels of detail in different situations (thumbnail viewing or use of alternative display devices). VRML geometry is what we will use to build the trade booths and fair grounds, lecture halls and agency offices, libraries and schools of cyberspace.
VRML 2.0 - Behavior. The second step, taken this March, was to put the static geometry of Version 1.0 into motion. Almost equally important was to prove that VRML 1.0, both the language and the idea of evolving it by a consensus of the user community, was in fact a workable foundation.
The wide support achieved for the "Moving Worlds" proposal, much aided by the diligence of the MW consortium in finding ways to incorporate aspects of competitive proposals into a genuinely group-authored standard, has demonstrated the viability of the community-based model. The definition of a narrow "behavior API" closely integrated with Java[6] successfully extends and strengthens the original VRML 1.0 syntax to achieve the crucial goal of opening VRML models to virtually any sort of application content. VRML behaviors are what will power that rotating logo atop the trade fair, invoke the smile on the robot bank-teller's face, and trace the marks made by the teacher on the cyberspace blackboard.
VRML 2+ - Sociality. The third crucial step toward making VRML an effective application platform is already in preparation, even though the final text of VRML 2.0 has yet to be approved. This is the development of interfaces for specifying multi-user interaction in virtual spaces. The challenge here is to define protocols for tracking and synchronizing the behaviors of both programmed objects and human users interacting in real time on multiple distributed systems. When you open the door in New York, do I see it open in San Francisco? Or more extreme: how do we tell whether my command ship swerved fast enough to avoid your rocket fire?
You can see an early example of how these different facilities will soon come together in PointWorldô, a "virtualization" of the survey of top websites maintained by Point Communications (http://www.pointcom.com/vrml/home.wrl). The categories of the Point catalog (Science, Sports) are represented as buildings grouped around a commons, each building serving as a gathering place for discussion and a jumping-off place for its various sub-categories (Biology, Tennis). Each sub-category is a "town square" unto itself, the buildings around it representing the particular sites which Point has identified as "the top 5% of the Web."
People can explore this enormous interlocked cyberspace
environment (over 200 separate scenes), meeting in the various public places
to share their experiences. Multiple threads of typed "chat"
sessions are supported in each meeting space.
The content of chat sessions can be logged for future reference, and avatars
can exchange personal and business cards to establish a more permanent
contact.
It is easy to see how such interactions might be used to provide online customer support or membership association meetings or travel consultancy or Ö And it is equally clear that such applications based on virtual/social interaction constitute a world of possibilities wholly outside the confines of the personal desktop.
Of course, the third wave is not going to roll in overnight. Such sea-changes can take a decade or more to complete. (On the other hand, if the First Wave lasted 25 years and the Second only 12, does that mean we should expect the Fourth wave to surface by 2002? ) From this perspective, it is not so important how often or how long Microsoft or Netscape or Sun or SGI (or someone else you haven't heard of yet) manages to capture the media limelight. What matters is that the ground rules have changed, and nothing is ever going to be quite the same again.
In closing, we should perhaps note that there are probably almost as many coders working with command-line interfaces today as there were in 1980. Unsurprisingly, they are doing much the same sort of work now as they were then: programming the computational and control systems used for corporate management and industrial production. It's just that now these techies are a tiny minority of the computer-using community. There are 20 times as many people using computers today as there were in 1980, and almost all of that growth is due to applications with "desktop" interfaces.
VRML will not, nor even will whole Third Wave, make all those desktop apps go away. But if 75% of the code produced and/or maintained in 1980 was either in corporate business applications written in COBOL or else in technical/ scientific apps written in Fortran or Ada, and 75% of the code (re-)written in 1995 was from some kind of desktop app written in C or else produced with some tool that generates some variant of C - statistics I just made up, but which are probably not terribly far from the truth - then surely most of the code produced in 2005 will be for some kind of virtual/social app written in VRML/Java or one of their evolutionary descendants.
So it doesn't matter much how well the first VRML-based applications work, or whether they conform exactly to a standard still very much in flux. Nor will it matter who succeeds at delivering the "killer apps" that finally cement Cyberspace as the dominant application platform of next decade. Sooner rather than later, people are going to be using their computers in a radically new way.
- # -
Notes:
Robert Rockwell, Ph.D. is Chief Scientist of blaxxun interactive, the international market leader in cyberspace technology. Bob's work with computer graphics and computer-supported collaborative work dates from 1975, when he published a visionary plan for a geographic data visualization system that could display the social and environmental impact of proposed government policies, and so make them subject to informed public debate. Turning to software engineering in 1980, he co-developed one of the very first CASE toolsets for MIS applications. This led to a 15-year involvement in the design, development and practical deployment of Maestro, the world's first collaborative environment for enterprise-scale software engineering. As Technical Director of the multinational Eureka Software Factory project, and later as Chief Technology Advisor for the Munich-based Softlab GmbH, Bob's many papers and talks on fundamental issues in software development have earned him a wide international audience.