dschuessler 2 hours ago

You can include arbitrary HTML tags in Markdown at any place you need them.[0] I am not aware of any Markdown tooling that does not support this.

So, no, Markdown is not holding me back. It is perfectly capable of what the author claims it isn't.

[0]: https://daringfireball.net/projects/markdown/syntax#html

  • throwaway150 40 minutes ago

    > You can include arbitrary HTML tags in Markdown at any place you need them.

    That is well known and I am sure the author is aware of it. The problem they are describing is not whether HTML is technically allowed inside Markdown. It's that when you are writing Markdown, you are writing Markdown, not HTML, and that comes with some problems.

    > It is perfectly capable of what the author claims it isn't.

    In theory, yes. In practice, using Markdown becomes much less appealing once you start dropping raw HTML all over the place. The whole point of choosing Markdown is that you do not want to spend your time typing <p>, <a>, <li> and the rest. You want to write in Markdown, with only occasional HTML when absolutely necessary.

    That is exactly where the author's complaints become relevant. If the solution to Markdown's limitations is routinely switching to HTML, then the argument becomes circular. If you are expected to write HTML to address the author's complaints, why bother with Markdown at all? If the answer is just "write HTML", then you may as well skip Markdown in the first place.

  • henrebotha 2 hours ago

    There are real limitations to this: You can't arbitrarily mix and match HTML and Markdown. As soon as you introduce an HTML block, you're locked out of Markdown syntax.

    AsciiDoc lets you mix and match however you want. Or, put differently: AsciiDoc's superiority over Markdown extends even to being better at shelling out to HTML.

    • vidarh 2 hours ago

      While that's true, I'd take Markdown + extensions to allow inline HTML or custom tags over AsciiDoc any day, even at the cost of losing some compatibility - converting that to plain Markdown is usually easy enough.

    • tefkah 2 hours ago

      mdx does tho. you could just not define any components, then you can nest markdown inside html no problem

amitav1 2 hours ago

I use Org-mode w/ GNU Emacs for all of my blogging(shameless plug: amitav.net). I like Org-mode because it's easy enough to write, looks nice enough, can be exported in quite a few formats, and the code block handling is chef's kiss. It supports quite a few languages and has a feature I've seen in no other editor before, where you can chain together code from different code blocks, and evaluate it, inside of the document itself. I tried out a few different blogging platforms with first class Org-mode support ([Blorgit](https://orgmode.org/worg/blorgit.html) and [lazyblorg](https://karl-voit.at/tags/lazyblorg/)), but they ended up taking up a bunch of time to set up, so my current process is just manually exporting my Org files to HTML, then using rsync to send them over to my server, then I have a Ruby script which just appends an index to the bottom of each file and serves it. I find Org-mode a lot more expressive and natural to write than my previous blogs which were in Markdown.

jimmar 3 hours ago

Markdown is the minimum viable product. It’s easy to learn and still readable if not rendered in an alternate format. It’s great.

For making PDFs, I’ve recently moved from AsciiDoc to Typst. I couldn’t find a good way to get AsciiDoc to make accessible PDFs, and I found myself struggling to control the output. Typst solves all of AsciiDoc’s problems for me.

But in the end, no markup language will make you write better. It’s kind of like saying that ballpoint pens are limiting your writing, so you should switch to mechanical pencils.

  • undeveloper 2 hours ago

    typst looks interesting -- but how are you writing it? from what I looked at, it looks like theres an official web editor and a vscode plugin with limited support. this feels pretty limited, as someone who came in expecting something like obsidian.

    • TRiG_Ireland 2 hours ago

      I'm not aware of any limitations in the Tinymist plugin.

      And you can just write it in the plain text editor of your choice, and keep an eye on the PDF with typst watch.

    • MillironX an hour ago

      I've started experimenting with Typst for a few documents, and here's my stack:

      - Zed editor with Typst plugin

      - Tinymist LSP settings turned on to render on save in Zed, see https://code.millironx.com/millironx/nix-dotfiles/src/commit...

      - Okular open to the output document. Okular refreshes the document when changed on disk.

      It's not as polished as say, LaTeX Workshop in VSCode, but it gets the job done.

neoCrimeLabs 2 hours ago

> Markdown Lacks the Structure You Need

I feel like this article makes a lot of valid observations, but then wraps them with a false dilemma.

If it had tried to convince the reader of understanding what formatting needs are required before choosing a format, I would have entirely agreed with it.

Instead I'm left feeling mildly offended, and disagree with it.

jppope 2 hours ago

Been constantly using it for ~10 years and it works great. I read the article and its not incorrect, but its also kind of arguing that markdown users have problems that they themselves would say they don't have. If you need something else, use something else. With all that said, great title, they convinced me to waste ~3-5 min digging in.

starkparker 24 minutes ago

By suggesting DITA as a valid alternative to Markdown, for any use, this has so completely lost the plot that it blows up whatever credibility Brian might have on the subject. It's disappointing, because I know of Brian and otherwise respect his work.

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.

jrm4 2 hours ago

Feels like a great argument...for, I don't know, a bunch of moderately technical high-schoolers who were somehow raised on markdown instead of Microsoft Word and want more power?

No, seriously, who is this for?

susam an hour ago

Good parsers for Markdown, such as those that follow CommonMark or GFM, do not simply turn text into HTML with regexes. They build an AST and then render it. So it is quite possible to extract structure from Markdown and feed it to other tools. The article still makes some good points though. Markdown's lack of semantic detail is a genuine limitation. At the same time, one could argue that these limitations have made Markdown so popular. It is easy to write, easy to read, and with plenty of static site generators supporting Markdown, maintaining a website, writing blog posts, etc. feels less like a chore.

For what it's worth, I have been using pure, unadorned HTML to maintain my website and blog for the last 24 years. See https://github.com/susam/susam.net/tree/main/content/blog for example. I write it by hand with some help from Emacs HTML+ mode (mhtml-mode), which comes out of the box. The structure you can see directly in the source becomes an advantage, because the editor can operate on it intelligently. For example, here are a few of the many handy Emacs key sequences I use while writing my blog posts:

  M-o i    Insert <em></em> and place the cursor in between.
  C-c /    Insert close tag for the currently open tag.
  C-c RET  Open a new <p>.
  C-c 2    Insert <h2></h2> and place the cursor in between.
  M-h      Select all text within an HTML element.
  C-c o    Add an HTML tag around the selected text.
prmoustache 2 hours ago

The author seems to forget that markdown is just an extension of html. If markdown doesn't provide something that html does, you just write it in html and it will be rendered correctly.

I'd also argue that the limitations of markdown allow me to focus on actual content and less on the presentation. I have little use of all the features of a markup language if I can't remember how to use them.

  • nrhrjrjrjtntbt 2 hours ago

    It is not features but structure and undetstanding that is missing.

    That said I am not sure what the solution is to that since your docs may need structure my docs dont need. Therefore you cant solve the "semantic" outside of a "namespace" of what you agree in your organization.

    E.g. you may decide architecture diagrams are in Mermaid but that is by no means a stanfard and my org uses embeded svg.

    So to go full circle... you are right just use HTML. After all it's semantic isn't it ;-)

nicoburns 3 hours ago

This article doesnt consider Typst, which IMO ought to be the first port of call if Markdown isnt sufficient for your needs.

  • tefkah 2 hours ago

    typst is great, but there are many many steps between “markdown isn’t sufficient” and reaching for typst.

    1. typst only really has pdf output at the moment 2. so much less tooling available (linters, site builders, converters etc) 3. much less of a markup format, extremely tightly coupled to a specific tool (typst compiler)

    again, love typst, but it has (atm) so much fewer applications

nickledave an hour ago

Really weird to see this person mention MyST as a form of Markdown, and then go on to talk about reStructuredText as their first example of a markup language "that gives you more control over structure than ... markdown".

The whole point of MyST is to provide a markdown-like alternative to rST. It literally has directives, roles, structural semantics, etc. It just doesn't have the unlearnable syntax of rST and the so-called governance of docutils (the de facto rST parser) (see e.g. discussion on https://github.com/sphinx-doc/sphinx/issues/8039 and linking issues)

ifh-hn an hour ago

I don't agree with this article. I mean sure there's no standard but there is pandoc, and quarto, both of which fill the gaps this article claims. And I also don't write content for LLMs so I don't care whether they can understand it.

johnathandos 2 hours ago

It’s good to spread awareness (or just remind folks) that alternatives to Markdown exist. The right tool for the job depends on your circumstances. If I were scaling a docset for a team of contributors primarily consisting of technical writers, .adoc or .rst would be my preference. If I were scaling internal docs-as-code infra for software engineers, I’d use Markdown.

philipwhiuk 3 hours ago

> If you're writing a quick README or a short-lived doc, Markdown is fine. It's fast, approachable, and does the job. If you're building a developer documentation site that needs some structure, reStructuredText or AsciiDoc are better choices.

This is dumb. If I'm writing developer documentation I'm not writing it for a machine. And if the aim here is to expose it to a LLM, then the LLM needs to get smarter about semantics, not force us back to formats that are more technically complex to write and maintain in order to re-create 'the semantic web' - a flawed concept that has failed to catch on.

If the LLM needs context on content that humans don't need, the LLM needs fixing, not the content.

> With Markdown as your source, you can't easily go to another format.

File->Print->PDF.

Was that hard? (I admit it's still bizarre that Chrome puts 'Save As PDF' under Print).

(Apparently you can also go via LaTeX if you love a CLI)

  • dragonwriter 2 hours ago

    > If I'm writing developer documentation I'm not writing it for a machine. And if the aim here is to expose it to a LLM, then the LLM needs to get smarter about semantics, not force us back to formats that are more technically complex to write and maintain

    AsciiDoc is much better than Markdown for docs intended for humans that are more than short, README type of documents. Any advantage it has for documents intended for LLMs is a side effect of that.

    • zihotki 2 hours ago

      Many consider AsciiDoc being too complex.

  • [removed] 2 hours ago
    [deleted]
random3 an hour ago

This is, personally, a controversial topic- I can take both sides of the debate in my head. I use markdown intensely and feel the deficiencies deeply, but wasn't able to see how there are real alternatives given the ecosystem (e.g. Obsidian).

I do think things are ripe for changes in this space.

timpera 4 hours ago

It's interesting to see how Markdown keeps getting more and more use, and even native Windows Notepad support!

dardeaup 2 hours ago

This is a timely topic for me. I'm just beginning the writing of a technical book. I plan to target epub/mobi. My research thus far has pointed to markdown -> html -> epub/mobi. If you were going to write a technical ebook would you use markdown or an alternative?

  • codybontecou 2 hours ago

    What about markdown do you feel limits you in your writing process?

    The beauty of markdown is that it’s standardized. If you find your self midway through the book and feel a need to change formats, it’s easy enough to parse and reformat.

    • dardeaup 2 hours ago

      Nothing! I was asking from the point of you that you don't know what you don't know.

  • ldng an hour ago

    How about markdown -> PDF (with Typst) -> epub/mobi ?

  • WA 2 hours ago

    You need:

    - table of contents

    - automatic chapter and section numbering

    - cross references and automatic tracking of figures, tables etc.

    - different styles besides blockquotes such as info sections, warnings, tips

    Imho, cross-referencing chapters, pages, figures, tables and the lack thereof in Markdown is the first and most important thing to check how you would like this to be solved.

    • ifh-hn an hour ago

      Pandoc and pandoc-crossref. Or simply use quarto.

  • macintux 2 hours ago

    You might look at DocBook. I haven't used it in ~25 years, and then only for short documents, and it is XML hence quite verbose.

    But it's explicitly targeted at technical documentation. If nothing else, searching for DocBook alternatives might give you some ideas.

somat an hour ago

The whole point of markdown, really it's whole value preposition is that it has nice looking plain text. And don't get me wrong that is a hell of a value to many people, myself included. Yes it is a terrible markup language, And I would encourage anyone doing serious document work to use a language that provides better semantic structure. But I would also argue that all projects that try to add these structures to markdown are missing the point and destroying it by making the plain text ugly.

alganet 26 minutes ago

> Markdown Lacks the Structure You Need

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.

Animats 2 hours ago

The paper makes the point that people keep extending Markdown, badly and incompatibly.

sroerick 2 hours ago

Org is pretty good.

  • dandersch 2 hours ago

    org-mode could have had a chance if they had provided tooling outside the emacs ecosystem. But now LLMs have chosen markdown, so it's destined to forever remain an obscurity.

nathias 2 hours ago

is this a poignant satire about programmers?

  • hadlock 2 hours ago

    I went to look up and see if this guy was in his early to mid 20s when I got to this point

    > That <Command> tag isn't Markdown at all; it's a React component.

    Turns out he's in his 40s, so he lived through ms word, front page and the JavaScript wars; this is almost certainly satire

    • tefkah 2 hours ago

      i think that specific turn off phrase is more of an indicator of llm usage then age imo

khaledh 3 hours ago

Markdown won. Simplicity always wins. Markdown is now the de facto documentation format, for better or for worse.