Web Traffic and TV Ratings

First published on FEED, 4/20/1999.

Last week, according to Nielsen, Yahoo was seen by 100,000 more households than the “X-Files.” Yahoo is more popular than “Ally McBeal,” “NYPD Blue,” and “Everybody Loves Raymond” by the same per-week measure. Sometime in the next year, Yahoo will almost certainly become more popular than “Friends,” “Frasier,” and “E.R.,” which is to say more popular than the most popular TV shows going. Big web sites are now as widely seen as any TV series. For years, the arguments about “web as mass media” have been conducted in the future tense, but the web’s ascendancy has to a certain extent already happened, as a handful of sites eclipse popular television shows as the most common media experience in America. For the foreseeable future, only the Super Bowl and the occasional war will propel individual TV programs into prominence over these mega-sites.

Yahoo is not unique in this; the household reach of several of the current portal sites would put them in Nielsen Top 20 as well, and the web population, which currently reaches one household in three, is still growing by at least 25% a year. (TV, needless to say, is saturated.) These figures mean that the average working American will be online by the end of this year, and the average American, period, will be online by the end of next year. People dealing with the web as a media channel have often treated it as a small market, inherently targeted to rich white men, but the vast sprawling network we have no longer matches that description.

Surveying the reach of sites like Yahoo, it’s tempting to conclude that the web has finally become like TV, but nothing could be further from the truth. The web’s remarkable population explosion is only part of the story — the rest of it is explained by the growing fragmentation of the television landscape and the growing centralization of the web. From a certain angle, those Nielsen numbers make it look as if the Yahoos of the web are turning it into something as centralized as TV. But the real story is more complicated — and more interesting — than that.

Mere size doesn’t make the web like TV; even TV isn’t like TV anymore, and it never will be again. Many of our basic assumptions about TV — its bland content, its culturally homogenizing effects, its appeal to the lowest common denominator — have nothing to do with TV as a medium and everything to do with the number of available channels. While the web was growing, TV was fragmenting, undergoing a 10-fold increase in channels the last 20 years. “Gunsmoke,” one of the most popular television series ever, was watched by almost half of the country in its day, while “Seinfeld,” our recently departed popularity heavyweight, was only seen by about a quarter of the country. You could conclude that “Gunsmoke” was twice as good as “Seinfeld” and indulge yourself in some old-fashioned handwringing about how they don’t make ’em like they used to, but in reality “Gunsmoke” vs. “Seinfeld” is apples and oranges. “Gunsmoke”‘s popularity had less to do with its content than with the constriction of the old three-network world.

In the days of three networks, an average show would get a third of the available audience, just for showing up. With only three channels, running a prime time show that would appeal to 10% of the audience would be money-losing, and running a show that only appealed to 1% of that audience would be suicide. From the late ’50s to the late ’80s, the heyday of network TV, anything that got the attention of less than 10 million households was niche, and anything that appealed to a paltry million was un-producable. It was this pressure, and not anything inherent in the medium itself, that led to “lowest common denominator” TV. Locked in a permanent three-way race, the networks would always choose something that 50 million people would watch versus something 5 million people would rave about. In a world with only ABC, NBC, and CBS, size meant more than enthusiasm, day in and day out, for decades.

In these days of cable, satellites, and the beginnings of digital TV, it’s all niche programming now. A show that gets 10 million households — 10 ratings points — is a Top 10 hit, and a show that gets a million has gone from unproducible to solid performer. The miracle of “Seinfeld” was that any show could reach a quarter of the country in the face of this proliferation of choices. “E.R.” the post-“Seinfeld” heavyweight, only reaches 20% of the country, and no show that has launched this season has broken 15%. The handwringing about the end of “Seinfeld” was occasioned in part by the recognition that a show that reached even a quarter of the country at once was the last of a dying breed. Sic transit nihilum mundi.

Even as TV has become more decentralized because of the increase in the number of available channels, the core of the web has become more centralized under the same pressures. The web removes technological bottlenecks, but creates attention bottlenecks — unlike TV, whose universe is so small that it can be chronicled in a single magazine, the web is a vast and unmanageable riot of possibility and disappointment. In this environment, “surfing” as a strategy is dead. With a remote, a reasonably dexterous thumb, and five seconds a channel, a TV viewer can survey the available TV channels in less than five minutes. On the web, assuming that sites loaded instantaneously, five seconds a site would require four months of 24/7 surfing just to see what was out there. Enter the search engines and “portals,” the guides to web content. It’s no accident that the web sites that would rate in Nielsen’s Top 20 are all portals of one sort or another, and this leads to a curious situation: the web, seemingly so decentralized, may actually be more hit driven than TV, if a web “hit” is defined by user attention.

Jakob Nielsen, the web “usability” guru behind useit.com and a principal, with Don Norman, of the NielsenNorman Group, proposes a formula for understanding this enormous range of web-site popularity. Nielsen suggests that traffic to web sites lies on a “Zipf” distribution, whose effects can be understood this way: the 100th most popular web site would get 1/100th of the traffic of the most popular site (Yahoo), and the 2,000,000th most popular web site would see 1/2,000,000th of Yahoo’s traffic, leading to a curve that looks like this: (SEE ATTACHED FILE – ZIPFLINEAR.GIF)

Nielsen describes this pattern as having:

a few elements that score very high (the left tail in the diagram)
a medium number of elements with middle-of-the-road scores (the middle part of the diagram)
a huge number of elements that score very low (the right tail in the diagram)

He likens this distribution of web sites to the distributions of words in the English sentences: a few ubiquitous words (a, and, the), many frequent words (toy, table, run) and a vast collection of rare words (marzipan, cerulean, noninterdenominationally). If Nielsen is right, then the web is more decentralized than TV when considered as a whole, but more centralized than TV in its most popular elements. While the web’s five million sites dwarf the TV universe, a Zipf distribution means that a mere 1% of existing web sites account for 70% of total web traffic.

TV is a fixed sum game — when one TV show’s ratings go up, another’s necessarily go down. On the web, on the other hand, the more small sites there are (the right-hand tail of Nielsen’s diagram), the more need there is for the Yahoos of the world to make sense of it. It is this effect — the left tail grows up as the right tail grows out — which accounts for Yahoo’s powerful reach relative to TV shows. The web still only reaches a third of American households, but it’s better to have half of that third than 15% of the total. Speculating on the financial effects of this niche-oriented universe, Nielsen goes on to say: “[T]he greatest value of the web is narrowcasting of very specific services that people can’t easily get otherwise… My original article on the Zipf distribution predicted that the value of a page view for a huge site would be about a cent, but the actual value these days seem to be close to half a cent, if you look at Yahoo’s latest quarterly report. So I may have over-estimated the value of a page view for the big sites. For the small sites, I estimated a value of a dollar per page view, and that may even turn out to be an under-estimate as we get more business-to-business use of the web going.”

This is where web-TV convergence is really happening — not converging content but converging landscape. Both the web and TV are being divided into three tiers; a handful of huge properties (Yahoo; the Superbowl), a small group of large properties (AltaVista; “Dharma and Greg”), and an enormous group of small properties (EarAllergy.com; “Dr. Quinn”). The TV curve will always be flatter than the web’s, of course — the difference between a hit TV show and an average one could be a factor of 100 (10% of the audience to .1%), while the difference between a web mega-site and someone’s collection of wedding pictures easily exceeds a million-fold — but the trends are similar. As advertisers, content creators and users get used to this changed landscape, the advantage may move from simply being the biggest to being the best loved — a world where it is better to be loved by 50 thousand than to be liked by five million.

In the end, these three tiers will be what drive media strategy. The bottom tier — the millions of sites with very little traffic — will be composed almost entirely of labors of love, or expensive subscription-driven sites with very selective offerings. The middle tier — say, the 1000th to 100,000th most popular sites — will use its closer connection with its users’ interests while banding together into networks, web rings and so on in order to aggregate their reach. The top tier, the Yahoos and Geocities of the world, may be victimized by its own success, managing increasing problems of supply and demand. If the reach of these sites is too vast, it may become hard to support their current advertising rates, in the face of a potential oversupply. The two things these mega- sites have on their side are laziness — it will always be easier for advertisers to write one check — and the possibility that they can become so large that they can segment themselves into internal niches. Yahoo’s strategy may match that of Proctor and Gamble, which makes several brands of detergent so that no matter which public brand you choose, it’s a P&G; product. Yahoo could become both the 800-pound gorilla and the scrappy underdog (think GM’s Saturn car division, or ATT’s “Lucky Dog” phone service) by running both the centralized portal and as many of the niche sites as they can.

The people preaching traditional ideas of convergence between the web and TV made a fundamental miscalculation — betting on a stable TV landscape, and on the premise that when the web got that big it would be like TV too — when the reality is much more fluid. The web is not a mass medium, and it never will be, but neither is TV anymore. Both mediums reach large numbers of people, but now they reach them in self-selecting groups, not as part of a largely undifferentiated lump of “America” the way “Gunsmoke” or even “Seinfeld” did. In the end, the 40-year reign of the Big Three networks may have been an unusual island of stability in an ordinarily chaotic media universe. We will always have massive media, but the days of mass media are over, killed by the explosion of possibility and torn into a thousand niches.

Free PC Business Models

3/5/1999

“Get a free PC if you fit our demographic profile!” “Get a free PC if you subscribe
to our ISP for 3 years!” “Get a free PC if you spend $100 a month in our online store!”

Suddenly free PCs are everywhere — three offers for free PCs in the last month alone, and more on the way. Is this a gimmick or a con game? Has the hardware industry finally decided to emulate online businesses by having negative revenues? More importantly, is this the step that will lead to universal network access? When PCs and network access are free, what’s to stop everyone from participating in the digital revolution? Could it be that the long-lamented gap between the info-haves and the info-have-nots is soon to be eliminated by these ambitious free PC schemes?

The three offers rolled out last month — from the start-up free-pc.com, the ISP
empire.net, and the online mall shopss.com respectively — are actually the opening salvo of the biggest change in the computer industry since the introduction of the PC in the late 70’s. The free PC marks the end of the transition from PCs as standalone boxes to PCs as network-connected computers, and from PC as product to PC as service. But however revolutionary the underlying business model may be, it is unlikely to change the internet from a limited to a mass medium, at least for the coming years. To understand why, though, you need to understand the underlying economics of the free PC.

We’ve gotten used to cheaper and cheaper computers over the years, but this is different. Free isn’t even the same kind of thing as cheap – a $399 computer is cheaper than a $999 computer, but a free computer isn’t just cheaper still, it’s a different kind of computer altogether. $999 computers and $399 computers are both products; a free computer is a service.

To see why this transition from computer as product to computer as service is a necessary condition for a free PC, consider the forces making the free PC possible in the first place. The first is cost, of course: PC prices have been falling for years, and the recent fall over the last three years from $999 to $399 has been especially precipitous.

A $399 PC is still not free however, and no matter how far prices fall, they will never
fall to zero, so the second part of the equation is cost savings. A $399 PC is cheap
enough that companies can give them away and write off the cost, if they can make back the money elsewhere. A free PC is really a loan on expected future revenues, revenues derived from customer attention of one sort or another.

ABC’s TV slogan, “Hello? It’s free” isn’t quite right. You may not be paying ABC money
when you watch “Nightline,” but you’re still paying attention, and they sell that
attention to their advertisers. TV, radio and a variety of other media have figured out
a way to distribute free programming and profit from consumers’ attention. The low price of computers and their growing use as media outlets and not just as fancy typewriters now brings them into this realm as well. Companies can absorb the cost of giving away hardware if they can profit from getting you to pay attention.

To see how a company might do this, consider these three bits of marketing jargon –
“Customer Acquisition Cost,” “Customer Retention,” and “Lifetime Value of a Customer.” Each of these is a possible source for making back that $399, and in fact, each of the current free PC uses one or more of these sources to underwrite their offering.

Customer Acquisition Cost is simply the marketing budget divided by the number of new customers. If I spend a million dollars in advertising and get 2000 new customers, then my Customer Acquisition Cost is $500 per customer. If, by giving away a $399 PC I can cut my other customer acquisition costs to $100, I come out a dollar ahead per customer, even though I’ve given away hardware to get there. This is the model free-pc.com is following, where they are acquiring an audience cheaply as a first step towards selling that audience’s attention to their advertisers.

Customer Retention is a way of expressing the difficulty of keeping a customer once you get them. Telephone companies, for example, are especially vulnerable to this — customers switch long distance services all the time. If I can give away a $399 PC and keep a customer longer, I make the money back by increasing customer retention. (This is the rationale behind the “free cell phone” as well.) The New England ISP empire.net is following this model — in return for your computer, they have you as a customer for 3 years — guaranteed retention.

Lifetime Value of a Customer is a way of thinking about repeat business — if the average customer at a grocery store spends a hundred dollars a month and lives in the neighborhood for 5 years, then the lifetime value of the average customer is $6000. If a company can give away a $399 PC in order to raise the recipient’s lifetime value, they can absorb the initial cost and make it back over time. This is the model shopss.com is following, where you get a free iMac in return for agreeing to spend $100 a month at their online store for three years.

It’s worth pointing out that all three models depend on one critical element, without
which none of them would work: the Internet. Every one of these plans starts with the assumption that an Internet connection for these PCs is a basic feature, not merely an option. This is is the final step, the thing that turns the computer from product to service. Without the Internet, there is no way to stay connected to your users. Every business model for the free PC treats it as an up-front loan that the user will pay back over time. This requires that a computer be a connected media outlet, not an isolated box, and the Internet is the thing that connects computers together.

A few years ago, engineers at Sun and Oracle began talking about creating an NC — a
“network computer” — but while they’ve been talking, the Internet has been quietly
turning all PCs into NCs, without needing any change to the hardware at all. Everyone giving away free PCs (and there will be more, many more, following this model over the next few months) has recognized that the real PC revolution is not in hardware but use. PCs’ main function has slowly but decisively passed from standalone computing to network connectivity over the 20 years of its life. We’ve already seen that transformation alter the business models of the software world — the free PC movement gives us our first glimpse of how it might transform hardware as well.

If personal computers are now primarily devices of connection rather than computation, this raises the larger question of access. There is a technotopian dream of universal access floating around, where the Internet connects every man, woman and child together in what John Perry Barlow memorably called “the re-wiring of human conciousness.” For years now, old-style progressives have been arguing that we need public-sector investment to make the digital revolution more democratic, while free-market devotees have contended that Moore’s law alone would take care of widening the wired world. Is the free PC the development that will finally lead us into this promised land of universal connectivity?

No.

There’s no such thing as a free lunch. The free PC is not a free product, but a short-term loan in return for your use of a service. The free PC, in all its incarnations, is really a “marketing supported PC” (a more accurate albeit less catchy description). Its cost is supported by your value as a consumer of marketing, or of products bought online. The inverse is also true: people who do not have enough value as consumers won’t get free PCs. (Imagine answering one of those ads for a free cell phone, and telling the phone company that you wanted them to send you the phone itself, but you didn’t want to subscribe to their service.)

For the whole short history of the commercial Internet (1991-present), it has been an
inverted medium, with more representation among higher income brackets. This means that for a marketing supported medium, the most valuable clients for a free PC are, paradoxically, people who already own a PC. Indeed, free-pc.com makes this assumption when they ask the prospective recipient of a free PC how many computers they already own. Access to the Internet is still growing rapidly, but it is growing in stages — first it was populated by computer scientists, then academics, then “early adopters,” and so on. The free PC doesn’t change the Internet’s tendency to expand in phases, it’s just the next phase. The free PC will extend the reach of the Internet, but it will start by reaching the people who are the closest to getting there already, and only expand beyond that audience over time.

The free PC isn’t charity, but it also isn’t a temporary marketing gimmick. It is simply
the meeting of two long-term trends — falling hardware costs and the rising value of
connecting a customer to the Internet. In retrospect, it was inevitable that at some
point those two figures would cross — that the Internet would become valuable enough, and PCs cheap enough, that the the PC could become like a cell phone, a dangle to get people to subscribe to a service. The number of people who can afford to connect to the Internet will continue to rise, not instantly but inexorably, as the value of the Internet itself rises, and the cost of hardware continues to fall. 1999 will be remembered as the year in which this shift from computer as product to computer as service began.

The Interest Horizons and the Limits of Software Love

Commercial software has its limits, and it runs into them regularly. Any commercial developer has a “resource horizon” – some upper boundary of money or programmer time which limits how much can be done on any given project. Projects which lie over this horizon either can’t be accomplished (very few companies could write a new operating system from scratch), or, once started, can’t be completed because of their size or scope (as with the Denver Airport baggage handling system).

Open Source software has no such resource horizon – programmers creating Open Source software do it because they’re interested in it, not because they’re paid to do it. Furthermore, since there’s no requirement to keep the source code secret, a much larger of number of programmers can work on any given project, and they don’t have to work for the same company, or even live in the same country.

However, the lack of this resource horizon does not mean that Open Source software has no limits, it just means that the limits aren’t financial. Commercial companies make software for money, so money is the limiting factor. Open Source developers make software for the love of the thing, so love becomes the limiting factor as well. Unloved software can’t be built using Open Source methods.

Open Source software trades the resource horizon for an interest horizon, the horizon over which a problem simply isn’t interesting enough to attract a group of developers who burn to spend their Friday nights wrestling with, say, meter-reading software for a natural gas pipeline. Consider, from the seminal description of the Open Source process contained in “The Cathedral and the Bazaar” , how many of the principles assume that programmers find problems, rather than vice-versa:

Every good work of software starts by scratching a developer’s personal itch.

If you have the right attitude, interesting problems will find you.

Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.

To solve an interesting problem, start by finding a problem that is interesting to you.

Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.

This is geek nirvana, where interest and innovation have more weight than profit or productivity. Because the articulation of these principles is so new (though the way of working is at least as old as the Internet itself), and because the acheivements of Linux, Apache et al. are so unprecedented, Open Source currently has an aura of unstoppability, a sense that “Maybe Open Source will take over everything!”

It won’t. Wherever Open Source is a good way of working, it is more effective than closed source, for the same reason that open markets are more effective than central planning. The very principles of personal interest outlined above, however, indicate where Open Source isn’t a good way of working in the first place.

Consider the converse of those principles: what if you have a problem that doesn’t scratch some core developer’s personal itch?

“I stayed up all weekend rewriting this awesome time-sheet processing system!” or where innovative solutions aren’t an option in an existing system? “We could make the package much simpler if we just bill them every year instead of every month.”

or where you can’t have a large enough group of beta testers?

“Know anybody who owns a plane? I need to beta-test my air traffic control program.”

These kinds of problems lie beyond the interest horizon, and their numbers are legion. 

Existing software which is old or broken but has to be updated or fixed won’t clear the “interesting problem” hurdle. Boring software won’t acquire enough beta testers. Projects which require treating the user like an idiot (an oxymoron in the Open Source world, since scratching a personal itch turns the lead developer into User #1) won’t attract enough developers to take off. The overlapping categories of old, broken, boring and disdainful of the user’s intelligence currently describe a majority of the world’s software, an installed base that isn’t going away any time soon.

Given this interest horizon, what Open Source can do is create a market for software as service rather than as product. One way to get people to do things they wouldn’t do for love is to pay them. Who wants to sit at a desk all day, shuffle paper and answer phones as a hobby? Throw in $25 Gs and health insurance to sweeten the deal, though, and the answer is “A lot of people”. The same will be true of the interest horizon. There will never be an Open Source billing system for a water utility, but there will be Open Source accounting and report-generating packages which provide about 80% of the functionality, meaning that the water works only needs to do pay for the last 20% of the work, not all of it.

30 years ago, every IT department in this country was in the business of building custom products, and the software industry grew up around that assumption. Everyone solved their own problems in-house, leading to vast duplication of effort as thousands of nearly identical record keeping systems, billing systems and databases were created from scratch, over and over again.

15 years ago the rise of high-quality shrink-wrapped software began to change that, where people could buy products which had some core set of functionality which they could extend. Problems were no longer solved from scratch, but a huge pile of money still went to pay for the identical core functionality within each business.

Now, Open Source suggests an almost pure service model, where the basic functionality costs nothing, and all the money is in customization. Imagine an economy where the basic tools and serivces are free: in this world, once a company it knew what it wanted to build, it could put the basic software functionality in place for free and then either hire or outsource the talent to do whatever customizations were necessary.

This economy exists today, on the Web. Even a simple web site is a complicated piece of software, yet millions of individuals and small companies run Web sites, because the basic functionality of the Web server doesn’t need to be recreated from scratch every time. More surprising still, the Web does this so well that we hardly give it a moment’s thought.

Yet consider how far Open Source has gone to make this possible. In the 80’s, CompuServe, Prodigy and AOL all had the same rough set of goals and features, yet each of them had to build, from scratch, a data network, a set of interactive applications, and a software interface. It would have benefitted each of them enormously if they could have inherited basic functions, and then concentrated on their particular strengths, but there was no way in those days to do anything of the sort.

Now consider Yahoo, Geocities and Hotmail. All three use the same Open Source operating system (FreeBSD) and the same Open Source Web server (Apache), which means that their programmers and designers have been free to focus on making Yahoo be Yahoo, Geocities be Geocities, and Hotmail Hotmail – customization from the jump. From the same core of free functionality – net-connected operating system, web server, html interface, interactive scripts – we get three different sites, with three different interfaces, functions, business models, and audiences, yet each company spent much less money and energy, for much more gain, than the online services of old.

This is the future of Open Source. As the edges of the interest horizon become clear, the market for products will shrink and the market for customization will grow: Expect the Computer Associates of the world to begin training their employees in the use and customization of Open Source products. With Open Source software putting core set of functions in place, software companies will become more like consulting firms and consulting firms will become more like software companies, not duplicating the same basic functions over and over, but concentrating their efforts on the the work that lies over the interest horizon.

Social Computing in Student Populations

Shortly after I sold my company (I was the Chief Technology Officer of a Web design firm in Manhattan’s Silicon Alley), Hunter College hired me to teach classes in Web design and uses of the Internet. One of the first things I did while setting up my lab was to drag an old computer into the hall outside my office, connect it to the Internet, and give students unfettered access to it. My thought was to bring the students into the present — little did I know that they would show me the future. 

For a few years now, there has been a deathwatch for the personal computer. It is an article of faith in much of my industry that every 15 years or so sees a major shift in computing hardware, and since the PC supplanted the mainframe in the early 80s, it’s time, or so the thinking goes, for the PC in turn to give way to the “Next Big Thing”, as these shifts are sometimes jokingly called. 

That shift is happening today — I can see it in the way my students are using the computer outside my office door — but unlike the previous revolution, this change is not about hardware but about patterns of use. The age of the personal computer is ending because computers are no longer personal, they’re social. My students are using the Web not just as a research tool but as a way to communicate with one another and to organize their lives. Web-based email, from companies like Hotmail and Yahoo, forms the center of their computer use; they use it for everything from communicating with professors to keeping in touch with family overseas to organizing forays to the pizza parlor. 

Furthermore, they’re not just using computers to run their social lives; they’ve begun to treat computers themselves as social objects, like phones. If you need to check your voice mail, it doesn’t matter to you what phone you use; any phone with an outside line is the same as any other. Even if its someone else’s phone, and they’ve programmed the speed dialer to suit themselves, you can still use it to get to your messages. In the same way, any computer with an “outside line” to the Internet is as good as any other for checking email, even if someone else owns that computer and they’ve got their own programs on the hard drive. From my students’ point of view, a computer is merely a way to get access to their stuff (email, web syllabi, online research, et al.) rather than being a place to store their stuff. Hotmail wins over Eudora because with web-based email, they can get their mail from any computer they happen to be at, whether they own it or not. 

This seemingly minor change has major ramifications for academic uses of computers. If a computer is for access to a network and not for storage or local computation, then the definition of a “good” computer changes. Any computer connected to the Internet is as good as any other computer connected to the Internet, and any computer not connected to the Internet is no good at all. Furthermore, the impact on student use is enormous. If computers are social objects like phones are, then any computer is their computer as long as their hands are on the keyboard. This is the real demise of the “personal” computer – many of my students don’t have their own computers, but that doesn’t stop them from running their lives via email. 

This isn’t just a question of affordability – the PC is coming unglued in many academic environments. An affluent student who has more than one computer has given up on the idea of the “personal” computer just as surely as the student who decides not to buy a computer at all. A student on a wired campus, with computers in the classroom and the dorm room, sooner or later realizes that it is easier to save their work on the network or email it to themselves than to carry disks or even laptops back and forth. Even faculty, usually the people with the most computing power on their desks, are seeing Web-accessible research and email discussion lists become as much a part of their academic work as the data stored on their hard drive. 

The personal has been taken out of the personal computer because the Internet has transformed computing into a social activity. With email from Hotmail, a free home page from Geocities, a personalized news page from my.yahoo, there is no need to own your own computer, lug a laptop from place to place, or pay $20 a month for Internet access. Computing is where you find it — campus labs, work, an Internet cafe — and the guts of any individual computer become unimportant. The old Macintosh vs. Windows debate is meaningless if they both run Netscape, since social computing turns the browser into the operating system and the Internet into the hard drive. 

Looking at my students instinctive sense of network use, I’ve boiled the elements of social computing down into three basic principles: Hardware is Boring. 

Who cares what kind of computer you have? The old concerns of the PC era – which operating system, what CPU speed, how much RAM – have been replaced by the concerns of connection – dial-up or ethernet, which connect speed, what browser version. If all hardware can connect, each individual piece is less important. 

Imagine that your institution plans to upgrade your computer, but that you have to choose: you can have either double the speed of your CPU, or double the speed of your Internet connection. Which would you choose? 

Computers are for Finding, not Keeping. 

Finding new information is more important than storing old information. A computer with a CD-ROM drive only becomes more valuable when you spend the time and money to buy a new CD, while a computer with network access becomes more valuable every time someone creates a new web site, which happens several times a day, for free. Computers used for keeping information lose value over time, as the information on them goes out of date. Computers used for finding information increase in value over time, as the breadth and depth of the accessible information increases with no additional investment. 

Imagine another choice: your institution will pay to quadruple the size of your hard drive, so you can store more stuff locally, or pay for you to get access to the online archives of the New York Times, the Wall Street Journal and the Encyclopedia Brittanica. Which would you choose? 

Information Leaks Out of its Containers. 

Information can no longer be trapped in objects. Multi-media is leaking out of CD-ROMs and into Web sites, music is leaking out of CDs and into Internet radio, text is leaking out of books and into online databases. At first, online academic materials were simply additions to existing research infrastructure, but they are starting to replace, rather than augment, traditional methods: MIT’s Sloan School of Business now only accepts electronic applications, and 1998 is the last year that Encyclopedia Brittanica will publish a paper edition. 

A third choice: imagine that your next computer can have either a CD-ROM drive or a connection to the Internet, but not both. Which would you choose? 

You may not face choices as stark as the ones outlined above, but your students do. Lacking an office, living on a budget, possibly balancing work and school, they will gravitate towards social computing wherever possible. Why spend money if they don’t have to? Why pay for a fast CPU if they have a slow modem, why pay for a large disk drive if TIME magazine stores all their articles online, why pay for a CD-ROM if the same material exists on the Web? 

The changes in a campus are which embraces social computing are far-reaching. Computers become less a product than a service, less an occasional and expensive purchase like office furniture, and more a steady stream of small purchases, like office supplies. PCs wither and networks bloom, and value is created by access instead of ownership. Anyone who has done the math for a ‘one computer per student’ policy sees millions of dollars tied up in machines that are unused most of the day, and that’s when the student body is affluent enough to afford such a requirement. For a student body already straining to meet tuition, the idea of personal computing is an absurdity, but social computing is not. 

If hardware is boring, then homogeneity of computing resources becomes unimportant. With the browser as the interface and the Internet as the hard drive, the differences between a 486 running Linux and a Pentium II running Windows 98 shrink in importance, and instead of a massive overhaul of computer labs every 3-5 years, it becomes possible to replace 20% of the machines annually. This takes advantage of continually rising quality and falling cost, raises the quality of the average machine every year, eliminates the problem of wheezing equipment at the tail end of a “complete replacement” cycle, and frees up low-end machines for use as hallway terminals or print servers as a side-effect. 

If computers are for finding instead of keeping, then then the role of the librarian changes drastically. With a computer as a finding tool, every library suddenly acquires a rapidly expanding global collection. Librarians will be increasingly freed from the part of their job that turns them into literate janitors, constantly reshelving paperback copies of The Iliad, while returning to their roles as taxonomists and sleuths, guiding students to useful resources and teaching them how to separate the good from the mediocre. 

If information leaks out of objects, then every professor becomes a publisher, and the separation between the classroom lecture and the textbook begins to fade. “Handouts” handed out over the web spare faculty the trip to the copy center (and the attendant cost), online syllabi don’t get out of date because the URL always points to the most recent copy, and one semester’s preparation means less editing to make it ready for future classes. An entire textbook can be built up online, one lecture at a time, and tested in the real world before it is published, rather than after. 

For us as members of the faculty, staff and administration of colleges and universities, the ramifications of the rise in social computing are clear. The amount of money and effort it takes for a “One personal computer per student” program puts it out of the reach of many institutions and many student bodies even as access to the Internet is becoming increasingly critical for both academic work and social life on college campuses. The rise in socal computing suggests a way to bridge that gap, by providing the advantages of access without the overhead of ownership. 

Our students are gravitating towards the Internet, using it in ways that aren’t intuitive for those of us still using personal computers. They will tend to prefer connectivity over storage and accessibility over raw processing power. If we aren’t sensitive to their preference for cheaper computers out where they can use them rather than expensive computers under lock and key, we will end up misallocating precious resources in ways that aren’t in our students best interests, or, ultimately, in our own.

Short Takes on Linux

Microsoft Is Not a Bad Company

Microsoft is not a bad company. Their problem is not systemic but situational – the same programmers with the same marching orders would focus on producing lightweight and useful code, as long as they weren’t working for a monopoly. It is Microsoft’s leverage from its desktop monopoly which makes them behave the way they do, not any inherent evil.
Microsoft, as a for-profit company, has one goal: make pots of money. The only way their current attempts to de-commoditize standards would help them do that was if they had a monopoly share of the market they were trying to affect. The same de-commoditizing behavior from a company which was competing for market share would lose them pots of money instead.

It is not necessary to “crush” Microsoft, it is merely necessary to get them to drop ‘Embrace and Extinguish’ in favor of actually advancing the state of the art. Linux is obviously Exhibit A, but Linux doesn’t have to get 50% desktop market share to defeat Microsoft, it merely needs to get a 15% market share to defeat Microsoft’s monopoly.

With a credible alternative taking as little as an eighth of the market share, Microsoft will no longer own the desktop. And as with IBM, once Microsoft no longer owns the space, they will undergo a painful retrenchment, and then emerge as a force for innovation instead of strangulation.

NT Competes with Linux, but Linux Does Not Compete with NT

Given the Bazaar model of development fostered by Open Source, Linux will always be under development. Accepting that is part of the cultural change necessary to work with OSS, even as an end user. There is a sense in some parts of the Open Source community that the current attention Linux is getting means that this is its chance to change the world, and that if it fails to do so quickly, there will be no second chance.
As long as programmers continue to improve it, Linux will have all the second chances in the world. The for-profit model needs end users for the positive externalities of network reinforcement (you use what other people at your job use, so its easy to find help, advice, etc.) and cash flow to pay programmers. OSS is a DIY model, which means that it can continue to advance without having a single “end user”.

The Linux market share issue is a tricky one – NT is competing with Linux, but Linux is not competing with NT. If a casual user switches from NT to Linux, MS loses cash flow, mind share, and the illusion of inevitability. If the same user switches from Linux to NT, it affects Linux’s development not at all.

Free Software Creates New Value

Thinking about the recent conversations about Linux ‘market share’, it occurred to me that some of us may be making the same mistake (self included) that Thomas Watson made when he predicted a worldwide market for 5 computers, or when Ken Olsen said there would be no market for computers in the home, i.e. assuming that the future will be much like the present.
Looking at Linux vs. NT in terms of present market share hides that group of people for whom the choice is not Linux vs. NT but Linux vs. nothing. Linux users don’t just come from the ranks of people who would otherswise use NT or Win9[58] — for people who only have access to 386 or 486 computers, and can’t afford anything new, Linux offers them the only possibility for running a modern OS, both because it runs well on minimal hardware and because it is free.

Watching large corporations dance around the idea of running Linux is interesting, but to switch to Linux from NT always involves some short term cost that raises the barrier to such a move. The real change in computing ecology could come from another quarter altogether – that group of people who either haven’t owned computers in the past, or who have had computers which have not been able to run web servers et al. Linux’s biggest growth in market share may come from places inaccessible to for-profit companies at all.

To Use Linux Without Criticizing It Is To Betray It

The greatest strength of Linux is the relentless, targetted criticism of its users. It is that, and not any largesse from a corporation which brings about improvement in the code. When the MS faithful lob ‘linux sux!!!1!” stink bombs into the Linux community, the natural reaction is to circle the wagons and praise Linux to the stars.
The Microsoft folks are right in many particulars, however: for desktop users, Linux is currently poorly documented and intimidating to intall. To let their hostility blind us to that fact robs us of our greatest strength – our ability not merely to criticize Linux, but, since we have the source before us and they do not, to criticize and improve Linux. This is not about two operating systems at this particular snapshot in their respective developments, this is about the long haul, and Linux gets better faster than any MS product ever has.

To use Linux without criticizing it is to betray it.

View Source… Lessons from the Web’s Massively Parallel Development

First published April 1998.

How did Web grow so quickly?

In the 36 months from January of 1993 to December of 1995, HTML went from being an unknown protocol to being to being the pre-eminent tool for designing electronic interfaces, decisively displacing almost all challengers and upstaging online services, CD-ROMs, and a dozen expensive and abortive experiments with interactive TV, and it did this while having no coordinated center, no central R&D effort, and no discernible financial incentive for the majority of its initial participants.

Ragtag though it was, the early Web, with its endless compendia of ‘Cool Bands’, badly scanned photos of pets, and ubiquitous “Favorite Links” lists pointing to more of same, was a world-building excercise which provided an unequalled hothouse lab for structuring information and designing interfaces. By the time the corporate players and media companies considered getting involved, many of the basic interface issues – the idea of Home pages, buttons and toolbars, the standards for placement of things like logos, navigational elements, help menus and the like had already been worked out within a vast body of general practice generated by the pioneers.

More than any other factor, this ability to allow ordinary users to build their own Web sites, without requiring that they be software developers or even particularly savvy software users, caused its rapid rise. Web design, and in particular Web site design with its emphasis on architecture, interactivity, and structuring data in an implicit order or set of orders, is not graphic design but rather constitutes a special kind of low-level engineering. Prior to the invention of HTML, all software packages which implemented any sort of hypertext required the user to learn a programming language of some sort (Director, Hypercard). HTML, in contrast, allows users to create links without requiring an ablity to write code.

INTERFACE ENGINEERING

Call HTML’s practitioners interface designers, information architects or, in keeping with the idea of world-building, even citizen-engineers, these are people who can think creatively about information as media, without necessarily being comfortable looking down the business end of a compiler. This becomes Principle 0 for this essay:

#0. Web site design is a task related to, but not the same as, software engineering.

Any project which offers a limitless variety of ways in which information can be presented and stuctured can happen both faster and better if there is a way for designers and engineers to collaborate without requiring either group to fundamentally alter their way looking at the world. While it can’t hurt to have a designer see source code or a developer open a copy of Photoshop once in a while, environments which let each group concentrate on their strengths grow more rapidly than environments which burden designers with engineering concerns or force their engineers to design an interface whenever they want to alter an engine. The Web exploded in the space of a few years in part because it effected this separation of functions so decisively.

As opposed to software which seeks a tight integration between creation, file format, and display (e.g. Excel, Lotus Notes), HTML specifies nothing about the tools needed for its creation, validation, storage, delivery, interpretation, or display. By minimizing the part of the interface that is the browser to a handful of commands for navigating the Web, while maximizing the part of the interface that is in the browser (the HTML files themselves), the earliest experiments with the Web took most of the interface out of the browser code and put it in the hands of any user who could learn HTML’s almost babyish syntax.

With Web design separated from the browser that was displaying it, countless alternative ways of structuring a site could be experimented with – sites for online newspapers, banks, stores, magazines, interfaces for commerce, document delivery, display, propaganda, art – all without requiring that the designers arrange their efforts with the browser engineers or even with one another.

This separation of interface and engineering puts site design in a fundamentally new relationship to the software that displays it:

#1. An interface can be integrated with the information it is displaying, instead of with the display software itself.

This transfer of the interface from ‘something that resides in the software and is applied to the data’ to ‘something that resides in the data and is applied to the software’ is the single most important innovation of the early Web.

REDUCING REQUIRED COORDINATION

Site designers with training in visual or conceptual aspects of organizing and presenting information can design for a Web browser without working with, or even needing to talk to, the people who designed the browser itself. Newsweek has to coordinate with America Online in order to make its content available through AOL, but it does not have to coordinate with Netscape (or the end-user’s ISP) to make its content available through Netscape.

This move away from centralized coordination and towards lateral development is good for the Web, and that some basic principles about the ways this is acheived can be derived from looking at the HTML/Browser split as one instance of a general class of “good” tools. The basic rule of good tools is:

#2. Good tools are transparent.

Web design is a conversation of sorts between designers, with the Web sites themselves standing in for proposal and response. Every page launched carries an attached message from its designer which reads “I think this is a pretty good way to design a Web page”, and every designer reacting to that will be able to respond with their own work. This is true of all design efforts – cars, magazines, coffee pots, but on the Web, this conversation is a riot, swift and wide ranging.

THE CENTRALITY OF OPEN HTML SOURCE TO THE WEB’S SUCCESS

The single factor most responsible for this riot of experimentation is transparency – the ability of any user to render into source code the choices made by any other designer. Once someone has worked out some design challenge, anyone else should be able to adopt, modify it, and make that modified version available, and so on.

Consider how effortless it would have been for Tim Berners-Lee or Marc Andreeson to treat the browser’s “View Source…” as a kind of debugging option which could have been disabled in any public release of their respective browsers, and imagine how much such a ‘hidden source’ choice would have hampered this feedback loop between designers. Instead, with this unprecedented transparency of the HTML itself, we got an enormous increase in the speed of design development. When faced with a Web page whose layout or technique seems particularly worth emulating or even copying outright, the question “How did they do that?” can be answered in seconds. 

“X DOES Y”, NOT “X IS FOR Y”

This ability to coordinate laterally, for designers to look at one anothers work and to experiment with it without asking permission from a central committee, is critical to creating this speed of innovation. Once the tools for creating Web pages are in a designers hand, there is no further certification, standardization or permission required. Put another way:

#3. Good tools tell you what they do, not what they’re for.

Good, general-purpose tools specify a series of causes and effects, nothing more. This is another part of what allowed the Web to grow so quickly. When a piece of software specifies a series of causes and effects without specifying semantic values (gravity makes things fall to the ground, but gravity is not for keeping apples stuck to the earth’s surface, or for anything else for that matter), it maximises the pace of innovation, because it minimizes the degree to which an effect has to be planned in advance for it to be useful.

The best example of this was the introduction of tables, first supported in Netscape 1.1. Tables were originally imagined to be just that – a tool for presenting tabular data. Their subsequent adoption by the user community as the basic method for page layout did not have to be explicit in the design of either HTML or the browser, because once its use was discovered and embraced, it no longer mattered what tables were originally for, since they specified causes and effects that made them perfectly suitable in their new surroundings.

A corollary to rule #3 is:

#3b. Good tools allow users to do stupid things.

A good tool, a tool which maximizes the possibilities for unexpected innovation from unknown quarters, has to allow the creation of everything from brilliant innovation through workmanlike normalcy all the way through hideous dreck. Tools which try to prevent users from making mistakes enter into a tar pit, because this requires that in addition to cause and effect, a tool has to be burdened with a second, heuristic sense of ‘right’ and ‘wrong’. In the short run, average quality can be raised if a tool intervenes to prevent legal but inefficent uses, but in the long haul, that strategy ultimately hampers development by not letting users learn from their mistakes.

THE INDEPENDENT RATE OF DEVLOPMENT

The browser/HTML combination as described not only increases the number of people who can work on different functions by reducing the amount of cross-training and coordination needed between designers and engineers (or between any two designers), it also changes the speed at which things happen by letting designers develop different parts of the system at independant rates.

By separating Web site design so completely from browser engineering, the rate of development of Web sites became many times faster than the rate of browser-engineering or protocol design.

Reflecting on these extremes is instructive, considered in light of the traditional software release schedule, which has alterations to engineering and interface change appearing together, in relatively infrequent versions. In the heat of structuring a site, a Web design team may have several people altering and re-examining an interface every few minutes. At the opposite extreme, in the three years from 1993 to 1995, the http protocol was not changed once, and in fact, even in 1998, the majority of Web transactions still use http 1.0. In between these extremes come rates of change from more to less rapid: changes in site structure (the relation between file storage and pointers), new versions of Web browsers, and new specifications for HTML itself. Designers could create, display, alter, beg, borrow, and steal interfaces, as fast as they liked, without any further input from any other source.

CONCLUSION

The Web grew as quickly as it did because the independent rate of site design, freed from the dictates of browser engineering, was much faster than even its inventors had predicted. Tools that allowed designers to do anything that rendered properly, that allowed for lateral conversations through the transparency of the HTML source, and removed the need for either compiling the results or seeking permission, certifcation or registration from anyone else led to the largest example of parallel development seen to date, and the results have been world-changing.

Furthermore, while there were certainly aspects of that revolution which will not be easily repeated, there are several current areas of inquiry – multi-player games (e.g. Half Life, Unreal), shared 3D worlds (VRML, Chrome), new tagset proposals (XML, SMIL), new interfaces (PilotOS, Linux), which will benefit from examination in light of the remarkable success of the Web. Any project with an interface likely to be of interst to end users (create your own avatar, create your own desktop) can happen both faster and better if these principles are applied.

Playfulness in 3-D Spaces

First published in ACM, 03/98.

“Put the trodes on and [you] were out there, all the data in the world stacked up like a big neon city, so you could cruise around and have a kind of grip on it, visually anyway, because if you didn’t, it was too complicated, trying to find your way to a particular piece of data you needed.” 

Every six months or so, I find a reason to survey the state of VRML (Virtual Reality Modeling Language; more info at http://www.vrml.org/) and 3-D ‘shared worlds.’ I started these semi-annual forays in 1994, while researching a book, “Voices From the Net” (Ziff-Davis, 1994) , about online communities. In that book, I concluded that the classic model of cyberspace, quoted above from William Gibson’s “Mona Lisa Overdrive”, was not possible in this century (a bit of a grandiose cheat, since the century amounted to but a half-dozen years by that time), if at all. 

Woe betide the prognosticator who puts a far-off date on computer revolutions — as the visual components of networking grew by leaps and bounds, it looked like my predictions might be off the mark. I kept hearing that VRML was at the edge of usability, and every now and again would go exploring to see for myself. The improvements from year to year were impressive, although they were due in part to the rising tide of clock speed, which lifts all the boats. However, they never seemed any closer to being something that someone would use for anything other than a “Now, instead of just looking up the info you want, you can actually fly through your company’s parts catalog!” trade show demo. It was always better than last time, but never enough of a jump to actually be, in Alan Kay’s famous words, “good enough to criticize.” 

The Streets of San Francisco

VRML applications are the videophones of the Net — something that is possible in theory, but which excites designers far more than it excites potential users. At one point, the height of VRML applications was a 3-D Yellow Pages for San Francisco, the one town whose 3-D shape was uniquely ill-suited to such an already questionable endeavor (“Now, instead of simply looking up your dry cleaner’s phone number, you can search for it over hill and dale!”). Thus, I concluded, my Nostradamus-like powers were in no danger of being upended by unkind reality. Any real example of 3-D space that could be shared by multiple users and didn’t involve an unacceptable trade-off between appearance and speed, any 3-D space that had any sort of visceral effect on the user, was still years away. 

There was only one problem with that conclusion: I was wrong. 

I have now found what I was looking for, and found it, to my chagrin, years late. A networked 3-D engine with excellent shared space capabilities, open source code, a well-published world-building specification, an active development community, and a project showing the kind of rapid improvement year after year that comes from the best massively parallel design efforts, such as the Web. 

It is called Quake. 

I know, I know. As they say on Usenet, “Quake? That’s so 5 minutes ago!” 

Quake (http://www.idsoftware.com), for those of you like me who don’t follow the PC gaming world, is a “First Person Action” game, meaning roughly that the screen is your view of the world, and that you pilot your digital self, or “avatar,” through that world by maneuvering through what you see on the screen. I missed out on Quake when it was launched in the mid-’90s because as a general all-around Serious Person, I don’t play games, in particular games whose ideal customer is less than half my age. I have now seen the error of my ways. Quake solves the shared 3-D space problem far better than any VRML implementation — not despite being a game, but because it is a game. 

The Quake 3-D engine is for something, while VRML is a technology in search of a use. The Quake engine’s original use is immaterial; once you have a world-modeling protocol that lets you wade through a subterranean stream, picking up shotgun shells and blowing up other people who are picking up rocket launchers and trying to blow up you, you’ve got the whole ball of wax — spaces, movement, objects, avatars, even a simple physics. It would be easier to turn that into a tool for shared corporate meeting spaces than it would be to build the same thing in VRML, because once a tool is good for one thing, it’s easy to see how to make it good for another thing. 

On The Cutting Edge

This is one of the first axioms of creativity in this realm: Solve something first, then apply that solution elsewhere. It doesn’t matter if the first stone was sharpened to kill animals or cut wood, because once you have the principle down, making a knife into a spear or a scimitar or a scalpel is just application-level development. I have always been skeptical of any real possibility of viscerally engaging 3-D spaces, but I believe that I see in Quake — and its subsequent imitators and descendants — the sharpened stone, the thing that indicates the beginning of a new way of using the network. 

Quake is the real thing. It’s a local solution to a local problem (how to make a 3-D space realistic enough so that you can accurately aim a double-barreled shotgun at a chainsaw-wielding ogre, while both of you are running) that has global ramifications. I have seen a lot of 3-D spaces over the years, and I have never run into anything that gives as palpable a sense of place as this does. (Before the objection is raised that Quake is software and VRML is a protocol, consider that Quake, like VRML, always runs in client-server mode and reads external data files, even locally, and that the Quake client is one-fifth the size of the benchmark VRML client.) 

After playing with Quake for only a few hours, I found myself in possession of an absolute and rigorous sense of the spaces it contained: There was a moment, while I was off thinking about something else altogether, when I realized that in one particularly sticky part of the game, I could jump off a ramp and swim through some water under a trap located in a hallway. This was as matter-of-fact a thought as if I’d realized I could bring a big package up the service elevator at my office; in other words, I had a large, accurate map of an entire space in my head, not from having studied it, but from having experienced it. I had derived, for the first time ever, a sense of space — not an ‘as if’ sense or a sense of a metaphorical cyberspace, but of real space — from a screen. 

Here’s why I think this matters: Though Quake isn’t necessarily the right solution for the 3-D shared space problem, it feels right in a way that nothing in the VRML world does. Once you’ve seen it in action, much of what’s wrong with VRML snaps into focus: Quake does something well instead of many things poorly. 

This matters more than I can say. Despite all the theoretical underpinnings we now use as a basis for our work as computing reaches the half-century mark and networking turns 30, world-shifting developments still often come from practical solutions to simple problems. 

The VRML community has failed to come up with anything this compelling — not despite the community’s best intentions, but because of them. Every time VRML practitioners approach the problem of how to represent space on the screen, they have no focused reason to make any particular trade-off of detail versus rendering speed, or making objects versus making spaces, because VRML isn’t for anything except itself. Many times, having a particular, near-term need to solve brings a project’s virtues into sharp focus, and gives it enough clarity to live on its own. Quake puts tools in the hands of the users. 

Id software, producers of Quake, started allowing its games to be edited by users, and published a world-building spec so that users could write their own editors as well. As with HTML, one can build a variety of 3-D editors that can create a Quake world by simply writing to the spec. This has led to a riot of sophisticated tools for creating Quake “levels” like BSP and WorldCraft that would make any VRML partisan drool, and has spawned a community of user-engineers who are creating compelling worlds, objects, and sometimes whole alternate worlds at a pace and with an intensity that should make any VRML adherent faint. VRML is older than Quake, and yet it has fewer tools and fewer users, and still exists at the stage where the best examples of the technology are produced by the companies selling it, not the users using it. Quake has a simple model of compliance. 

The problem of representing space, surfaces, objects and worlds is almost infinitely vast. There was for some time in the AI community a proposal to develop a ‘naive physics’ where every aspect of physical organization of the world would be worked out in a way that would let computers deduce things about their surroundings. For instance, the naive physics of liquids included all sorts of rules about flow and how it was affected by being bounded by floors, walls and ceilings. This kind of elaborate modeling has been inherited in spirit by VRML, which is so complex that rendering a simple piece of furniture can bog down an average desktop computer. 

Quake, on the other hand, adopts a breathtakingly simple attitude toward physics. Quake has shapes like blocks, wedges and columns, and it has materials like stone, metal and water. If you make a freestanding column of water, so be it. The column will appear in any space you create; you can walk into it, swim to the top, walk out at the top and then fall down again. It does this simply because a physics of liquids is too complex to solve right now, and because Quake does not try to save users from themselves by adding layers of interpretation outside the engine itself. If it compiles, it complies. 

Hacking X for Y 

This willingness to allow users to do stupid things, on the assumption that they will learn more quickly if the software doesn’t try to second-guess them, has given Quake a development curve that looks like HTML in the early days, where a user’s first efforts were often lousy but the progress between lousy and good was not blocked by the software itself. Quake encourages experimentation and incrementalism in the tradition of the best tools out there. 

I acknowledge, however, that the Quake format lacks the rigorous throughput into VRML — the comparison here is not architecture to architecture, but effect to effect. I am not seriously suggesting that Quake or one of its children like Quake II (http://www.idsoftware.com), Half-Life (http://www.valvesoftware.com) or Unreal (http://www.unreal.com) be used as-is as a platform from which to build other 3-D shared spaces (well, maybe I am suggesting that half-seriously). More important, I am suggesting that there is a problem because the 3-D game people aren’t talking enough to the VRML people, and vice versa. Networking has come so far so fast partly because we have been willing to say, over and over again, “Well, we never thought of using X for Y, but now that you mention it, why not?” 

The Net is too young, and the 3-D space problem too tricky, to shoot for perfection right now. What worries me most about my belated discovery of Quake is that in years of looking at 3-D spaces, no one ever mentioned it in the same breath as VRML and I never thought of it myself, simply because of the stigma attached to things that are “merely” games. Many of us, myself very much included, have come to believe our own press about the seriousness of our current endeavors. We have been adversely affected by the commercial applications of the network, and have weaned ourselves off the playfulness that has always produced insights and breakthroughs. 

It will be a terrible loss if those of us doing this work start to take ourselves too seriously. Round the clock and round the world, there are hundreds of people chasing one another through rooms and tunnels and up and down staircases that don’t exist anywhere in the real world, a model of electronic space closer to Gibson’s ideal than anything else that exists out there, and we shouldn’t write those people off. Their game playing may look frivolous to us Serious Persons, but they know a lot about 3-D shared worlds, and it will be a terrible waste of everybody’s time if we don’t find a way to tap into that.

In Praise of Evolvable Systems

(First appeared in the ACM’s net_worker, 1996)

Why something as poorly designed as the Web became The Next Big Thing, and what that means for the future.

If it were April Fool’s Day, the Net’s only official holiday, and you wanted to design a ‘Novelty Protocol’ to slip by the Internet Engineering Task Force as a joke, it might look something like the Web:
The server would use neither a persistent connection nor a store-and-forward model, thus giving it all the worst features of both telnet and e-mail.
The server’s primary method of extensibility would require spawning external processes, thus ensuring both security risks and unpredictable load.
The server would have no built-in mechanism for gracefully apportioning resources, refusing or delaying heavy traffic, or load-balancing. It would, however, be relatively easy to crash.
Multiple files traveling together from one server to one client would each incur the entire overhead of a new session call.
The hypertext model would ignore all serious theoretical work on hypertext to date. In particular, all hypertext links would be one-directional, thus making it impossible to move or delete a piece of data without ensuring that some unknown number of pointers around the world would silently fail.
The tag set would be absurdly polluted and user-extensible with no central coordination and no consistency in implementation. As a bonus, many elements would perform conflicting functions as logical and visual layout elements.
HTTP and HTML are the Whoopee Cushion and Joy Buzzer of Internet protocols, only comprehensible as elaborate practical jokes. For anyone who has tried to accomplish anything serious on the Web, it’s pretty obvious that of the various implementations of a worldwide hypertext protocol, we have the worst one possible.

Except, of course, for all the others.

MAMMALS VS. DINOSAURS

The problem with that list of deficiencies is that it is also a list of necessities — the Web has flourished in a way that no other networking protocol has except e-mail, not despite many of these qualities but because of them. The very weaknesses that make the Web so infuriating to serious practitioners also make it possible in the first place. In fact, had the Web been a strong and well-designed entity from its inception, it would have gone nowhere. As it enters its adolescence, showing both flashes of maturity and infuriating unreliability, it is worth recalling what the network was like before the Web.

In the early ’90s, Internet population was doubling annually, and the most serious work on new protocols was being done to solve the biggest problem of the day, the growth of available information resources at a rate that outstripped anyone’s ability to catalog or index them. The two big meta-indexing efforts of the time were Gopher, the anonymous ftp index; and the heavy-hitter, Thinking Machines’ Wide Area Information Server (WAIS). Each of these protocols was strong — carefully thought-out, painstakingly implemented, self-consistent and centrally designed. Each had the backing of serious academic research, and each was rapidly gaining adherents.

The electronic world in other quarters was filled with similar visions of strong, well-designed protocols — CD-ROMs, interactive TV, online services. Like Gopher and WAIS, each of these had the backing of significant industry players, including computer manufacturers, media powerhouses and outside investors, as well as a growing user base that seemed to presage a future of different protocols for different functions, particularly when it came to multimedia.

These various protocols and services shared two important characteristics: Each was pursuing a design that was internally cohesive, and each operated in a kind of hermetically sealed environment where it interacted not at all with its neighbors. These characteristics are really flip sides of the same coin — the strong internal cohesion of their design contributed directly to their lack of interoperability. CompuServe and AOL, two of the top online services, couldn’t even share resources with one another, much less somehow interoperate with interactive TV or CD-ROMs.

THE STRENGTH OF WEAKNESS AND EVOLVABILITY

In other words, every contender for becoming an “industry standard” for handling information was too strong and too well-designed to succeed outside its own narrow confines. So how did the Web manage to damage and, in some cases, destroy those contenders for the title of The Next Big Thing? Weakness, coupled with an ability to improve exponentially.

The Web, in its earliest conception, was nothing more than a series of pointers. It grew not out of a desire to be an electronic encyclopedia so much as an electronic Post-it note. The idea of keeping pointers to ftp sites, Gopher indices, Veronica search engines and so forth all in one place doesn’t seem so remarkable now, but in fact it was the one thing missing from the growing welter of different protocols, each of which was too strong to interoperate well with the others.

Considered in this light, the Web’s poorer engineering qualities seem not merely desirable but essential. Despite all strong theoretical models of hypertext requiring bi-directional links, in any heterogeneous system links have to be one-directional, because bi-directional links would require massive coordination in a way that would limit its scope. Despite the obvious advantages of persistent connections in terms of state-tracking and lowering overhead, a server designed to connect to various types of network resources can’t require persistent connections, because that would limit the protocols that could be pointed to by the Web. The server must accommodate external processes or it would limit its extensibility to whatever the designers of the server could put into any given release, and so on.

Furthermore, the Web’s almost babyish SGML syntax, so far from any serious computational framework (Where are the conditionals? Why is the Document Type Description so inconsistent? Why are the browsers enforcement of conformity so lax?), made it possible for anyone wanting a Web page to write one. The effects of this ease of implementation, as opposed to the difficulties of launching a Gopher index or making a CD-ROM, are twofold: a huge increase in truly pointless and stupid content soaking up bandwidth; and, as a direct result, a rush to find ways to compete with all the noise through the creation of interesting work. The quality of the best work on the Web today has not happened in spite of the mass of garbage out there, but in part because of it.

In the space of a few years, the Web took over indexing from Gopher, rendered CompuServe irrelevant, undermined CD-ROMs, and now seems poised to take on the features of interactive TV, not because of its initial excellence but because of its consistent evolvability. It’s easy for central planning to outperform weak but evolvable systems in the short run, but in the long run evolution always has the edge. The Web, jujitsu-like, initially took on the power of other network protocols by simply acting as pointers to them, and then slowly subsumed their functions.

Despite the Web’s ability to usurp the advantages of existing services, this is a story of inevitability, not of perfection. Yahoo and Lycos have taken over from Gopher and WAIS as our meta-indices, but the search engines themselves, as has been widely noted, are pretty lousy ways to find things. The problem that Gopher and WAIS set out to solve has not only not been solved by the Web, it has been made worse. Furthermore, this kind of problem is intractable because of the nature of evolvable systems.

THREE RULES FOR EVOLVABLE SYSTEMS

Evolvable systems — those that proceed not under the sole direction of one centralized design authority but by being adapted and extended in a thousand small ways in a thousand places at once — have three main characteristics that are germane to their eventual victories over strong, centrally designed protocols.

  • Only solutions that produce partial results when partially implemented can succeed. The network is littered with ideas that would have worked had everybody adopted them. Evolvable systems begin partially working right away and then grow, rather than needing to be perfected and frozen. Think VMS vs. Unix, cc:Mail vs. RFC-822, Token Ring vs. Ethernet.
  • What is, is wrong. Because evolvable systems have always been adapted to earlier conditions and are always being further adapted to present conditions, they are always behind the times. No evolving protocol is ever perfectly in sync with the challenges it faces.
  • Finally, Orgel’s Rule, named for the evolutionary biologist Leslie Orgel — “Evolution is cleverer than you are”. As with the list of the Web’s obvious deficiencies above, it is easy to point out what is wrong with any evolvable system at any point in its life. No one seeing Lotus Notes and the NCSA server side-by-side in 1994 could doubt that Lotus had the superior technology; ditto ActiveX vs. Java or Marimba vs. HTTP. However, the ability to understand what is missing at any given moment does not mean that one person or a small central group can design a better system in the long haul.

Centrally designed protocols start out strong and improve logarithmically. Evolvable protocols start out weak and improve exponentially. It’s dinosaurs vs. mammals, and the mammals win every time. The Web is not the perfect hypertext protocol, just the best one that’s also currently practical. Infrastructure built on evolvable protocols will always be partially incomplete, partially wrong and ultimately better designed than its competition.

LESSONS FOR THE FUTURE

And the Web is just a dress rehearsal. In the next five years, three enormous media — telephone, television and movies — are migrating to digital formats: Voice Over IP, High-Definition TV and Digital Video Disc, respectively. As with the Internet of the early ’90s, there is little coordination between these efforts, and a great deal of effort on the part of some of the companies involved to intentionally build in incompatibilities to maintain a cartel-like ability to avoid competition, such as DVD’s mutually incompatible standards for different continents.

And, like the early ’90s, there isn’t going to be any strong meta-protocol that pushes Voice Over IP, HDTV and DVD together. Instead, there will almost certainly be some weak ‘glue’ or ‘scaffold’ protocol, perhaps SMIL (Synchronized Multimedia Integration Language) or another XML variant, to allow anyone to put multimedia elements together and synch them up without asking anyone else’s permission. Think of a Web page with South Park in one window and a chat session in another, or The Horse Whisperer running on top with a simultaneous translation into Serbo-Croatian underneath, or clickable pictures of merchandise integrated with a salesperson using a Voice Over IP connection, ready to offer explanations or take orders.

In those cases, the creator of such a page hasn’t really done anything ‘new’, as all the contents of those pages exist as separate protocols. As with the early Web, the ‘glue’ protocol subsumes the other protocols and produces a kind of weak integration, but weak integration is better than no integration at all, and it is far easier to move from weak integration to strong integration than from none to some. In 5 years, DVD, HDTV, voice-over-IP, and Java will all be able to interoperate because of some new set of protocols which, like HTTP and HTML, is going to be weak, relatively unco-ordinated, imperfectly implemented and, in the end, invincible.

The Divide by Zero Era: The Arrival of the Free Computer

First published in ACM, 12/98.

"I think there's a world market for about five computers."
-- attr. Thomas J. Watson (IBM Chairman), 1945

"There is is no reason for any individual to have a computer in their home."
-- Ken Olsen (President of Digital Equipment
Corporation), Convention of the World Future
Society, 1977

"The PC model will prove itself once again."
-- Bill Gates (CEO of Microsoft),
COMDEX, 1998

Like Thomas Kuhn’s famous idea of “paradigm shifts” in “The Structure of Scientific Revolutions”, the computing industry has two basic modes – improvements in a given architecture, a kind of “normal computing”, punctuated by introductions of new architectures or ideas, or “radical computing”. Once a radical shift has been completed, the industry reverts to “normal computing”, albeit organized around the new norm, and once that new kind of computing becomes better understood, it creates (or reveals) a new set of problems, problems which will someday require yet another radical shift. 

The mainframe is introduced, then undergoes years of steady and rapid improvement. At the height of its powers, the mainframe solves all the problems within its domain, but gives rise to a new set of problems (problems of distributed computing, in this case), which couldn’t even have been discovered without the mainframe solving the previous generation of problems. These new problems do not respond to the kinds of things the mainframe does well, the community casts about for new solutions, and slowly, the client-server model (in this case) is born. 

This simplified view overstates the case, of course; in the real world these changes only appear neat and obvious after the fact. However, in spite of this muddiness, the most visible quality of such a shift is that it can be identified not just by changes in architecture, but by changes in user base. Put another way, real computing revolutions take place not when people are introduced to new kinds of computers but when computers are introduced to new kinds of people. 

Failure to understand the timing of these of radical shifts is the underlying error made by all three of the computer executives quoted at the beginning of this article. Each of them dominated computing technology of their day, and each of them failed to see that “the computer” as they understood it (and manufactured it) was too limited to be an all-inclusive solution. In particular, they all approached their contemporary computing environment as if it was the last computing environment, but in computing ecology, there is no “last”, there is just “next”. 

Scarcity Drives Strategy

What characterizes any computing era is scarcity. In the earliest days, everything was scarce, and building a computer was such a Herculean effort that had the price of hardware not plummeted, and expertise in building computers not skyrocketed, Watson’s estimate of 5 computers would have made sense. However, price did plummet, expertise did skyrocket, and computers were introduced to a new class of businesses in the 60s and 70s that could never have imagined owning a computer in earlier decades. 

This era of business expansion was still going strong in the late 70’s, when Olsen made his famous prediction. The scarcity at the time was processing power – well into the 80s, there were computers which were calculating each user’s cost for a second of CPU time. In this environment, it was impossible to imagine home computing. Such a thing would assume that CPU cycles would become so abundant that they would be free, an absurdity from Ken Olsen’s point of view, which is why it took DEC by surprise. 

We are now in the second decade of the “PC Model”, which took advantage of the falling cost of CPU cycles to create distibuted computing through the spread of stand-alone boxes. After such a long time of living with the PC, we can see the problems it can’t solve – it centralizes too much that should be distributed (most cycles are wasted on most PCs most of the time) and it distributes too much that should be centralized (a company contact list should be maintained and updated centrally, not given out in multiple copies, one per PC). Furthermore, the “Zero Maintenance Cost” hardware solutions that are being proposed – essentially pulling the hard drive out of a PC to make it an NC – are too little too late. 

Divide by Zero

A computing era ends – computers break out of normal mode and spread outwards to new groups of users – when the the previous era’s scarcity disappears. At that point the old era’s calculations run into a divide by zero error – calculating “CPU cycles per dollar” becomes pointless when CPU cycles are abundant enough to be free, charging users per kilobyte of storage becomes pointless when the ordinary unit of drive storage is the gigabyte, and so on. 

I believe that today we are seeing the end of the PC era because of another divide-by-zero error: Many people today wrongly assume that in the future you will continue to be able to charge money for computers. In the future, in the near future, the price of computers will fall to free, which will in turn open computer use to an enormously expanded population. 

You can already see the traditional trade press strugling with these changes, since many of them still write about the “sub $1000 PC” at a time when there are several popular sub _$500_ PCs on offer, and no sign that the end of the price cutting is in sight. The emergence of free computers will be driven not just by falling costs on the supply side, but by financial advantages on the demand side – businesses will begin to treat computers as a service instead of a product, in the same way that mobile phone services give away the phone itself in order to sell a service plan. In the same way that falling price has democratized the mobile phone industry, free computers will open the net to people whose incomes don’t include and extra $2000 of disposable income every two years. 

There are many factors going into making this shift away from the PC model possible – the obvious one is that for a significant and growing percentage of PC users, the browser is the primary interface and the Web is the world’s largest hard drive, but there are other factors at work as well. I list three others here: 

The bandwidth bottleneck has moved innovation to the server. 

A 500 Mhz chip with a 100 Mhz local bus is simply too fast for almost any home use of a computer. Multimedia is the videophone of the 90’s, popular among manufacturers but not among consumers, who want a computer primarily for word processing, email, and Web use. The principal scarcity is no longer clock speed but bandwidth, and the industry is stuck at about 50 kilobits, where it will stay for at least the next 24 months. ADSL and cable modems will simply not take the pressure off the bandwidth to the home in time to save the PC – the action has moved from the local machine to the network, and all the innovation is going on the server, where new “applications you log into” are being unveiled on the Web daily. By the time bandwidth into the home is fast enough to require even today’s processor speeds, the reign of the PC will be over. 

Flat screens are the DRAM of the next decade. 

As CPU prices have fallen, the price of the monitor has become a larger and larger part of the total package. A $400 monitor is not such a big deal if a computer costs $2500, but for a computer that costs $400 it doubles the price. In 1998, flat screens have finally reached the home market. Since flat screens are made of transistors, their costs will fall the way chip costs do and they will finally join CPU, RAM, and storage in delivering increasing performance for decreasing cost year over year. By the middle of the next decade, flat screens prices per square inch will be as commodified as DRAM prices per megabyte are now. 

Linux and Open Source software. 

It’s hard to compete with free. Linux, the free Unix-like OS, makes the additional cost of an operating system zero, which opens up the US market for PCs (currently around 40% of the population) to a much greater segment of the population. Furthermore, since Linux can run all the basic computing apps (these days, there are actually only two, a word processor and a web browser, which also have Open Source versions) on 80486 architecture, it resuscitates a whole generation of previously obsolete equipment from the scrap heap. If a free operating system running free software on a 5 year old computer can do everything the average user needs, it switches the pressures on the computer industry from performance to price. 

The “Personal” is Removed from the Personal Computer.

Even if the first generation of free computers are built on PC chassis, they won’t be PCs. Unlike a “personal” computer, with its assumption of local ownership of both applications and data, these machines will be network clients, made to connect to the Web and run distributed applications. As these functions come to replace the local software, new interfaces will be invented based more on the browser than on the desktop metaphor, and as time goes on, even these devices will share the stage with other networking clients, such as PDAs, telephones, set-top boxes, and even toasters. 

Who will be in the vanguard of distributing the first free computers? The obvious organizations to do such a thing are people who have high fixed costs tied up in infrastructure, and high marketing costs but low technological costs for acquiring a customer. This means that any business that earns monthly or annual income from its clients and is susceptible to competition can give away a computer as part of a package deal for a long-term service contract, simultaneously increasing the potential pool of customers and getting loyal customers. 

If AOL knew it could keep a customer from leaving the service, they would happily give away a computer to get that customer. If it lowered service costs enough to have someone switch to electronic banking, Citibank could give away a computer to anyone who moved their account online, and so on, through stock brokerages, credit card companies and colleges. Anyone with an interest in moving its customers online, and in keeping them once they are there, will start to think about taking advantage of cheap computers and free operating systems, and these machines, free to the user, will change the complexion of the network population. 

Inasmuch those of us who were watching for the rise of network computing were betting on the rise of NCs as hardware, we were dead wrong. In retrospect, it is obvious that the NC was just a doppleganger of the PC with no hard drive. The real radical shift we are seeing is that there is no one hardware model coming next, that you can have network computing without needing a thing called a “network computer”. The PC is falling victim to its own successes, as its ability to offer more speed for less money is about to cause a divide by zero error. 

A computer can’t get cheaper than free, and once we get to free, computer ownership will expand outwards from people who can afford a computer to include people who have bank accounts, or people who have telephones, and finally to include everyone who has a TV. I won’t predict what new uses these new groups of people will put their computers too, but I’m sure that the results will be as surprising to us as workstations were to Thomas Watson or PCs were to Ken Olsen.

The Icarus Effect

First published in ACM, 11/97.

A funny thing happened on the way from the router. 

We are all such good students of Moore’s Law, the notion that processor speeds will double every year and a half or so, that in any digital arena, we have come to treat it as our ‘c’, our measure of maximum speed. Moore’s Law, the most famously accurate prediction in the history of computer science, is treated as a kind of inviolable upper limit: the implicit idea is that since nothing can grow faster than chip speed, and chip speed is doubling evey 18 months, that necessarily sets the pace for everything else we do. 

Parallelling Moore’s law is the almost equally rapid increase in storage density, with the amount of data accessible on any square inch of media growing by a similar amount. These twin effects are contantly referenced in ‘gee-whiz’ articles in the computer press: “Why, just 7 minutes ago, a 14Mhz chip with a 22K disk cost eleventy-seven thousand dollars, and now look! 333 Mhz and a 9 gig drive for $39.95!” 

All this breath-taking period doubling makes these measurements into a kind of physics of our world, where clock speeds and disk densities become our speed of light and our gravity – the boundaries that determine the behavior for everything else. All this is well and good for stand-alone computers, but once you network them, a funny thing happens on the way from the router: this version of the speed of light is exceeded, and from a most improbable quarter. 

It isn’t another engineering benchmark that is outstripping the work at Intel and IBM, its the thing that often gets shortest shrift in the world of computer science – the users of the network. 

Chip speeds and disk densities may be doubling every 18 months, but network population is doubling roughly annually, half again as fast as either of those physical measurements. Network traffic, measured in packets, is doubling semi-annually (last year MAE-East, a major East Coast internet interconnect point) was seeing twice the load every 4 months, or an 8-fold annualized increase). 

There have always been internal pressures for better, faster computers – weather modelling programs and 3-D rendering, to name just two, can always consume more speed, more RAM, more disk – but the Internet, and particularly the Web and its multi-media cousins of java applications and streaming media, present the first externalpressure on computers, where Moore’s law simply can’t keep up and will never catch up. The network can put more external pressure on individual computers than they handle, now and for the forseeable future. 

IF YOU SUCCEED, YOU FAIL. 

This leads to a curious situation on the Internet, where any new service risks the usual failure if there is not enough traffic, but also risks failure if there is too much traffic. In a literal update of Yogi Berra’s complaint about a former favorite hang-out, “Nobody goes there anymore. Its too crowded”, many of the Web sites covering the 1996 US Presidential election crashed on election night, the time when they would have been most valuable, because so many people thought they were a good idea. We might dub this the ‘Icarus Effect’ – fly too high and you crash. 

What makes this ‘Icarus Effect’ more than just an engineering oversight is the relentless upward pressure on both population and traffic – given the same scenario in the 2000 election, computers will be roughly 8 times better equipped to handle the same traffic, but they will be asked to handle roughly 16 times the traffic. (More traffic than that even, much more, if the rise in number of users is accompanied by the same rise in time spent on the net by each user that we’re seeing today.) 

This is obviously an untenable situation – computing limits can’t be allowed to force entrepreneurs and engineers to hope for only middling success, and yet everywhere I go, I see companies excercising caution whenever they are comtemplating making any moves which will increase traffic, even if that would be make for a better site or service. 

FIRST, FIX THE PROBLEM. NEXT, EMBRACE FAILURE. 

We know what happens when the need for computing power outstrips current technology – its a two-step process, which first beefs up the current offering by improving performance and fighting off failure, and then, when that line of development hits a wall (as it inevitably does), embracing the imperfection of individual parts and adopting parallel development to fill the gap. 

Ten years ago, Wall St. had a similar problem to the Web today, except it wasn’t web sites and traffic, it was data and disk failure. When you’re moving trillions of dollars around the world in real time, a disk drive dying can be a catastrophic loss, and a backup that can get online ‘in a few hours’ does little to soften the blow. The first solution is to buy bigger and better disk drives, moving the Mean Time Between Failure from say, 10,000 hours to 30,000 hours. This is certainly better, but in the end, the result is simply spreading the pain of catastrophic failure over a longer average period of time. When the failure does come, it is the same catastrophe as before. 

Even more disheartening, the price/performance curve is exponential, putting the necessary order-of-magnitude improvements out of reach. It would cost far more to go from 30K/hrs MTBF to 90K/hrs than it did to go from 10 to 30, and going from 90 to 270 would be unthinkably expensive. 

Enter the RAID, the redundant array of inexpensive disks. Instead of hoping for the Platonic ‘ideal disk’, the RAID accepts that each disk is prone to failure, howsobeit rare, and simply groups them together in such a way that the failure of any one disk isn’t catastrophic, because the other disks contain all of the failed disk’s data in a matrix shared among the remaining disks. As long as a new working disk is put in place of the failed drive, the theoretical MTBF of a RAID made of ordinary disks, where two disks failed at precisely the same time, would be something like 900 million hours. 

A similar path of development happened with the overtaking of the supercomputer by the parallel processor, where the increasingly baroque designs of single CPU supercomputers was facing the same uphill climb that building single reliable disks did, and where the notion of networking cheaper, slower CPUs proved a way out that bottleneck. 

THE WEB HITS THE WALL. 

I believe that with the Web we are now seeing the beginning of one of those uphill curves – there is no way that chip speed and storage density can keep up with exploding user base, and this problem will not abate in the forseeable future. Computers, individual computers, are now too small, slow and weak to handle the demand of a popular web site, and the current solution to the demands of user traffic – buy a bigger computer – are simply postponing the day when those solutions also fail. 

What I can see in the outlines of in current web site development is what might be called a ‘RAIS’ strategy – redundant arrays of inexpensive servers. Just as RAIDs accept the inadequacy of any individual disk, a RAIS would accept that servers crash when overloaded, and that when you are facing 10% more traffic than you can handle, having to buy a much bigger and more expensive server is a lousy solution. RAIS architecture comes much closer to the necessary level of granularity for dealing with network traffic increases. 

If you were to host a Web site on 10 Linux boxes instead of one big commercial Unix server, you could react to a 10% increase in traffic with 10% more server for 10% more money. Furthermore, one server dying would only inconvenience the users who were mid-request on that particular box, and they could restart their work on one of the remaining servers immediately. Contrast this with the current norm, a 100% failure for the full duration of a restart in cases where a site is served by a single server. 

The initial RAISs are here in sites like C|NET and ESPN, where round-robin DNS configurations spread the load across multiple boxes. However, these solutions are just the beginning – their version of redundancy is often simply to mirror copies of the Web server. A true RAIS architecture will spread not only versions of the site, but will also spread functionality: images, a huge part of network traffic, are ‘read only’ – a server or group of servers optimized to handle only images could be served from WORM drives and serve the most popular images from RAM. Incoming CGI data, on the other hand, can potentially be ‘write only’ simply recording information on removable medai which can be imported into a database at a later date, on another computer, and so on. 

This kind of development will ultimately dissolve the notion of discrete net servers, and will lead to server networks, where an individual network address does not map to a physical computer but rather to a notional source of data. Requests to and from this IP address will actually be handled not by individual computers, whether singly or grouped into clusters of mirroring machines, but by a single-address network, a kind of ecosystem of networked processors, disks and other devices, each optimized for handling certain aspects of the request – database lookups, image serving, redirects, etc. Think of the part of the site that handles database requests as an organ, specialized to its particular task, rather than as a seperate organism pressed into that particular service. 

THE CHILD IS FATHER TO THE MAN 

It has long been observed that in the early days of ARPANet, packet switching started out by piggy-backing on the circuit-switched network, only to overtake it in total traffic, which will happen this year, and almost certainly to subsume it completely within a decade. I beleive a similar process is happening to computers themselves: the Internet is the first place where we can see that cumulative user need outstrips the power of individual computers, even taking Moore’s law into account, but it will not be the last. In the early days, computers were turned into networks, with the cumulative power of the net rising with the number of computers added to it. 

In a situation similar to the packet/circuit dichotomy, I believe that we are witnessing another such tipping point, where networks are brought into individual computers, where all computing resources, whether cycles, RAM, storage, whatever, are mediated by a network instead of being bundled into discrete boxes. This may have been the decade where the network was the computer, but in the next decade the computer will be the network, and so will everything else.