A lot of creative work is messy. I hope that the next generation of end-user software provides some structure within which users can make a mess and then clean up. For instance, it would be nice for a graphic designer to be able to send a client a bundle of graphics and text with three alternative layouts that the client could view at the click of a button.
Documents also have multiple audiences and, therefore, a reason to show the same (or related) information from multiple angles. One statue, many faces. The most familiar face that people add to their document is the executive summary, but there can be many others. Different people come in at different levels looking for different things. I know Microsoft is obsessed with the visual look of documents, but I don't see evidence that they're concerned about what's being looked at.
To sum up what I feel is missing from productivity software, I see a document as an evolving, multi-faceted work. It has lots of contributors, it can be approached with a variety of senses, it has a history, and it is viewed by different people with a variety of goals in mind. Real-time collaboration, perceptual interfaces, version control, and flexible display should be mainstream.
Is there an alternative?
It's commonplace nowadays to point to the Internet's promise of instant access as the driving force behind the need for flexibility in modern work. It's also commonplace to say that Microsoft "doesn't get the Internet." It would be hard, though, to point to a company that really does "get the Internet." Even BBN, who invented the Internet, never seemed to really "get it"; for decades their network division stagnated under the management of three different companies until it was spun out to become a new company called Genuity, as part of a corporate deal to merge more lucrative telecommunications divisions.
Internet collaboration is still so new that few organizations really understand it even while they're doing it. O'Reilly & Associates, for instance, works with a number of experts outside the company proper who participate in discussions and development on a weekly basis; they're on our mail aliases and get to stick their fingers right into lots of our software. This is a very modern way of working, but we don't have any formal computing structure you could call an extranet, nor do we know how to represent these crucial helpers in our technical administration and personnel policies. Furthermore, while staff throughout the company work closely together on book text, graphics, design, and marketing materials, we depend far more on Federal Express than a high-tech leader should have to.
If any computer manufacturer "gets it," you'd probably have to say it's Sun Microsystems. And Sun does have a plan for changing how we use our computers. But it doesn't have anything to do with our current office products. While Microsoft was building a business on office workers, Sun made their money providing servers. Naturally enough, Sun sees a future dominated by powerful servers, which interact through Java and JINI with tiny embedded devices, smart cards, and telephones. But that's a long-term plan, and even though it may start to come true within a few years, many more will pass before it reaches the desktop where I'm typing right now.
So we are caught between past and future. The past is represented by the enhanced typewriters and adding machines that we work with in our offices, exchanging our creations through the Inbox and Outbox of Microsoft Outlook. The future is a wireless world where I can turn down the thermostat at home by speaking into my cell phone. (You won't see me put one of those things next to my head, but I'm willing to try a model with a detached ear piece.) I don't want to be stuck with the past until the future arrives.
How to promote Internet-savvy software
It's interesting that, in the Microsoft anti-trust case, Judge Thomas Penfield Jackson has suggested going further than the Department of Justice wants to go and splitting the Internet side of Microsoft's business off from its office productivity suite. Since the Department of Justice has not asked for this, I don't expect the suggestion to survive into the final ruling. Nor do I have either the legal or the technical knowledge to take a stand on the anti-trust case. But I find it interesting to speculate on how such a break-up could advance or retard the integration of Internet-savvy collaborative features into our day-to-day tools.
Microsoft thinks in terms of integration. It claimed that one of its great innovations was embedding a browser in Windows Explorer. By this type of thinking, it would be folly to force office tools to be developed in a separate company from Internet tools. The thrust of this essay suggests that one should consider the office and the Internet as one of a piece. For every feature developed in every tool, designers should be asking, "How does the Internet affect our choice?" And the idea that you can define one feature as an office productivity feature and another as an Internet feature is absurd.
But I wouldn't jump to the conclusion that Jackson's suggestion is wrong. Suppose the developers of office suites knew they couldn't use TCP/IP in their products but that TCP/IP access had to be supported and enabled? (If they just ignored remote connectivity, their products would fall into the gutters by the side of an evolving marketplace.) Suppose that, instead of stuffing some collaborative tools in by kludging XML here and URLs there, they tried to make their products attractive to Internet development companies by providing the tools for extending the software? To do this, they'd provide well-documented APIs and adhere to standards.
That's what the development community is really asking for, isn't it? Standards, documented APIs, and a chance to compete? Perhaps a break-up would draw in the wild ideas of ten thousand new talents, filling the vessels provided by the most popular applications the software industry has ever seen.
Discuss this article in the O'Reilly Network Foru m.