Delete the Save Button
slate.com
slate.com
Auto-save for recovery purposes is one thing, but when completely replacing the 'Commit when I tell you' to 'Save everything in real time' can have unintended consequences.
My favorite UI would be a mixture of Apple's Lion logic and Google wave: Give me a prominent time slider, give me snapshots each time I hit the save button (which are basically just special markings on the slider) and let me use the slider to easily revert to any state. It gets more complicated with multiple users who commit asynchronously, which is something I will try to solve in an upcoming project of mine.
A good example of this principle IMO is Apple Pages and Numbers. They are both succeeding at being powerful/expressive when you need it (Cmd-alt-i) and easy for the other times. It's just a shame that they haven't been updated and still lack some important features like plugins and bibliography.
In fact, there is no "commit". You just do things. And that's the way it should be.
After getting used to that, it's pretty annoying to use Windows, which keeps asking you whether you want to cancel or apply things in every possible situation. Sometimes it even defaults to reverting your changes if you just close the dialog box (like when changing the desktop background image in Win8, for example).
I think the save button more or less provides a way to save a version or "mark" one. I don't want to see the button disappear, but rather change into a "mark version" button that allows auto-saving to happen, but gives the user the opportunity to set their own points of reference in a document's history. In software that auto-saves, I often feel a bit disoriented. It makes it harder to jump back to a certain state of a document.
I think autosave has a significant impact on versioning, and while it certainly has some pros, it's not by any means an absolute improvement.
In summary:
Computers are smart enough to autosave. The save button is an anachronism. We should think about retiring it.
I think saving should not be needed except when you want to send the file to someone. Work already creates temp files which autosave? Part of me likes the idea of saving being option... just making word autorestore without being prompted. However, that would obviously be a significant, and prohibitively confusing, change in workflow for users.
Once you save, you've lost the previous version, especially if the program dies and you lose undo history.
In software development specifically, there's quite few tools that automatically pickup/use files when they're saved... Meaning you'll try to compile or use invalid files.
tldr; don't do this. word already guards against losing changes anyway.
When it comes to version control, you do actually want to control when a version is saved, because there's meaning behind the different save points, conveyed to others that might want to fork and merge. Wading through a history of meaningless changes is no one's idea of fun, because the intention of the version isn't conveyed well only through the changeset.