February 22, 2020 at 8:36 AM by Dr. Drang
You probably read a few articles this past week commemorating Larry Tesler, the father of cut/copy-paste and the most prominent advocate of modeless computing. It’s good to read what other have to say about him, but if you have the time you should read some of his own writing.1
His ACM article, “A Personal History of Modeless Text Editing and Cut/Copy-Paste,” is probably the best distillation of the ideas he’s known for and the connection between them. The main thread is a fun historical narrative, but don’t skip over the sidebars in the article. In “How Modes Degrade Usability,” he ties modes to the once-predominant verb/object method of telling a computer what to do. In verb/object computing, you give the computer an action command and follow that with the item(s) on which to perform the action. On a computer of today, that would be like selecting from the menu and then selecting the text to copy.
That may sound insane, but one of the things that made the Mac initially puzzling to people who were heavy users of PCs and mainframes back in the mid-80s was that it flipped verb/object around. I remember having to explain to several people that the main thing to remember on a Mac was that you never go to the menu bar for a command until you’ve selected the thing that the command would act on. The verb/object ordering was hard to shake for them because it seemed very English-like and conversational. Those of us who use the command line (or Vim2) still do a lot of verb/object computing, but nowadays we do it within a modeless windowing environment. Modal computing tends to be the exception rather than the rule.
Tesler’s ideas about how computing should be done has become so pervasive I imagine it’s almost inconceivable to younger readers that there was ever a different way. When Steve Jobs stepped down as CEO of Apple, I wrote “In a sense, you’re using a Steve Jobs product whether it has an Apple logo or not.” Much the same can be said of Larry Tesler.
Kakoune is a modal text editor that turns verb/object around. By highlighting selections (like Vim’s visual mode) all the time, it allows you to make selections first, see what they are, and then issue the commands that act on them. It’s an interesting exception to the connection Tesler draws between modal and verb/object ordering. ↩