An argument for plain text

Throughout the week, I take notes. Sometimes you can’t beat a pencil and paper. Other times, recording my notes by keyboard is good for speed.

Plain text is also good for recording information that I need to act on later (regardless of what device I’m reading on later). I might also make a document for some longer-term information, such as notes I’ve taken from a book I’ve read.

Some typed information can go straight into an email, other information is better suited to being treated as a document [1].

At least for the simpler use cases, I’ve rediscovered the utitily of writing, storing, and accessing that information in plain text.

I remember having what we called a “portable computer” at home around the early 1990s, I think. The computer’s keyboard folded our. Its little green screen would flip up. It had two small floppy drives. My guess is that it was quite a smart machine for its time.

On that computer, I had access to a word processer that I remember as Symfony. It got me writing text. I don’t remember using bold, italics, headings, or special bulleted lists. It would just get you to type. You would cross your fingers and hope it would save the document to the floppy disk. I would also print out my files with what I think is called a ribbon-wheel printer. It was basically an automated typewriter. I was quite proud of those little essays.

Years later, the biggest document in my life was my thesis. I was in fear of Microsoft Word corrupting the entire document. I worked on each chapter in its own (large) document. It was a pain to work on (in several senses of this sentence). The merged documents were just about tamed into a single document to be ultimately printed out.

If Microsoft Word was “underkill” for writing a thesis, it is also overkill for writing a small document for myself. As much as I try enforce “write first, format later” on myself, I usually fail. I get distracted by heading styles. I lose time trying to control what I think should be simple bulleted lists. I start writing a new sentence, and forget that the bolded text styling is still be applied. I tab-indent the first sentence of a paragraph, and suddenly it’s being applied to all new paragraphs. I mess with the ruler settings, against better judgement.

In contrast, writing in plain text is much more towards a “distraction-free” experience of writing. In a plain text editor, it’s just me and the page. I concentrate on writing, on making paragraphs, on editing what I have already written [2].

Apart from keeping my own notes in plain text, I also like the simplicity of it for writing emails or for writing for the web. Forums have used quite simple syntax in plain text for some time, known as BBcode. This probably started as a way to restrict what type of syntax the user could define. BBcode is more complex than it needs to be, though. To write a list, you much use an open tag, then denote each list item with [*], and you must remember to close the list tag.

What if it were easier than that? What if you could write plain text with minimal syntax to denote formatting. John Gruber’s Markdown is my preferred answer [3]. It’s a syntax that is inspired by the expression of thoughts in plain-text emails. It’s quite simple. Begin a line or paragraph with an asterisk, and it will be treated as a list item.

Markdown can be directly translated into HTML code. This makes it ideal for writing content (blog posts, for example!) in plain text with a minimal syntax. After writing your content in your preferred editor, it can then be translated directly to HTML. The Jekyll ~blog engine can take your Markdown file, and generate a blog post from it. That’s what you’re reading from now.

I now use Markdown in taking notes for myself. I use it for writing blog posts. I will use it in my web projects. For example, I built a web app that essentially has a text editor as its backend. The content is displayed as articles (lessons) on the front end. I built it with TinyMCE to allow for visual editing of HTML content. The HTML content is stored in a database table. HTML WYSIWYG editors still have their quirks. They result in complicated repeated syntax, even for what you might consider a simple task such as making some text bold. It’s my intention to switch the editor to a plain text box that will accept Markdown. I could go so far as to simply track a folder of version-controlled article documents written in plain text.

It’s easy to get excited about new technologies, and platforms and syntaxes (perhaps for a nerd, in any case!). For that reason, I do not want to push for any particular editor, blog engine or syntax. I do not want to say that word processing applications don’t have their place, as they certainly still do.

I do, however, want you to write better content by concentrating on your content, rather than having to concentrate on your word processor’s quirks.

[1]: I realise that information that just needs to be stored does not necessarily need to be placed in a document. Services like Evernote encourage us to simply write searchable snippets.

[2]: The text editor also makes a difference. I do like Sublime Text and Scribes editors, where F11 (or Shift-F11) brings you to a fixed-width editing mode.

[3]: Markdown is not the only syntax that addresses this area, but it is the one I’m most familiar with.