Stuart Feldman could easily be mistaken for a technology pessimist, disillusioned after more than 25 years in the business of bits and bytes. As a veteran software architect, the director of IBM’s Institute for Advanced Commerce views programming as all about suffering — from ever-increasing complexity. Writing code, he explains, is like writing poetry: every word, each placement counts. Except that software is harder, because digital poems can have millions of lines which are all somehow interconnected. Try fixing programming errors, known as bugs, and you often introduce new ones. So far, he laments, nobody has found a silver bullet to kill the beast of complexity.
But give Mr Feldman a felt pen and a whiteboard, and he takes you on a journey into the future of software. Revealing his background as an astronomer, he draws something hugely complex that looks rather like a galaxy. His dots and circles represent a virtual economy of what are known as web services — anything and everything that processes information. In this “cloud”, as he calls it, web services find one another automatically, negotiate and link up, creating all kinds of offerings.
Imagine, says the man from IBM, that you are running on empty and want to know the cheapest open petrol station within a mile. You speak into your cellphone, and seconds later you get the answer on the display. This sounds simple, but it requires a combination of a multitude of electronic services, including a voice-recognition and natural-language service to figure out what you want, a location service to find the open petrol stations near you and a comparison-shopping service to pick the cheapest one.
But the biggest impact of these new web services, explains Mr Feldman, will be on business. Picture yourself as the product manager of a new hand-held computer whose design team has just sent him the electronic blueprint for the device. You go to your personalised web portal and order the components, book manufacturing capacity and arrange for distribution. With the click of a mouse, you create an instant supply chain that, once the job is done, will dissolve again.
Visions, Visions Everywhere
All this may sound like a description of “slideware” — those glowing overhead presentations given by software salesmen that rarely deliver what they seem to promise. Yet IBM is not the only one with an ambitious vision. Hewlett-Packard, Microsoft, Oracle, Sun and a raft of start-ups are thinking along the same lines. Unless they have all got it wrong, companies, consumers and computers will one day be able to choose exactly what they want from a huge cloud of electronic offerings, via the Internet.
The reality will take a while to catch up; indeed, it may turn out to be quite different from today’s vision. But there is no doubt that something big is happening in the computer industry — as big as the rise of the PC in the 1980s that turned hardware into a commodity and put software squarely at the centre of the industry. Now it looks as though software will have to cede its throne to services delivered online.
Not that software as we know it will disappear. Plenty of code will still be needed to make the new world of computing run, just as mainframe computers are still around, though in a much less dominant position. But the computer business will no longer revolve around writing big, stand-alone programs. Instead, it will concentrate on using software to create all kinds of electronic services, from simple data storage to entire business processes.
The agent of change is the Internet. For a start, it has changed the nature of software. Instead of being a static program that runs on a PC or some other piece of hardware, it turns into software that lives on a server in the network and can be accessed by an Internet browser. Already, most big software firms offer versions of their programs that can be “hosted”, meaning that they can be delivered as a service on the network.
But more importantly, the Internet has turned out to be a formidable promoter of open standards that actually work, for two reasons. First, the web is the ideal medium for creating standards; it allows groups to collaborate at almost no cost, and makes decision-making more transparent. Second, the ubiquitous network ensures that standards spread much faster. Moreover, the Internet has spawned institutions, such as the Internet Engineering Task Force (IETF) and the World Wide Web Consortium (W3C), which have shown that it is possible to develop robust common technical rules.
The first concrete result of all this was the open-source movement. Since the mid-1980s, thousands of volunteer programmers across the world have been collaborating, mostly via e-mail, to develop free software, often taking Internet standards as their starting point. Their flagship program is Linux, an increasingly popular operating system initially created by Linus Torvalds, a Finnish programmer.
The emergence of web services is a similar story, even though at first glance it may not look like it. The computer industry and other business sectors are collectively developing the next level of Internet standards — the common glue that will make all these web services stick together. Hence the proliferation of computer-related acronyms such as XML, RosettaNet, ebXML, XAML, SOAP, UDDI, WSDL and so on. This alphabet soup illustrates a potential problem for the new web services: they too could become victims of their own complexity.
Why should anyone care about this geeky stuff? One good reason is that software is one of the world’s largest and fastest-growing industries. In 1999 the sector sold programs worth $157 billion, according to IDC, a market-research company; and software spending, which is increasing by 15% a year, influences investments of another $800 billion in hardware and services. The changes now under way are likely to reshuffle the industry completely. The next few years may make it clear which companies will end up on top.
Moreover, the software sector could well become a model for other industries. Open-source communities, for example, are fascinating social structures. Similar communities could one day produce more than just good code. Thomas Malone, professor of information systems at the Massachusetts Institute of Technology, sees great opportunities ahead: “The Linux community is a model for a new kind of business organisation that could form the basis for a new kind of economy.”
Copyright © 2001 The Economist Newspaper and The Economist Group. All rights reserved.
