OpenDoc Changes the Face of Software

When Microsoft Word 4.0 was released, it required a mere 512K of RAM, and 1 megabyte of disk space. Just two versions later, it asks for eight times the RAM and thirty times the hard disk space. If the trend continues, by version 8 Word will require 32 megabytes RAM and a 1 gigabyte hard disk!

Obviously, these growing requirements reflect growing capabilities. Word processors now handle graphics, page layout, grammar checking, outlining, and a host of other functions. The result is an inefficient software behemoth with a feature set few users need.

Using a standard application today is like using an all-in-one entertainment unit- it covers a wide array of capabilities. However, if you want a specialty feature in your CD player, you’ll have to buy an entirely new component, which may not work compatibly or configure easily with the existing parts.

OpenDoc is a new technology from Apple that allows users to pick software components with exactly the mix of features they need. Based on the task at hand, users can then link data and use different components, within a single document, in ways that are convenient. To carry the entertainment center metaphor one step further, Open Doc is more like using custom picked entertainment center components-each one is selected to match your needs closely, but each still works together compatibly, and new components can be easily added to the system.

OpenDoc is not a particular program, or a programming language. Rather, it is a new set of system-level tools that developers can take advantage of in their software, similar to AppleEvents or QuickTime. OpenDoc is now available as an add-on for the Mac operating system. It will also be built into the next-generation Mac operating system (expected in 1996), and is being ported to Windows and OS/2 by IBM. A copy of OpenDoc can be downloaded from Apple’s Web site at shttp://www.opendoc.apple.com/ dload/index. html>.

Programs based on OpenDoc are called component software. An OpenDoc developer designs small, specialized programs-components or “parts” that fit together to help the user do specific tasks. Each part includes an editor (for viewing and editing information), a viewer (for viewing only), and stationery (for creating or re-using content).

Users may pick one part for each type of data they want to use–a favorite word processing part for editing text in letters, for example. Parts can also be used in combination: one company’s video editing part, and a second companys word processing part could be used in a single stationery document to prepare movie scripts. In the OpenDoc model, there’s no need for a single part to include every kind of functionality, since parts with different capabilities can easily be used in combination with each other.

Users can assemble their own collection of parts–just like the components in an entertainment system–rather than buying a single, inefficient program or huge integrated suite that includes everything but the kitchen sink. In this sense, each user assembles their own “custom” software with OpenDoc.

Innovative Solutions to Common Problems

Once a variety of OpenDoc parts reaches users, more innovative solutions will be possible. For an office presentation, an outliner part could be used to provide a “framework” while graphics, word processing and sound parts fill in the content. An internet connection part could allow a user to incorporate live data from web sites and other internet locations in a presentation; another part could add up-to-the minute stock quotes.

Mail merge is one common task where the OpenDoc process would be useful. Today, for each mail merge you’d have to export an ascii file from a database, and then use a word processor to create a mail merge document using that data. In OpenDoc, each aspect of that task could be performed within a single document, using specialized components.

You’d open a single stationery document, use a database access part to get the names and addresses you need, and use that information in your favorite word processing part, still within that same document. The process itself, and any re-usable content or formatting, could be saved for later use in Open Doc stationery. Since the database link would be "live, the data would be automatically updated for later mail merges.

Accessing Remote Data with OpenDoc

Apple’s Cyber Dog project is an Internet access solution built on OpenDoc. Individual parts handle FTP, Telnet, Web browsing, e-mail, and other features. Parts for other purposes, like word processing or layout, can work together with CyberDog parts and integrate Internet data seamlessly. When new Internet technologies become available, parts can be “plugged in” to CyberDog without requiring users to learn a new set of tools.

Eclipse Services is currently developing a set of database access parts. Like any database environment, these parts can easily organize, store, and retrieve diverse kinds of information. Unlike other databases, these new parts allow users to create their own specialized solutions in conjunction with other Open Doc parts, even if the other parts were not explicitly designed to access database information.

For instance, a stock broker who needed to store customer information including current values of stock holdings, a map showing the contacts location, a calendar of stock purchase dates, and a tickler file of communications could easily incorporate all these in an OpenDoc document using the database parts from Eclipse. If the map needed changes, an appropriate OpenDoc component would allow those changes to be made efficiently within the document, without importing or exporting the data, or opening any other application.

A graphic artist could store video clips, graphics, text files, and billing data related to multiple projects for a customer in a single OpenDoc document. Although the various kinds of files would be stored within the database part, each type of data would have its own editor to allow immediate editing, with appropriate specialized tools. These database access parts will allow seamless interaction with database servers like Oracle and Sybase. People who work from remote sites and then need to upload information to a central database server would find this useful. From within Open Doc, local and remote users could share documents and data without worrying about where the data is stored.

When Will OpenDoc be Available?

While you cannot yet replace all of your current software with Open Doc components, over 350 parts have already been released or announced, and the continuing spread of OpenDoc is sure to dramatically alter the way software is created and used. The next word processor you use may be a combination of off-the-shelf and custom parts that do exactly what you want… and nothing else!

OpenDoc Resources on the Internet

Apple’s official OpenDoc site contains information on the latest versions of the software, and offers the end-user version of OpenDoc free for download. Visit it at http://www.opendoc.apple.com, and download OpenDoc from http://www.opendoc.apple.com/dload/index.html

IBM has created ‘Club OpenDoc,’ a resource page for OpenDoc end users and developers. It can be found at http://www.software.ibm.com/clubopendoc/

Component Integration Laboratories, the organization officially in charge of the OpenDoc standard, has established a web site at http://www.cilabs.org>. It contains information on OpenDoc, and component software in general.

InfoWorld magazine named OpenDoc 1995’s Landmark Technology. Read the article at http://www.infoworld.com/pageone/product/poy3.htm.

For a technical discussion of OpenDoc, visit the OpenDoc news group: comp.soft-sys.middleware.opendoc. [Note: you will need a news group reader such as the one built into America OnLine].

CyberDog is the code name for Apple’s OpenDoc-based Internet solution. Information on it can be found at http://cyberdog.apple.com – a beta version of the software is also available at that site, for evaluation and testing.

Over 300 developers have announced OpenDoc parts, or are shipping them already. A partial list of committed companies can be found at http://www.opendoc.apple.com/press/committed.html

‘PartMerchant’ is a service designed to in market and distribute OpenDoc parts to end users. A web interface will allow users to search for parts that suit their needs, then purchase the parts online. Though most features of the system are still under construction, a beta version of the service is avallable for evaluation at http://www.partmerchant.com/default.html