Salon Home

.

Tuesday, Jun 6, 2000 7:08 PM UTC2000-06-06T19:08:00Zl, M j, Y g:i A T

Getting the job undone

"Easier said than done -- or undone"

Undo me! BY SIMSON GARFINKEL (06/01/00)

This article is an apt illustration of the old bromide: Easier said than done — or undone.

The ability to perform an “undo” is something that has to be pretty much built into an application right from the beginning. There is no way to generalize it at the level of the operating system. Even so, there are limits to what can be done.

To have complete undo capability requires that the program carefully preserve every piece of information being changed, and that a corresponding undo function be written for each action. In many cases, the undo function winds up being far more complex than the programming for “do in the first place.”

Adding undo for every action is, in most cases, at least three times as complex as a program that doesn’t offer it. In any case, it is likely to be the most underappreciated feature that a programmer can provide.

Some things are just inherently not “undoable,” such as “send e-mail.” There are always going to be limitations. So says the second law of thermodynamics, which states, more or less, that the total amount of chaos in the universe can never be decreased.

Continue Reading

Other News