Document database (was Re: Writing a GNOME mail client.)



atmczen@ibm.net wrote:
> 
> Hello Braden,
> 
> On Sun, 18 Apr 1999 04:26:10 -0400
> "Braden N. McDaniel" <braden@shadow.net> wrote:
> 
> > This also bears some striking similarity to an idea Cooper expresses in
> > his excellent book, _About Face_; though like Scott Wimer's description,
> > Cooper's idea encompasses all application-client documents.
> Sounds really close to what I want.  'all application-client
> documents' is the key word that caught my eyes.
> 
> > The database Cooper describes includes a few other goodies, like a
> > sophisticated document history system to provide a "persistent undo".
> Can you elaborate a little more about those 'goodies' for the list
> members?  It sounds like something we can all benefit from.  It also
> sounds like something we can implement with a database and variety of
> CORBA based components.

I'd strongly recommend getting Cooper's book [1] and reading it cover to
cover. While the examples are generally given in terms of Windows, the
ideas are applicable anywhere, and most of them are very good. Chapter 8
is devoted to this particular item. Note, though, that this is a UI
design book, not a database implementation manual. So it's sparse on
implementation details.

Here are the basics of his description:
 * Saving is automated; theoretically, it occurs as often as possible,
but not so often that performance is compromised. There is no explicit
"save" per se.
 * Saving the document *does not* clear the Undo history!
 * Undo is sophisticated, and should maintain a significant backlog. It
should be persistent between sessions of the application.
 * "Create copy" and "rename" are application functions.
 * There is a notion of "milestone copies" that users can commit to
permanently mark valuable points in the document's revision history.

I agree with you that CORBA seems like an excellent foundation for
dealing with the underpinnings of such a system. I also think that if
GNOME were to incorporate this functionality, it would shortly leapfrog
Windows and most other OSes in terms of usability by a significant
margin.

I like the notion of maintaining the documents in file-system files
while using a database for the index. This seems like the best
compromise to guard against corruption of the actual documents. As far
as the possibility of the database being corrupted, the fact that
Applications Crash must be taken into account, and every safeguard needs
to be taken to ensure that this results in the absolute minimum data
loss.

Braden

[1] ISBN: 1-56884-322-4



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]