A couple of weeks ago, I was talking to a writer friend of mine. It wasn’t long before the conversation turned to tools of the trade. Both of us write for the web, but the tools we use are quite different. I’m a plain text and Markdown fan, she prefers to write in Microsoft Word.
I found her use of a word processor surprising. I haven’t touched a word processor like Word or Pages for years. Almost everything on this blog was written in Markdown in a text editor. Word processors are overly complex, packed with features I don’t need, and — worst of all — they put too much focus on formatting text instead of creating content. The only possible reason I can think of to use a word processor to write web content is if it will be sent to a non-technical user who insists on delivery in Word’s proprietary file format.
If you’re not familiar with Markdown, it’s a simple markup language. You can think of markup as additional symbols added to text to indicate its function on a web page. Markdown can be used to format headers, emphasis, and lists, and to add images and links. The idea is to create files that are as easy to read as plain text, but that contain everything you need to produce HTML to publish on the web. Which brings us to the second meaning of Markdown. It is also a text processor: a program that takes Markdown text and outputs correct HTML.
My writer friend is smart, informed, and knows very well that most professional web writers use Markdown. She choses to use a word processor, and when I talked to her I was forced to justify my choice — why do I use Markdown?
In this article, I’d like to share some of the reasons I gave her.
The first reason to choose Markdown isn’t about Markdown, it’s about the file format. Markdown files are plain text. They can be opened and edited in literally dozens of applications — programmers’ editors like Sublime Text, writers’ editors like Byword, even command line editors like Vim if that’s your thing. Any device I pick up — phone, tablet, laptop — will be able to display and probably edit plain text. I have a folder in my DropBox that contains hundreds of articles written in Markdown — it’s a couple of megabytes of text that are available everywhere. Plain text is a universal file format that everyone can read, and that’s not likely to change for decades, something that can’t be said for proprietary formats.
Write, Don’t Format
To write a headline, I type a # character. That’s it. No futzing with formatting that will be overridden by the site on which the article is published. The same goes for almost any other formatting I might need to do. I spend no time at all thinking about formatting, and never have to deal with the formatting glitches and annoyances that used to plague me when I used a word processor. I write, I indicate the job a piece of text is supposed to do, and the publisher’s CSS handles the rest.
It Converts To HTML
HTML is the format of the web. The page you are reading now is HTML. Markdown converts to universally comprehensible HTML that can be published immediately. It can be pasted in WordPress and any other CMS. Static site generators like Jekyll understand Markdown natively and will process it into HTML.
It’s Easy To Learn And Read
If you’ve been writing for the web for a few years, you’ll probably have experienced writing directly in HTML. It wasn’t fun and wasn’t readable. If you send a Markdown file to someone who has never seen Markdown before, they’ll be able to read it easily. Markdown is just the content with some unobtrusive symbols.
For writers, Markdown is easy to learn. It doesn’t take more than a few minutes to grasp the basics, and there are dedicated Markdown editors that take care of some the more complex markup like adding a link.
Markdown Is Scriptable
At the top of this article there is a link to Daring Fireball, which is John Gruber’s site. He invented Markdown and wrote the first Markdown processor. To create that link, I didn’t visit the site in a browser, copy the URL, open a link creation dialogue, and paste in the URL. I wrote “[Markdown](daring fireball markdown)” and hit a keyboard shortcut that ran a script. The script did a Google search for “daring fireball markdown” and filled in the URL of the first result. The script is called SearchLink and the way I used it here shows a fraction of what it can do.
Because plain text is so easy to handle, there are many scripts and utilities that make writing Markdown more efficient.
Markdown makes me a faster, more efficient, more focused writer. It’s saved me countless hours. None of which is to say that using a word processor is wrong, but I think it’s a good case to at least give Markdown a go.