Markdown Isn't Perfect

Markdown has won. It's widely deployed, including many large websites (Github, Stack Overflow, etc). It isn't perfect, but you should Use​Markdown​Anyway.

what's wrong with markdown?

There are ton of different implementations, all slightly incompatible. The commonmark team even have a babel comparison tool so you can compare how the same syntax renders in different implementation.

surely it's still a good default?

Markdown (and commonmark) allow embedding of HTML by default. This is part of the standard.

As a result, enabling markdown gives you XSS vulnerabilities!

Markdown libraries usually enable you to disable raw HTML, but it's an unsafe default.

what about basic use cases?

Markdown is great for editing simple text, but the lack of tables is a real shame. Markdown also lacks a canonical way of extending the syntax, and the community hasn't standardised on any particular approach. There isn't any obvious syntax to use (beyond extending links).

further reading

http://www.wilfred.me.uk/blog/2012/07/30/why-markdown-is-not-my-favourite-language/

https://twitter.com/_wilfredh/status/1139893540618678272