Markdown Is Holding You Back
Mood
controversial
Sentiment
negative
Category
tech_discussion
Key topics
Markdown
Productivity
Writing
Discussion Activity
Active discussionFirst comment
4h
Peak period
13
Hour 19
Avg / period
4.4
Based on 71 loaded comments
Key moments
- 01Story posted
Nov 22, 2025 at 3:03 PM EST
1d ago
Step 01 - 02First comment
Nov 22, 2025 at 7:13 PM EST
4h after posting
Step 02 - 03Peak activity
13 comments in Hour 19
Hottest window of the conversation
Step 03 - 04Latest activity
Nov 24, 2025 at 1:30 AM EST
1h ago
Step 04
Generating AI Summary...
Analyzing up to 500 comments to identify key contributors and discussion patterns
Short of writing in raw Postscript, I can't think of a more completely different set of strengths, audiences, and applications. I had to get to a company with more than 5,000 employees, 20 product lines, and 5 required i18n locales to find one where the overhead, god-awful ergonomics, and half-broken tooling of DITA were appropriate for the scale of the work _and also_ resourced enough to paper over every miserable facet of its implementation.
If you're using Markdown today _at all_ for a task, DITA isn't appropriate for it. If DITA was appropriate for the task, you never would've picked Markdown to accomplish it to begin with. Don't waste your time with it either way.
"Markdown is not great for writing complex documentation. Why not use XML instead?"
Can you provide more info about how exactly DITA+tooling fell on its face ?
I want figures. I want linked references. I want custom styling for images, and for blocks of text (eg warnings, notes, etc). I want a TOC and numbered chapters and sections. Sometimes I want a bibliography. Or a table generated from data within a JSON file.
You don't need this stuff for a readme file. But IMO markdown isn't powerful enough for blog posts, documentation or longer form content.
So yes for me markdown is definitely powerful enough for blogging and complex technical writing - has been for the last 6 years- with a few small extensions and I’ll eat my hat before I use anything xml based or reinvent html…
If markdown were actually good enough, you wouldn't be reaching for bespoke extensions to markdown to make it more capable.
It looks like they've added support for some of the things I need (eg references). But not other stuff. It has hardcoded block support for Note and Warning. But it looks like I can't program my own?
It supports front matter, but only in a few predefined styles? And it looks like I can't define my own rendering / styling for image blocks? Like, if I want to make images clickable and be shown full screen, I can't do it using quarto?
Like I said in another comment, if you're writing a markdown-like document that can only be rendered properly in one bespoke tool, you're not writing in actual markdown any more. You've lost one of the main advantages of markdown, and you're writing something else entirely. Thats fine, but I think it proves the point that markdown on its own isn't sufficient.
It wold be nice to show the starting list of files, a command, and the resulting list of files. It would also be nice to maybe color-code source and target files for each step, both in the command and in the listing. It may also help to typographically distinquish base files that are written by hand and generated ones. A few pictograms to tell apart files and directories would also be useful.
And it would be nice to somehow keep this a single process so that a command references a source state and produces the target state and the list of files is computed automatically.
(Doing this right now with XML and XSLT, targeting PDF via XSL-FO. Drew pictograms in SVG right in the XSLT. Haven't got to the automatic part yet, just got an idea that this is a natural way to go.)
It's one of those good enough things where the things it doesn't do are outweighed by the notion that you can just use it pretty much everywhere.
It's a Betamax vs VHS type discussion (both are at this point obsolete and forgotten). HTML used to be pretty limited as well compared to things like SGML or any of the wonderful things people used for structured documentation in the eighties. Most of which are long forgotten. It still is pretty limited compared to those probably. But the point with HTML is that that's what browsers supported and not other formats. Many of the limitations were addressed over time.
Markdown could be improved in a similar way over time. We have ambiguous standardization, lack of features, mutually incompatible implementations, etc. The whole thing actually resembles HTML4 before people started addressing such concerns. Evolving Markdown seems like the easier path than replacing it with something else.
I have some clients where I will send docs in MS Word/PDF format, but that kind of proves the point: the recipient sets the format. They may not explicitly say anything, but I'm not going to send something if there's a risk of receiving a "how do I open this?"
Also, code blocks are the worst example of it's limitations: just use backticks. Sometimes I want to have a big table or diagram and find that Markdown (/Obsidian) doesn't quite scratch my itch, but then there's always HTML...
Many years ago I introduced it at a newspaper full of OG reporters who were a little nostalgic for the clatter of typewriters and the kid who would run the drafts around the newsroom.
On the first day they thought it was weird. On the second—and I'm not exaggerating, it was 24 hours—they loved it, because unlike MS Word/most WYSIWYG junkers, it did exactly what they told it to, without fussy formatting or invisible characters.
I've done this several times since, with all kinds of non-technical users who would never, ever tolerate something like LaTeX.
Any time you can make a developer chose between belligerence or stupidity to explain their behavior, they will either change the behavior or go with belligerence because they’d rather be dead than thought stupid. In either case you have maneuvered them out of being able to continue to be obstructive to team dynamics.
So you “solve” social problems with technical solutions not by making the solution better, but by making it the dumbest thing ever so only an idiot wouldn’t understand it.
It holds people back because it's not meant to be a typesetting tool. It's mostly meant to look good in its raw format.
I also doubt, that Markdown will be able to be extended with the same "ease" HTML has been extended. Markdown does not have a systematic syntax like HTML does. It is not parser and machine friendly. It may be human friendly, but that doesn't make it easy to extend. In HTML on the other hand, one could, theoretically, just come up with a new tag name and introduce a new tag. Mind, we are talking about using both formats for writing a document. Of course Markdown doesn't have the same burden of already being the workhorse of the web and being directly interpreted by browser rendering engines. That however is an aspect that resides outside of the actual format considerations.
We already got tons of Markdown dialects and most of them don't gain particularly much traction, because they are only supported in niche tools. The only one of them that could be considered standard is maybe common mark, with its extensive test suite. Specialized ones like Pandoc Markdown for writing papers exist, but will most likely never leave their niche.
What I could imagine is, that maybe the changes from dialect to dialect could be outsourced into "extensions" and then one would need to pick "syntax conflict free" extensions. But since the format itself is kind of ad-hoc, and not systematic like HTML with its tags, it seems also unlikely, that such an extension system would work well.
I think that is unlikely to happen any time soon.
The problem is there isn't any kind of authority that can improve it. The closest we have is commonmark, which is more of a deacriptive specification rather than prescriptive.
I like to think of markdown as a high level markup language that gets compiled down to html. There is always a fallback to write html directly in markdown.
Haven't heard about archforms in a while ;) but it's not a technique for custom syntax, and since markdown is specified as a Wiki syntax with canonical mapping to HTML, there's no need for the kind of simplistic element and token renaming possible with archforms.
Latex seemed arcane coming from the background of HTML but it was pretty easy to pick up and is human readable.
Aside from the markup language itself, what is cool about TeX is its versioning. Since the idea is that at some point it does meet all of its goals it is essentially approximating its own perfect form. As a result as it gets closer to that goal its version approaches the value of Pi [2]. The current version is 3.141592653.
Tex has been around for 47 years so if you are looking for stability, look no further.
[1] https://en.wikipedia.org/wiki/TeX
[2] https://www.preethamrn.com/posts/piver
P.S.: manpage format is also quite simple to learn and it is always a really good addition to any CLI tool.
To me, Typst is the 'weirdly missing' option here. I really see it as the most promising successor to LaTeX, which is not something I say lightly given that I spent years scoffing at the idea of Typst ever displacing LaTeX in my life.
In the exact same way that git is: it isn’t, but one easy way to use it is.
The language, ecosystem, and compiler are FOSS. There is a cloud editor / collaboration platform that is paid, but nothing about the language requires that you use it (I use it almost exclusively through emacs)
In less than an hour I reproduced my résumé—complete with fancy functions to typeset employment entries on a grid system. In under 24 hours I was tinkering with the Typst source code.
Typst is amazing. Syntax is clean and consistent. The compiler is so so fast. Docs are excellent. And it is very close to TeX when it comes to typesetting quality. There are a few tiny rough edges that any \usepackage{microtype} enjoyer will miss, but stuff is improving rapidly.
(Also, XKCD disclaimer: this was not an LLM—I just use em-dashes a lot because TeX made them easy to type and I got used to having them.)
Long ago I've read a study somewhere that people using LaTeX take more time and effort to accomplish same tasks compared to MS Word, but they are more happy about the process. Seems to match my impression that LaTeX is "by tinkerers, for tinkerers".
I also have a philosophical issue with writing documentation in TeX: TeX is a typesetting program, i.e. it’s a presentation format meant to look a certain way on a page, while documentation should be agnostic to appearance as much as possible. But that’s more a personal objection.
That said, I have used reStructuredText for writing a technical master thesis, and for that it worked wonderfully. If you buy into the ecosystem or use Pandoc to convert to LaTeX/TeX, and build a PDF or whatever you need, it will work well. But if you want to use it as a basis for HTML pages from other languages, which don't have a parser for reStructuredText, then you are in for trouble.
The same is true of Markdown (the canonical parser being John Gruber's at https://daringfireball.net/projects/markdown/) but that didn't stop third parties from extending it in their own implementations. For example, canonical Markdown doesn't support tables at all, but GitHub added custom markup for tables to their parser ("GitHub-flavored Markdown") and it became a de facto standard.
reStructuredText of course has support for tables[1].
I think writing a grammar for reStructuredText is a larger effort of course than writing one for Markdown, which is not to be underestimated.
Though extending reStructuredText is way less necessary, because it already includes a concept for custom "directives" (iirc that is what they are called). For example I have once made a custom directive to link to other documents, so that I have a local "wiki" like structure made out of files and folders. In Markdown no specific syntax exists for things to be implemented as extensions. Customization authors need to include special things in their parser instead, or come up with an extensibility concept themselves.
I think the point you are trying to make is, that there seems to be something else making the difference in adoption of the formats. Do I interpret your comment correctly?
[1]: https://www.sphinx-doc.org/en/master/usage/restructuredtext/...
The problem is, I always need more structure. Give me some YAML and time and I'll make hell (not a metaphor, I'll concoct hell itself on it).
Markdown keeps me honest.
Just give me a good enough baseline, that's it. Markdown is close enough to that for now. I don't need that much semantic meaning in the text. Something like mdbook (https://github.com/rust-lang/mdBook) is more than enough for my needs, compared to shipping docs in once again, gag DOCX files and PDFs.
Good that there are solutions for more advanced use cases, though, but be careful with that complexity where you don't need it.
I sometimes make documents that require more complex formatting, so I use html after 20 minutes fucking around in word and getting angry
Tried and trusted process
It's analogous to the whining of the semantic web folks. The semantic web hasn't happened as a whole. Same problem there: who would curate all the data?
I've no regrets since then
If I needed more context / am writing a paper I'd choose something like Typst, but usually I don't need the additional overhead.
(Btw: The author has a great name!)
[1]: https://talk.commonmark.org/t/generic-directives-plugins-syn...
I could easily represent the long word spec for the DWG format in markdown with gh tables, rendering it to pdf, and it's even better than the original word. Just to represent our diffs.
I could easily produce C++ technical reports in markdown, rendering to pdf and HTML, which was perfect.
The rST docs are much easier to maintain in markdown than in rST.
If I wanted more structure, I'd just write html; or mix html into the markdown.
Pandoc lets me do things like generate libreoffice or microsoft word documents from the markdown, using a reference document for styling of headings etc. This also gives me good enough control to generate OK looking pdfs. It's not LaTeX levels of control, but it's much easier
I don't want to do extra work to hypothetically make things easier for an LLM.
The Apple/DaringFireball fanatics have gone, and the web programmers learned how to really program because they had node as an option, but we've been stuck with this ugly, limited non-standardized format.
I'm an AsciiDoc partisan. I think we should just standardize a subset of AsciiDoc that does everything that markdown does and let people just implement that subset if they want. AsciiDoc gets a bit hairy when you get into the weeds, but if there were some sort of graduated standard that layered on features, you could learn as slowly as you wanted, and only by necessity. AsciiDoc gives you what you need as a base to automate typesetting basically everthing, as far as semantics go.
edit: I have to admit that I do not like AsciiDoctor, but it's just because I hate introducing Ruby dependencies. The people behind AsciiDoctor seem really great.
It's often the choice between Markdown or no documentation at all.
Take for example my blog, which I've had since 2016. It has been rebuilt into various systems over time and every time I had to migrate, there was a manual step of going over all posts and making sure they're displayed and interpreted correctly. In my last and current iteration, I've designed the system so that content is also stored with some hierarchical information (from html) like <section>, <article>, <address> etc, only applying styling to it when rendered.
I don't think we should stop using Markdown, but when something requires more than 200 lines of introductory text, more semantically enabled source feels necessary.
Sounds like I need to start using Markdown!
Are others writing raw markdown/mdx or is there a CMS/Vscode plugin I should be using? (I have a few plugins already but find the writing experience pretty rubbish still)
Going off-topic now, sort of.
The Open Source I see just isn't serious. We lose the right to have an opinion about a technology, to steer it, as that right is mediated by money, and it just evaporates, unless you can set the norm by being a major user, like a tech titan.
Markdown is special because we as developers are the users! Though tech titans dictate what we shall use. As developers we are seemingly in a concentration camp where others set the rules, and there is no escape, unless we surrender our work in the name of love, in the presence of those who absolutely don't, government included, and whose basic mode of operation is to make the profit on our work. It's just legalized demoralization, if not outright stealing.
If you're from a developing country you know what I'm talking about. There is no way to be creative and get paid. You are a beggar, no matter your talents. The end result is that human creativity remains untapped. That is the price we as a community pay every day. Heil the rise of AI, so we don't need each other any longer, and the abuse can stop ;-
There's crimes everyday, and we normalize them, if they are done by the trusted and verified, that talk about merit while they hire f*cks to do their bidding. As a community we are a harem, and they come to rape us, err, give us pleasure, whenever they feel like it, and expect us to love it. Well, don't you love your new toys? That is who we are. And we therefore tend to repeat the cycle in our homes, as "men".
In the end the framing as a technical issue is what marks us. It's is the safe zone, where we can deny the real issue, and cope. If you're a member of Nation Procrasti-me, you know what I'm talking about. Nation Procrasti-Me, Where Life Is Denied. And rent-seeking is the truth.
F*ck, how did we get so cooked? We shackled ourselves, duh. We are infants, or else outright dumb, dumb enough to give away our life force, for new toys to play. Worse, we dictate others do so too. That's when we stand on the side of the abuse, confidently like a toddler that just spread his shit all over the place and radiates "how good was that!".
Want the full context?
Jump to the original sources
Read the primary article or dive into the live Hacker News thread when you're ready.