OpenDoc, Document Based Architecture/Metaphor

One of my new co-workers appears to have written a book on OpenDoc patterns, so I thought I’d see what OpenDoc was all about. It looks interesting:

From the users viewpoint there is only one “application” and that is the OS, to which you can you add services to and/or update the services of. You might as well not even use the word application at all. You don’t add applications to give a new capability, instead you add, upgrade and/or replace services.

You see the ghost of OpenDoc in OS X itself . For example, clicking on a background application’s window only brings that one window to the top, not the entire application. Unfairly maligned by some, this OS-wide window-oriented behavior allows for greatly improved (genuinely usable) user interaction between disparate “applications” – that is, disparate documents. Obviously you can also see it in Cocoa “Services” (aha!) which are more than many realize – services can change the behavior of the contents of windows (documents). For example the OS X spell-checking service. Services are not just commands in a sub-menu of the Services menu.

“The Ghost of OpenDoc”