Consideration of "saving" files



So looking into the star trek future of GNOME, what would happen if we
did away with "saving" files, and instead provided a model where users
could "revert" to document changes using a few different methods (say,
by time/date or provide a list of changes ala Photoshop 5 undo).

Saving is a pretty archane way of working...and really isn't all that
essential for certain sorts of operations. There's nothing we're going
to be able to do for things like text files...but consider with Gnumeric
or AbiWord...

You open a document and starting working on it. The computer will
periodically write your changes to disk (maybe once a minute, or maybe
it will vary based on the speed of the I/O device) in the background.
But the trick is that the computer is storing information with context
information about the changes... My understanding for the reasoning
behind "saving" rather than just writing changes straight to disk in a
modern context is that people will sometimes make changes and decide
they don't want them.

So lets say I type for a while and decide I don't like the modifications
I made...I go to the menu and select "Revert changes" (obviously
something more descriptive than that), which brings up a simple dialogue
from which I can select / type "15 minutes ago"...and poof I have
whatever the document looked like 15 minutes ago.

An advanced user feature would be the ability to "tag" the document,
which would achive exactly the same function as saving. You can revert
the document to any tag.

This seems like a more flexible and human system (and I apologize for
all the CVS terminology that snuck in here)... I actually use CVS for
many personal projects / documents specifically to get this sort of
ability (and of course its more cumbersome than saving because its not
integrated into my program and I have to save on top of things).

This also fits in nicely with the persistence work we've been putting
into place using gnome-session. It would be very cool if we could get
GNOME to the point where you could flip the power switch at any point,
and it would boot back up exactly as you left it.

-Seth





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