I Heart M Down

Anil Dash wrote a wonderful post extolling the success and virtues of Markdown:

Nearly every bit of the high-tech world, from the most cutting-edge AI systems at the biggest companies, to the casual scraps of code cobbled together by college students, is annotated and described by the same, simple plain text format. Whether you’re trying to give complex instructions to ChatGPT, or you want to be able to exchange a grocery list in Apple Notes or copy someone’s homework in Google Docs, that same format will do the trick. The wild part is, the format wasn’t created by a conglomerate of tech tycoons, it was created by a curmudgeonly guy with a kind heart who right this minute is probably rewatching a Kubrick film while cheering for an absolutely indefensible sports team.

You’re always encountering the work of others within the realm of software. That language, package, or protocol that you’re using was invented or designed by someone, those regular people that Anil mentions in his essay. And usually you don’t think twice about how you came across the technology, or the people behind it. You see something useful, and you use it.

But there’s something different about Markdown. I’ve not encountered a technology quite like it that I remember having such an effect on my dealings with computers and software. For instance, did you know it was Markdown that led me here, typing this post into Micro.blog?

I was building something for myself — I can’t remember what but it was probably some Ruby on Rails web-app for taking notes — and I wanted a format that would allow me to add some basic styling without having to import a HTML-based rich-text area. This was in the late 2000s and such editors were horrible. So I was searching for a nice text based format, and I ran across John Gruber’s Markdown page. I didn’t immediately warm to the format: the idea of using one asterisk for italics and two for bold didn’t appeal to me (those key presses require energy). But what sold me was that there was a parser already written in Ruby that I could use then and there. Also nice was that it had the PHP Markdown extensions with support for tables and definition lists.

From there I started following Daring Fireball. I wasn’t an Apple person at the time but I figured that someone making a format as good as Markdown was worth listening to. One day Gruber wrote about Manton, and I started following him and his work on Micro.blog.1 Eventually, on a particularly lonely day during the pandemic, I took a closer look at what Micro.blog actually was. And what sealed the deal for me was that I could write posts in Markdown.

As for my work (such as it is), if ever I needed to add a remarks field that took free text and presented it as HTML, I would find a way to add Markdown support to it. And I mean everything. There’s an admin console for a system that is deemed critical Australian infrastructure that has Markdown because I saw an opportunity to do so. It’s wonderful to be able to enable basic formatting without relying on anything more sophisticated than a simple text field. And I think this is what drove some of its success. It was sort of “pollinated” across the landscape, with developers liking the format, hating the need to add crappy WYSIWYG editors, and finding Markdown parsers that are easy to integrate.

So, along with Anil Dash, I celebrate the success of Markdown. Kudos to John for making a really nice format.


  1. Podcasts played a role too, but that’s a different story↩︎