Text Patterns - by Alan Jacobs

Friday, July 25, 2014

the right tools for the job

This talk by Matthew Kirschenbaum provokes much thought, and I might want to come back to some of its theses about software. But for now I'd just like to call attention to his reflections on George R. R. Martin's choice of writing software:

On May 13, in conversation with Conan O’Brien, George R. R. Martin, author of course of the Game of Thrones novels, revealed that he did all of his writing on a DOS-based machine disconnected from the Internet and lovingly maintained solely to run … WordStar. Martin dubbed this his “secret weapon” and suggested the lack of distraction (and isolation from the threat of computer viruses, which he apparently regards as more rapacious than any dragon’s fire) accounts for his long-running productivity.

And thus, as they say, “It is known.” The Conan O’Brien clip went viral, on Gawker, Boing Boing, Twitter, and Facebook. Many commenters immediately if indulgently branded him a “Luddite,” while others opined it was no wonder it was taking him so long to finish the whole Song of Fire and Ice saga (or less charitably, no wonder that it all seemed so interminable). But WordStar is no toy or half-baked bit of code: on the contrary, it was a triumph of both software engineering and what we would nowadays call user-centered design…. WordStar’s real virtues, though, are not captured by its feature list alone. As Ralph Ellison scholar Adam Bradley observes in his work on Ellison’s use of the program, “WordStar’s interface is modelled on the longhand method of composition rather than on the typewriter.” A power user like Ellison or George R. R. Martin who has internalized the keyboard commands would navigate and edit a document as seamlessly as picking up a pencil to mark any part of the page.

There was a time when I wouldn't have understood how Martin could possibly have preferred some ugly old thing like WordStar. I can remember when my thinking about these matters started to change. It happened fifteen years ago, when I read this paragraph by Neal Stephenson:

In the GNU/Linux world there are two major text editing programs: the minimalist vi (known in some implementations as elvis) and the maximalist emacs. I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple-seeming problem of editing text. If you are a professional writer–i.e., if someone else is getting paid to worry about how your words are formatted and printed–emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish. For page layout and printing you can use TeX: a vast corpus of typesetting lore written in C and also available on the Net for free.

The key phrase here, for me, was the deceptively simple-seeming problem of editing text. When I read those words I realized that editing text was much of what I needed to do, and that Microsoft Word wasn't very good at that. Stephenson's essay (still a delight to read, by the way, though quite outdated now) set me off on a long quest for the best writing environment that has ended up not with emacs or vi but rather with a three-component system. I have written about these matters before, but people ask me about them all the time, so I thought I would provide a brief summary of my system.

The first component is my preferred text editor, BBEdit, which seems to me to strike a perfect balance between the familiar conventions of Macintosh software and the power typically found only in command-line text editors.

The second component is the scripts John Gruber (with help from Aaron Swartz) wrote to create Markdown, a simple and easy-to-use but powerful syntax for indicating structure in plain-text documents.

The third component is John MacFarlane's astonishing pandoc, which allows me to take my Markdown-formatted plain text and turn it into … well,almost anything this side of an ice-cream sundae. If my publisher wants a MS Word document, pandoc will turn my Markdown text into that. If I want to create an e-book, pandoc can transform that same text into EPUB. When I need to make carefully formatted printed documents, for instance a course syllabus, pandoc will make a LaTeX file. I just can't get over how powerful this tool is. Now I almost never have to write in anything except BBEdit and my favorite text editor for the iPad, Editorial.

That's it. With a good text editor and some scripts for formatting, a writer can focus all of his or her attention on the deceptively simple-seeming problem of editing text. That makes writing less frustrating and more fun. This is what George R. R. Martin has achieved with WordStar, and he's right to stick with it rather than turn to tools that do the essential job far less well.


  • Great post! My tools are similar, with the substitution of Vim for BBEdit, but I started with TextWrangler when developing a markdown-to-pandoc-to-everything workflow.

    I also now use Editorial on the iPad, and have even managed to get Pandoc functionality (sorta) on the go with Docverter, using this Editorial workflow.

    Also don't know if you've heard, but Pandoc's next release will include a DOCX reader, which will reduce almost to the vanishing point my need for Microsoft Word!

    P.S. The Neal Stephenson link appears to be broken.

  • Good to hear about that Docverter workflow, Caleb! Very cool.

    The Stephenson link works for me — it goes to the page where you can download the text I quote (the full text of the essay not being online legally, as far as I know). If it doesn't go to that page, please let me know.

  • When I click on the Stephenson link, I get this error: "This site does not exist within the LDAP database."

  • Hm. Still working for me. The address is www [dot] cryptonomicon [dot] com [slash] beginning [dot] html — if that doesn't work for you I got no clue why.

  • A while back you mentioned in one of your posts that you use BBEdit for all your writing. This interested me as someone who also uses plain text in an academic environment. I was disappointed, however, that you did not give any further details on how you made this work. Thanks for filling the gap!

    I use an almost identical system swapping out BBEdit for MacVim.

Post a Comment

[Basic HTML tags can be used in this comment field.]