{"id":741,"date":"2026-03-13T22:40:36","date_gmt":"2026-03-13T22:40:36","guid":{"rendered":"https:\/\/www.matthew-morris.com\/wp2\/?p=741"},"modified":"2026-04-25T23:16:57","modified_gmt":"2026-04-25T23:16:57","slug":"diataxis-and-llm-assisted-documentation","status":"publish","type":"post","link":"https:\/\/www.matthew-morris.com\/wp2\/uncategorized\/diataxis-and-llm-assisted-documentation\/","title":{"rendered":"Di\u00e1taxis and LLM-assisted documentation"},"content":{"rendered":"\n<p class=\"has-text-align-center\"><strong>why should i even, i could be watching that pink flamingoes movie<\/strong><\/p>\n\n\n\n<p>I <strong>absolutely <\/strong>would not want to get in the way of you doing that: In 1989 I missed an all-night session of John Walters movies at the Scala in King&#8217;s Cross and I am <em>still<\/em> full of pointless, futile regret. Don&#8217;t make my mistake. Go, with my blessing.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>ok i&#8217;m back now<\/strong><\/p>\n\n\n\n<p>Did you enjoy it?<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>yes<\/strong><\/p>\n\n\n\n<p>I am so glad to hear that! Although it&#8217;s not a surprise, because <strong>everyone<\/strong> enjoys Pink Flamingoes.<\/p>\n\n\n\n<p>And, similarly, <strong>everyone <\/strong>is quite spectacularly confused about what documentation should look like in a world where obedient LLM servants are churning out text on demand. In particular: which bits should people still do, and what should be left to the machines?<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>i too am confused about this. can you enlighten me?<\/strong><\/p>\n\n\n\n<p>I&#8217;ll do my best! But this will involve me inflicting some concepts on you.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>what concepts will you be inflicting upon me?<\/strong><\/p>\n\n\n\n<p>It&#8217;ll be all about <strong>Diataxis<\/strong>, which is a classification of documentation into 4 types. You can see a definition here: <a href=\"https:\/\/diataxis.fr\/\">https:\/\/diataxis.fr\/<\/a> . It&#8217;s not a <em>very<\/em> new idea &#8211; evolving from maybe 2014 onwards. It&#8217;s gained a fair bit of popularity already, but I reckon that the advent of LLMs will boost it further. Why? Because, on the LLMs-and-documentation front, it can help us decide what we should leave to LLMs, and what we should still put the effort in on working out for ourselves.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>why will knowing about Diataxis help me?<\/strong><\/p>\n\n\n\n<p>Diataxis helps us answer a crucial question for LLMs: <em>how important is the viewpoint of the human reader?<\/em><\/p>\n\n\n\n<p>This matters because LLMs don&#8217;t understand people. LLMs are great if the identity of the human reading the documentation doesn&#8217;t matter. But if the human viewpoint is relevant, AI output will probably come across as alienating slop.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>so what, exactly, is diataxis?<\/strong><\/p>\n\n\n\n<p>Diataxis splits documentation across two axes: (1) acquiring knowledge vs applying knowledge (2) thinking about things (cognition) vs doing things (action).<\/p>\n\n\n\n<p>This results in the following 4 categories:<\/p>\n\n\n\n<ul><li><strong>tutorials<\/strong>: acquiring, action: you <strong>learn the basics<\/strong> by <strong>following lesson steps<\/strong><\/li><li><strong>explanations<\/strong>: acquiring, cognition: you <strong>gain understanding<\/strong> by <strong>reading in-depth context<\/strong><\/li><li><strong>how-to-guides<\/strong>: applying, action: you <strong>carry out goal-oriented actions<\/strong> by <strong>following process-specific steps<\/strong><\/li><li><strong>reference<\/strong>: applying, cognition: you <strong>access goal-oriented information<\/strong> by <strong>reading context-free details<\/strong><\/li><\/ul>\n\n\n\n<p class=\"has-text-align-center\"><strong>why should i care?<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-left\">It gets interesting when you start thinking about this question: <em>how does the Diataxis split interact with LLMs, and the related human viewpoint criterion?<\/em> <\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>ok so how do things line up?<\/strong><\/p>\n\n\n\n<p>In one line:<\/p>\n\n\n\n<p>(LLMs) = References &#8230; How-tos &#8230; Tutorials &#8230; Expanations = (Humans)<\/p>\n\n\n\n<p><strong>References<\/strong> are a dry list of facts. There is no human viewpoint required; LLMs can assemble this information on demand. Humans may need to provide some sparse signposting so the LLMs don&#8217;t burn too many tokens figuring out where to look for the information, but that&#8217;s about it.<\/p>\n\n\n\n<p><strong>How-to guides<\/strong> need more human involvement: humans decide what goals are important. LLMs should figure out how any given action towards a goal should be carried out. This leaves a wide zone in the middle &#8211; what the actions should be for a given goal. Who should figure that out? The right answer will depend on a number of factors, including: how good the LLMs are, how consistent the codebase is, how many tradeoffs there are between plausible choices.<\/p>\n\n\n\n<p><strong>Tutorials<\/strong> need yet more human involvement: not only do humans still need to pronounce upon the goals (what should people be trying to learn?) but they now need to pronounce upon the actions (what actions will teach people what they need to learn?). The role of the LLMs shrinks, but they are still useful to check the correctness of the actions; they can also be used to check for potential gaps in understanding (but a human is needed to pronounce upon whether these LLM-identified gaps are meaningful).<\/p>\n\n\n\n<p><strong>Explanations<\/strong> should be predominantly human-curated. The whole purpose of an explanation is to provide deep context: knowledge that can\u2019t be gleaned from inspecting the codebase, because it depends on what human beings think is important &#8211; a good example of this deciding to what extent it&#8217;s useful to provide historical context for the current state of the system. The role of LLMs should be confined to fact-checking only. Don&#8217;t get an LLM to write your explanations for you.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>so is diataxis the only way i should think about docs?<\/strong><\/p>\n\n\n\n<p>No. Documentation is ultimately about using permanent meda to convey information. The degrees of freedom involved are unfathomably complex. We should be humble in the face of this complexity: we shouldn\u2019t expect Diataxis to have all the answers.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>oh fgs i am an engineer so for the love of god give me a concrete example that i can respect rather than waffling like a stoned maths major who just found their first ever semiotics textbook in a second hand bookshop<\/strong><\/p>\n\n\n\n<p>My past self feels for you. Here&#8217;s a specific example of how Diataxis falls short: <em>you have to work to avoid blurring and mixing between &#8220;how-to guides&#8221; and &#8220;explanations&#8221;<\/em>.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>um ok explain<\/strong><\/p>\n\n\n\n<p>Whether we understand some area of knowledge isn&#8217;t a binary yes-or-no thing, right? We might get the whole lot, but it&#8217;s more likely we&#8217;re patchy &#8211; we get almost all in some areas, very little in others. But a Diataxis &#8220;how-to guide&#8221; assumes that the reader already understands <strong>all<\/strong> the relevant concepts involved in carrying it out.<\/p>\n\n\n\n<p>So there&#8217;s a gap there. Practically speaking, you often end up with bits of explanations mixed into the &#8220;how-to guides&#8221; in an attempt to make them accessible to as broad an audience as possible. <\/p>\n\n\n\n<p>Makes sense, right?<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>so how does diataxis deal with that?<\/strong><\/p>\n\n\n\n<p>It doesn&#8217;t! The Diataxis site instead spends a fair bit of time dealing with two other distinctions that I personally find far less tricky to deal with: tutorials vs how-to guides and reference vs explanation (see <a href=\"https:\/\/diataxis.fr\/theory\/\">https:\/\/diataxis.fr\/theory\/<\/a>).<\/p>\n\n\n\n<p>That the Diataxis site is preoccupied with those two other distinctions makes sense in terms of the Diataxis set up: each of those two pairs differs in only one of the two Diataxis split points, so you would expect some confusion at the boundary.<\/p>\n\n\n\n<p>But &#8220;how-to guides&#8221; and &#8220;explanations&#8221; are diametric opposites in the Diataxis taxonomy &#8211; they aren&#8217;t <strong>supposed<\/strong> to get confused, at least according to the Diataxis split&#8217;s view of reality!<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>so is diataxis wrong then?<\/strong><\/p>\n\n\n\n<p>No, it&#8217;s just not perfect. But so few things in this world are perfect. Your child&#8217;s first smile, sure. The night sky in the Sahara, perhaps. The glint in Divine\u2019s eye in <em>that<\/em> scene from<em> Pink Flamingoes<\/em>, absolutely. But most of the world falls short of such exacting standards.<\/p>\n\n\n\n<p>For documenting information technology tools, Diataxis still empirically works very well! It&#8217;s interesting that there is some signal that its theoretical underpinning has some deficiencies, but that&#8217;s no reason not to go with Diataxis &#8211; it seems to be a productive way of channelling documentation effort.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>does something need fixing here?<\/strong><\/p>\n\n\n\n<p>Maybe? How big the problem is depends on how complex your systems are. My intuition is that if things scale up, you&#8217;d need to pick some other conceptual framework to gain useful insights. Diataxis has a certain realm of validity, and if you want to get maximal milage out of a model, you need to know where its limits are.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>i should have just watched another movie<\/strong><\/p>\n\n\n\n<p>I&#8217;ve put a whole load of stuff across here. Too much maybe. It might help you to chill out and read a book. Might I recommend <em>Cities of the Red Night<\/em>? It&#8217;s a compelling tale of high-seas adventure and civic pride, filtered through a distinctive modern sensibility. Easy reading.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>thank you<\/strong><\/p>\n\n\n\n<p>You&#8217;re so welcome x<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>i just read that book<\/strong><\/p>\n\n\n\n<p>are we still friends<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>no<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>why should i even, i could be watching that pink flamingoes movie I absolutely would not want to get in the way of you doing that: In 1989 I missed an all-night session of John Walters movies at the Scala in King&#8217;s Cross and I am still full of pointless, futile regret. Don&#8217;t make my &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.matthew-morris.com\/wp2\/uncategorized\/diataxis-and-llm-assisted-documentation\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Di\u00e1taxis and LLM-assisted documentation&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/posts\/741"}],"collection":[{"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/comments?post=741"}],"version-history":[{"count":151,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/posts\/741\/revisions"}],"predecessor-version":[{"id":953,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/posts\/741\/revisions\/953"}],"wp:attachment":[{"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/media?parent=741"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/categories?post=741"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.matthew-morris.com\/wp2\/wp-json\/wp\/v2\/tags?post=741"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}