The Ideal Writing Stack

Note: This is a cross-post from my personal blog that seems relevant here too.

I’m creating an author once, publish everywhere toolkit and using it most every place that I can, from blog posts to internal business memos. Sometimes called COPE, this approach seems to continue gaining popularity. I like it because it improves my efficiency and lets me learn some cool technologies and transferrable skills.

The source and the rendered version of this post.
MultiMarkdown syntax highlighted in vim, converted and rendered Chromium

Here’s a quick preview of the process I’m using, and still perfecting.

  1. Author, generally with Vim, in markdown;
  2. Save;
  3. Forget about it;
  4. Convert from markdown to other necessary file formats (PDF, HTML, RTF, DOCX, whatever, and) whenever I want, Gosh!
  5. It looks beautiful.
  6. It’s even more automated.

There are three big reasons that this is so appealing. First, I prefer to write in a text editor. I’m much faster using Vim than I can ever be using a heavy, complicated word processor. As a quick example, in Vim, I can do swap two sentences in four keystrokes, try doing that with a word processor. That speed gain translates to increased focus on the content. Text editors also afford fewer distractions, like fiddling with the heading formats, etc. and that lets me focus on the content – actually forces me to focus on the content.

Second, cross-platform compatibility. The hegemony of Word is coming to a close. Mac, Linux, Android, and co. keep gaining market share. Along with that come more word processors, iWork Pages, LibreOffice/OpenOffice, and others seem to be going strong with more and more adoption around the world. I don’t think seen a quarter of what tablets and other mobile devices are going to do to the traditional office software suite and its file formats. Whatever happens though, I supremely doubt that the competition will immediately result in a harmonized document ecosystem where everybody plays well. (The seeds of that Utopian world may have already sprouted, but more on that in a moment.)

Many people use Google Drive and other cloud-based word processor’s. Of course you can convert and sync and share, but I’ve seen enough frustrations with that to be a little cautious. I want to use tools, develop skills, and create content in the most platform-agnostic way possible. If possible, I would like to avoid putting hours into conversion to various formats after putting hours into authorship. No form of writing is more cross platform compatible than the humble text file. Text files work beautifully with… wait for it… yes, text editors. Bam!

Third, awesome new technologies make it simple; and simple new technologies make it awesome.

Markdown lets me write and safe text files in a way that is readable as-is. The syntax isn’t cluttered with much markup, in fact it’s based on the syntax used in old text only email. Totally readable. And now we get to the seeds of harmonious document Utopia: many of the tools for tablets and other devices enable writing and syncing in Markdown so it’s readable immediately. On the web side of the looking glass, Tumblr allows writing in markdown.

MultiMarkdown is an extension of Markdown syntax that enables me to easily add features like helpful metadata, tables, footnotes, etc. as needed. No additional gizmos necessary. Files still save as text.

pandoc is a CLI tool that converts between a pretty luxurious set of file formats, so I can go from markdown to PDF, or even EPUB, very easily. To sum it up, then, this is the stack – what I need installed on my computer to work:

  1. Vim
  2. markdown
  3. multimarkdown
  4. pandoc

The system is already working. It’s how I’m writing this post, but it isn’t working perfectly. So I’m going to dive into it over the next week, talk about how I set things up (it’s easy), what problems I have, and try some solutions, for the edification of all.