logoalt Hacker News

How Markdown took over the world

398 pointsby zdwyesterday at 5:52 PM303 commentsview on HN

Comments

Havocyesterday at 10:59 PM

Sound write-up. It is missing the #1 reason I like it though - it's fundamentally text.

No format/vendor lock-in and very amenable to living in a git repo. For my note taking that's already game over right there against everything else. I don't want to worry about whatever cursed format OneNote uses is still something I can extract in 2035.

I also like that it's become a defacto standard that LLMs speak. I can tell it to look at the code in this server repo and make me a API_documentation.md and it'll grasp that I want a text based summary of how to use this endpoint

show 12 replies
tomeraberbachtoday at 1:49 AM

I added Markdown support to Google Docs as a 20% project. Honestly honored to be included in this Markdown history :)

show 6 replies
levmiseritoday at 12:38 AM

> ...that it was too difficult or inconvenient to write out full HTML by hand

It's not necessarily that writing HTML or other markup flavors is harder (obviously it is), but the beauty of Markdown for me is that it's perfectly readable in its raw form as well as with an applied styling.

And speaking of customizing the 'look' of markdown, a shameless plug for a markdown editor I've been working on with extensive customization options: https://kraa.io/about

show 4 replies
NelsonMinaryesterday at 10:51 PM

I think it's a littly funny he characterizes "Had the right flavor for every different context" as an advantage. It drives me crazy that Markdown is not the same everywhere and I'm still regularly getting confused about *bold* or **bold** or *italics*. (Curse you, Slack's weirdo version.)

I respect Anil's argument that the extensibility has helped it be adapted to different contexts, and in practice the looseness of it doesn't cause a problem. I do wish CommonMark had more traction (and acceptance and use of the name Markdown). It'd be nice to have a standard, at least for the basic stuff.

show 4 replies
rkp8000yesterday at 11:03 PM

I love Markdown. I'm a bit surprised, though, that you still can't open a .md file by default in most web browsers. It seems like it should be quite trivial to have the browser automatically convert it to html and display it.

show 5 replies
janwillembtoday at 11:19 AM

The writeup does not mention Jeff Atwood (Stackoverflow founder) trying to convince Gruber to standardize markdown. Atwood approached him publicly in a series of blog posts, but Gruber kept silent, and if I remember correctly finally declined stating that he didn't want to spend time jumping through other persons' hoops. Although it sucks that markdown is not standardized, I still see this as an inspiring example of a person just doing what he wants to do.

show 3 replies
chuckadamsyesterday at 11:25 PM

The author of CommonMark and Pandoc has a new format called Djot: https://djot.net/ that I've been meaning to check out. Supposedly more sane to parse, and it comes from someone who would definitely know about that sort of thing.

show 4 replies
Johnny_Bonkyesterday at 11:37 PM

I'm fairly new to all this, but my understanding is that Markdown is great for a few reasons:

It's just plain text, so no vendor lock-in and you can ripgrep/fzf/grep through it Lives happily in git repos with proper diffs LLMs speak it natively - they output Markdown, they understand Markdown input Way easier for agents to parse than PDFs (which are binary, layout-focused, tables turn to mush) Can do tables (at least in GFM), headers, code blocks, links - all structure preserved

What it can't do (as far as I understand): complex layouts, precise typography, embedded binary content, anything that needs pixel-perfect rendering. Am I missing anything? What are the other limitations I should know about?

show 7 replies
gregopettoday at 4:57 PM

Both ASCIIdoc and reStructured text are older and better (subjective, of course), yet Markdown still won. Happens sometimes, nothing to see, I've moved on (with just a little grumbling). Now I often can't remember their syntaxes anymore, Markdown is everywhere.

show 2 replies
simonwyesterday at 9:55 PM

I enjoyed "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".

jillesvangurptoday at 10:45 AM

Markdown got there first/early depending on your perspective. Things like AsciiDoc got popular much later when AsciiDoctor was released around 2009 (though it technically existed already when Markdown was created) and is aimed at people who care about structured documentation. It's not aimed at casual users.

Likewise, things like org mode, which also emerged around the same time, catered to a niche of emacs using people. Which almost by definition is a subset of techies. It wasn't a logical choice for a mainstream blogging tool.

Markdown was aimed at people that used blogging tools (initially), and later any other kind of tool that accepted text. It spreading to tools like Slack, Github, etc. is no accident. Github actually has supported plenty of alternatives for documents. But they picked markdown for issue tracking, pull requests, etc. Because they had to just pick something and Markdown was the most popular.

By the time AsciiDoc became more popular (2009ish), Github was already being developed. With Markdown support. AsciiDoc was a niche thing, Markdown was already somewhat widely used then. It was an obvious choice. Them picking Markdown was important because the whole OSS community started using Github and got exposed to Markdown that way.

The rest is history. Other formats existed (textile, and various other wiki formats). They have features that are important to some people. But getting people to switch who don't really care about those features is hard. It's a bit like VHS over Betamax. Was it better. Not really. But it was there and video rental shops had to pick a format. And that wasn't Betamax when the dust settled.

thelastgallontoday at 5:46 PM

This reminds me of Adam Bosworth's talk on HTML (https://adambosworth.net/2004/11/18/iscoc04-talk/): It is an ironic truth that those who seek to create systems which most assume the perfectibility of humans end up building the systems which are most soul destroying and most rigid, systems that rot from within until like great creaking rotten oak trees they collapse on top of themselves leaving a sour smell and decay. We saw it happen in 1989 with the astonishing fall of the USSR. Conversely, those systems which best take into account the complex, frail, brilliance of human nature and build in flexibility, checks and balances, and tolerance tend to survive beyond all hopes.

Markdown is an 'improvement' over HTML, makes it even more flexible and tolerant and easier to write without using tags.

show 1 reply
walterbellyesterday at 9:56 PM

What's preventing browsers from rendering a common subset of markdown without the need for browser extensions, with fallback to the current default of plaintext if parsing fails? LLM output can be copy-pasted for rendering by chat messengers and notetaking apps (e.g. DevonThink). If LLM markdown output continues to proliferate, does it become the defacto common-by-volume subset of Markdown, which browsers could standardize and render?

show 1 reply
nzoschkeyesterday at 9:46 PM

I love Markdown.

My favorite Markdown creation was "GistDeck", a bookmarklet that turned a GitHub Gist of Markdown content into a slide show.

So much easier to make and share than a PowerPoint deck.

https://github.com/nzoschke/gistdeck

show 1 reply
nvadertoday at 2:04 AM

I think there is another article waiting to be written, why ReStructured Text lost.

I know that in my younger years I would get a lot of flak for converting .rst files into .md when I joined projects.

(As I got older I just stopped seeing .rst that much)

show 3 replies
swyxyesterday at 10:41 PM

sharing my list of mistakes in markdown that Gruber endorsed :) https://news.ycombinator.com/item?id=22776108

show 1 reply
KronisLVtoday at 1:20 PM

I've seen people who prefer HTML for user-submitted messages and other stuff that might need some formatting - "But what if we need to add colors to the text? Markdown isn't even one coherent standard, there's multiple ways to render it! What about justifying text? What about..." all while fighting increasing amounts of XSS issues and also the HTML style classes (because ofc JS editors add those, instead of even inline styles if you care about portability so much or semantic HTML where possible), as well as inconsistent looks after storing the data in a relational DB and doing various transformations to it over the years.

If you ever hear any of that, don't listen to it. Just use Markdown. If you're building a messaging system or an announcement system instead of a fully fledged CMS - YAGNI/KISS. Or pick anything other than HTML, even BBCode.

TomMasztoday at 4:34 PM

There's always room for a tool that does most of the things that people need to do, alongside far more complicated tools that do that plus a whole lot more. If all you want to do is maybe make some text bold or italic or have a bullet list, you can do it in Word, but it's way more than you need (plus it's not text), Markdown solves your problem, and if someone doesn't have a tool for viewing Markdown, it's still perfectly readable in a text editor.

Peteragaintoday at 8:14 AM

The original idea was there with html 1.0. The lesson we needed to learn was that some think you can't sell stuff to do things if doing them is simple. https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...

Perhaps md is an opportunity to re invent the web: a browser for just md AND a search engine with an open algorithm that indexes just what is visible.

show 1 reply
w10-1yesterday at 9:31 PM

This is good and detailed, but misses a broader trend: how "worse is better" started to win - first Java over C++, then python and javascript over Java, and here markdown over Word and docbook.

When markdown emerged, docbook was getting even more elaborate, and vendors everywhere had for decades been locking people into frameworks and languages with fantastic features that were hard to use -- and then the internet bubble had popped. Then people realized they'd thrown away years building complex system, and had little tolerance for promises.

Markdown is something you can use in its native form. It's both source and destination, with a touch of future-proofing: if the opportunity arrives, you can polish it into anything, and mostly parse it yourself.

(What's surprising to me is that pandoc barely registers when compared with markdown on google trends since 2004; pandoc is the reason I switched completely to markdown in ~2010)

show 13 replies
timokoesterstoday at 10:02 AM

Markdown has a lot of weird choices and works best for longer documents.

Check out my "Advent of Markdown" where I go through surprising markdown behavior: https://mastodon.social/@timokoesters/115643467322561173

codazodatoday at 1:36 AM

Shameless plug, I’m writing the book on how to publish YOUR book with Markdown.

https://www.48hourpress.com/publish-with-markdown/

show 1 reply
karel-3dtoday at 3:10 AM

markdown is horrible, horrible format to parse; there are so many ambiguities; CommonMark is so complex because of that and still has so many ambiguities.

it's like YAML: it looks so simple at first, and then the horrors start if you try to use it seriously.

in both cases the most horrors lie in the spaces/tabs/newlines.

show 1 reply
WalterBrightyesterday at 10:13 PM

Markdown vs HTML is a fine illustration of what humans consider to be natural and intuitive is anything but to a computer.

show 1 reply
hnarayananyesterday at 10:28 PM

I love it. Almost as much as I do org mode.

kazinatoryesterday at 10:24 PM

Markdown filled an obvious void: the need for something with more formatting capability than plain text, but editable and version-controllable as plain text, without the obnoxious verbosity and complexity of typical markup languages: i.e. more or less readable as plain text also.

seymorestoday at 6:49 AM

Found myself needing to read a lot of MD docs and wanted to read them quickly in the terminal. didn't find any light, so I whipped one up quickly with Codex.

It's a TUI md reader, fast and cheap on the memory, because of Rust. Give it a try if you find yourself wanting a quick MD reader in a terminal.

https://github.com/seymores/mdr

show 1 reply
awepoifawpoifjtoday at 4:54 AM

Markdown took over because GitHub decided it should, instead of picking ASCIIDoc which is a better format, has a standard, and is literally used by the git documentation itself.

noutyesterday at 10:14 PM

I'm a big fan of markdown, it's easy enough to remember the basic syntax and your files are portable across hundreds of different editors. If one day I decide to switch away from Obsidian, I can just plug the same files into another good editor.

akshayshahyesterday at 9:27 PM

I like Markdown, and generally agree that it strikes a nice balance between correctness and usability...

...but it's delicious that this blog post also demonstrates an ambiguity in Markdown: how to handle intra-word emphasis. In the rendered output, "mark_up_" and "mark_down_" were probably intended to be "mark<em>up</em>" and "mark<em>down</em>", but the underscores were instead rendered literally.

I do appreciate that Markdown's solution to ambiguities like this is dead simple - just inline some HTML.

show 2 replies
jrm4today at 5:02 PM

It's fundamentally 7 and 8, I think.

It's just like comedy, timing is everything.

NamlchakKhandrotoday at 12:43 AM

Reason it won:

Easier to understand Shape it creates is scannable

GitHub render it by default

simonwyesterday at 10:01 PM

Here's a fun trick: if you add .text to any URL on Markdown creator John Gruber's blog you'll get to see the hand-authored (bar the metadata and tags bits) Markdown he wrote for that entry.

Example: https://daringfireball.net/linked/2026/01/09/moylan.text

... and if you look closely at some of the entries you might spot custom Markdown features that aren't part of the published spec.

show 1 reply
jokoontoday at 2:38 PM

I wish there was a markdown renderer, that doesn't use HTML

It would be insanely faster to render

syngrog66today at 8:58 PM

90%+ of its value is that its plain text. with just a few simple conventions for annoting

the individual also claimed (in so many words) that the trillion-dollar AI industry is "controlled" by Markdown. he has either a deeply wrong understanding of the technology, or a shameless ambition for making wild claims to boost traffic

strong writing skills. but weak on technology and nuance, or history of our field

dhruv3006today at 4:39 AM

Made an api client based on executable markdown : https://voiden.md/ .

ricokatayamatoday at 10:09 AM

for me, the idea of structuring and formatting texts keyboard-only was fundamental for my adoption of markdown. iA Writer as an app that pushed me in that direction. Markdown, iA Writer, and my Keychron are part of my routine.

pmbanugotoday at 2:31 PM

Would we have a better or evolved markdown?

O1111OOOtoday at 8:21 AM

My terminal MD viewer:

pandoc readme.md | lynx -stdin

I like the results better than glow, bat and a few other viewers.

pwdisswordfishyyesterday at 10:55 PM

I think it's fitting that his attempt to emphasize "markup" and "markdown" was foiled by his own blog's Markdown parser.

show 1 reply
gitttnwmrlgtoday at 9:27 AM

On the contrary, more and more repos are using RST recently.

show 1 reply
fittingoppositetoday at 4:01 AM

Are there any ways to type email in markdown? Never thought of it so far...

show 2 replies
Analemma_yesterday at 11:49 PM

This is a good article, although I wish it had talked a little more about the standardization (or rather, the lack thereof) in Markdown. I get why it didn't, it's trying to be positive about something that is an overwhelming net positive for the world, but I think a "warts-and-all" treatment of the history would be more honest.

I appreciate that Gruber brought this very helpful thing into the world, but OTOH he was such a prick about the whole Standard Markdown debate, for no real reason other than ego. And it resulted in Markdown remaining an ill-defined standard to this day, with occasional compatibility issues still cropping up even though most platforms support most of "Github-flavored Markdown" (itself a stupid name and indicative how badly this has gone).

show 2 replies
erlkonigyesterday at 10:38 PM

I just hate that (1) you can't nest anything into a table (2) it's different everywhere.

Restructured Text is much more capable, and yet here we are, still using Markdown.

My markdown pages often also have HTML in them, I mainly use Markdown so if I decide some overlong thing I wrote on Reddit actually doesn't suck, I can copy-paste it into a webpage, and my web-server's .smd handler does the convertion. Lowest common denominator. :(

NooneAtAll3today at 1:19 PM

My only complaint about markdown is insistence of transforming "1)" into "1." and "-" at the start of a line into a dot

I know what I want, ffs. And I don't want html

Kyetoday at 1:10 PM

I can never remember what's what with Markdown. HTML has the important feature of providing a hint to function in the tag. I struggled learning HTML, but I eventually memorized all the tags to the point that I can still hammer out boilerplate all these years later. It's always a coin toss on whether I'll bold or italicize the first time I use Markdown in a while.

I still prefer WYSIWYG.

igtztorreroyesterday at 10:22 PM

Just waiting Google Workspace create a Markdown Document Editor and Viewer.

Chatgpt is pushing markdown to the maximum expose, Google & Microsoft sooner or later should react.

show 1 reply
adamnemecekyesterday at 9:47 PM

Markdown was cool for a while. I have switched to typst and boy is that an improvement. It’s the love child of latex and markdown. With markdown you’d still have to embed latex, while typst has its own thing that is nicer than latex.

show 3 replies
nikautoday at 3:40 AM

Best thing about markdown is the barrier to entry of non technical folks, it stops them shitting over technical documentation and steers them to Confluence or sharepoint for their die on the vine slop.

kittikittitoday at 6:15 AM

A brown bag I did almost a decade ago informed some fellow developers about Markdown. Almost all of them dismissed it and confided that they didn't think it would catch on. Once again, I'm glad the gatekeepers are communicating this, one less humiliation ritual.

🔗 View 6 more comments