The need for autosaving

Posted by Pierre Igot in: Macintosh
July 27th, 2003 • 10:08 pm

Matt Gemmell at IrateScotsman.com has an interesting item and discussion about implementing autosaving, i.e. something that automatically saves your documents for you and does not rely on the user remembering to hit cmd-S every 30 seconds to ensure DATA safety.

Since we are so far from such a feature in today’s computing environments, Matt’s item raises many more questions than it answers (and comes with a markedly developer-oriented slant), but it’s a valuable read nonetheless.

As Matt says, computing is still in its infancy. We, as users, have had to learn how to “save” documents from oblivion by naming them and giving them a specific location on disk.

We bought my 72-year-old mother-in-law her first-ever computer a year and a half ago. She still hasn’t learned how to properly save a document and locate it later on to re-open it and edit it. Fortunately, she doesn’t have to. She uses the computer mostly for email and web browsing, with the occasional letter-writing in MS Word.

For email, she uses Mail. Mail does not require you to “save” the contents of your mailboxes. But when you are writing a message, Mail doesn’t save what you are typing automatically. You have to press save (cmd-S) once to get Mail to create a “saved” copy of your in-progress message in its “Drafts” folder. Subsequent uses of cmd-S will UPDATE the draft. When you finally hit “Send”, the message is sent and saved in your “Sent” mailbox folder, and the draft is deleted from the Drafts folder.

In other words, you don’t really need to learn about this saving drafts business unless you worry about Mail crashing in the middle of your writing a message and losing your in-progress message. Fortunately, Mac OS X and Mail are stable enough that my mother-in-law never gets a crash. (I don’t think she’s experienced a single one in a year and a half of using her iBook daily.) So she does not feel the need to “save” her messages while she is in the process of writing them. I do, and fortunately Mail has this draft-saving feature for me. (Mail does crash on me from time to time, although it’s been remarkably stable lately.)

My mother-in-law doesn’t need to save her address book DATA either. Like all good database tools, Mac OS X’s Address Book saves your DATA almost instantly. I say “almost”, because it doesn’t really save it until you’ve turned off the “Edit” mode. I know, because sometimes I add an entry to one of my groups (which I use for color-filtering in Mail), and go to Mail and choose “Apply Rules to Selection” to force Mail to re-apply its filters (rules) to a message from the person I’ve just added to the group, and nothing happens. This is because I am still in “Edit” mode in the Address Book application for this particular entry. It seems to me that Address Book should behave more like FileMaker Pro and automatically save your DATA as soon as you change fields, e.g. when you go from the email address field to the phone number field, while still in “Edit” mode.

She also uses Explorer for web browsing. (I have yet to move her to Safari.) She knows how to create a bookmark, which is effectively the main form of “saving” in Explorer. But I don’t think she uses it very often, especially with the browser’s AutoComplete feature, which remembers the sites she visits most frequently (and effectively works as an autosaving feature).

MS Word is more of a problem. I’ve tried to EXPLAIN the whole business of naming her document and choosing a location for it — but for the most part she cannot be bothered. She uses Word to write a letter to her local MLA, for example, prints it out, and then closes the document window without saving it. In other words, she uses Word as a typewriter. I’ve tried to convince her of the usefulness of “keeping copies” of her stuff, but she doesn’t see the point. Yet Lord knows MS Word can crash. I guess I’ll have to wait until she actually loses half an hour of typing because of an application crash to make my point again. So far, it hasn’t happened. (I could activate Word’s own “AutoSaving” feature, but I honestly don’t trust it. It might cause more document corruption and crashes, for all we know. In addition, it interrupts what you are doing visually with a progress bar in the window’s status bar, and that’s likely to confuse my mother-in-law.)

All this is to say that there are several contexts in which autosaving features are already in place — with various degrees of reliability and intuitiveness. Creating a system-wide architecture for it would undoubtedly be a great challenge — but it’s definitely something that will need to be addressed sooner or later. Mac OS X might be a stable system, but application crashes and power outages still happen.

I am not counting on Microsoft to address the issue properly in Word. They probably think that they have things covered with Word’s AutoSave feature — and they already have enough trouble dealing with document corruption as it is. But if Apple could come up with something reliable that’s available system-wide, maybe they could eventually force even lousy developers such as Microsoft to adopt it. We are talking years, if not decades down the road, however.

One thing that deserves to be implemented system-wide more immediately, however, is automatic preference saving. Mac OS X’s own System Preferences saves most changes immediately, but still has “Apply Now” and “Revert” buttons for the Network control pane, for example. And for the panes where saving is automatic, the user still doesn’t have any idea when exactly the saving takes place. When switching from one field to another? from one sub-pane to another? from one control pane to another?

MS Word’s own preference dialog box is a complete mess, which consists of a mix of application-wide, template-specific, and document-specific settings (which explains why the command is unavailable when no document is open, even though this is a blatant breach of basic UI guidelines). The worst part is that application-wide settings are not saved until you actually quit and relaunch the application itself. All too often I will change a setting while working on a document — and then two hours later I get a Word crash, and realize later that the change didn’t stick.

BBEdit’s preference dialog has a “Save” button, which is one way of addressing the issue, I guess.

I still think that the best approach would be to save preference changes to disk as soon as the preference dialog box/window is closed. That’s what Mail does — and it’s especially important since Mail’s preferences include the filter rules that apply to your incoming email. You don’t want to fine-tune your email filters and then find out later on that your email software didn’t save your changes.

Do we need to ability to “revert” such changes? To a certain extent, yes. But not for everything. I’d say that, for very simple changes (things that just require a click or two), the ability to revert is not indispensable. That’s definitely the approach adopted by Apple in System Preferences (except for the Network pane). On the other hand, for more complex changes, such as the ones involving Mail’s rules, it would probably be a good idea to have some kind of “history” of recent changes automatically saved by the application.

But the places where it would be the most important is where there is the possibility of document or file corruption. Preference files can become messed up. “Trash your preference files” is a common troubleshooting technique. What’s often not mentioned is that this technique also means that you often have to rebuild your customized environment, because these preference files contain valuable information about your preferred work environment. (That’s why they are called preference files.)

The worst situation is, however, with Microsoft Word. (What else is new?) If you’ve experienced MS Word document corruption, you know exactly what I mean — and you know how important regular backups are. Like most applications, Word’s “revert” feature (the ability to cancel up to the last 100 steps) only works as long as you keep the document open. If your document becomes corrupted when you close it (and it happens), you’re out of luck.

The whole Word architecture reeks of sloppiness, in fact. As I’ve already had the opportunity to show, Word handles macro-based actions differently from built-in actions. Then there is the issue with undoing typing and “foreign” characters. And let’s not even mention the “Too many files open” bug. With this kind of built-in unreliability and unpredictability, you definitely do not want to entrust your autosaving features to Microsoft engineers.

The issue of autosaving also intersects the issue of “recentness”. I already had the opportunity to discuss this in a column a couple of years ago. Things have barely changed since then. Thank God for Default Folder X.

In short, autosaving is a complex issue that involves many essential aspects of the computing experience and should be at the core of what “secure computing” is all about. Instead, we all know what “secure computing” means to Microsoft and the RIAA these days… I guess it’s a matter of political priorities as much as a purely technological issue.


3 Responses to “The need for autosaving”

  1. Pierre Igot says:

    I wasn’t really disparaging Apple’s approach in OS X. My objective was more to illustrate the discrepancy from one application to the next, or from one pane to the next. I’m not against discrepancies when they are technically justified, but the user also needs to perceive a certain level of consistency. For example, if changes in System Prefs are immediate, then they should be in Address Book as well.

    The issue with the Network control panel is really separate, as it is, in effect, an attempt to replace OS 9′s “Location Manager” and doesn’t really succeed in that. Many people are still very confused about the whole thing, and Apple needs to simplify the whole approach to networking settings. Ultimately, I suppose Rendezvous will automatically take care of most everything, but we’re not quite there yet.

    As for Mail, I am really quite pleased with the level of reliability. I do get the occasional crash, and occasionally glitches causing certain messages to be flagged as “unread” incorrectly, but on the whole things work great.

    The application badly needs the ability to undo the last move, however. You can undo moving a message to the trash, but not undo moving a message to another mailbox. Doesn’t make sense — and, since this kind of action is “saved” immediately, with no possibility to “revert” to an earlier stage, the Undo ability is critical.

    This whole issue about automatic saving is really at the core of computing as we know it, when you think about it. I strongly believe that the inconsistency is one of the things making people feel insecure about their computers.

    We are using Mac OS X 10.2.6, and the system STILL forgets some of its basic preference settings (such as Date or Number formats) after a power outage. In that case, preference settings that were effectively saved were effectively unsafe Fortunately, they are no bits of crucial information, but still…

  2. ssp says:

    Re Address Book: I agree the Address Book still needs some work (although my main complaint would be that it’s slow and sluggish). The ‘Edit Mode’ seems a bit artificial as well (just consider the way it was done in Claris Organiser/Palm Desktop). Ideally, the Address Book would ‘commit’ the newly changed data when you leave the field you just edited or suspend the application.

    I’ve never experienced the problem you describe about Number formats, but I can remember to have turned off the US keyboard layout many times. It jut keeps re-appearing randomly after restarts.

  3. ssp says:

    I think Apple got it pretty right in Cocoa and in the System Preferences as well: Changes take effect immediately. This seems pretty odd to many computer users which have be conditioned to use ‘save’ and ‘apply’ buttons. I have seen many people not understand that their change of preference has already been noted and applied. Too many years of bad software to grasp such a natural behaviour, I suppose.

    With applications using the standard NSUserDefaults method to handle preferences, corrupting preferences files seems to be less of a problem than it used to be as well.

    As for the Network system preference: I think it’s only half as bad as you say. As changing your network setting can break your internet connectivity, thus interrupting file transfers etc. it definitely shouldn’t happen without confirmation. (On the other hand, it could allow you to change settings other than the active one without confirmation)

    Re Mail’s filter preference: Surely Undo would be nice, but at least Apple made sure that you have to confirm every potentially destructive action.

Leave a Reply

Comments are closed.