TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Diátaxis – A systematic approach to technical documentation authoring

514 点作者 OuterVale6 个月前

30 条评论

bjackman6 个月前
As a non writer I found that even without the details there&#x27;s just one very important and very basic insight here:<p>You don&#x27;t have to say everything exactly once.<p>Until being exposed to this idea I always tied myself in knots trying to write one stream of text that serves as THE DOCS. It&#x27;s impossible to do this well (once you know, it seems very obvious haha). Just realising that you can write the same info in different ways for different readers is very helpful!
评论 #42327500 未加载
评论 #42327369 未加载
评论 #42326921 未加载
评论 #42329155 未加载
评论 #42331185 未加载
评论 #42328365 未加载
_acco6 个月前
We <i>just</i> applied this framework to the Sequin [1] docs two weeks ago. It has felt <i>so nice</i> to have a framework. I think our docs flow really well now, and it&#x27;s been easier for us to add and maintain docs because we know where to put things.<p>The slightly ironic part is that the Diataxis docs themselves are a bit obtuse. It&#x27;s a little verbose. So it took a couple passes for it all to click.<p>The analogy I gave my team that was helpful for everyone&#x27;s understanding:<p>Imagine you&#x27;re shopping for a piece of cooking equipment, like a pressure cooker.<p>The first thing you&#x27;re going to look at is the &quot;quickstart&quot; (tutorial) – how does this thing work <i>generally</i>? You just want to see it go from A to B.<p>Then, you&#x27;re going to wonder how to use it to cook a particular dish you like. That&#x27;s a how-to.<p>If you&#x27;re really curious about anything you&#x27;ve seen so far, <i>then</i> you&#x27;ll flip to the reference to read more about it. For example, you might check the exact minutes needed for different types of beans.<p>And finally, when you&#x27;re really invested in pressure cooking and want to understand the science behind it - why pressure affects cooking times, how the safety mechanisms work, etc. - that&#x27;s when you&#x27;ll read the explanatory content.<p>Comically, our docs were completely backwards: we <i>lead</i> with explanation (&quot;How Sequin Works&quot;). I think that&#x27;s the natural impulse of an engineer: let me tell you how this thing works and why we built it this way so you can develop a mental model. Then you&#x27;ll surely get it, right?<p>While that may be technically accurate, a person doesn&#x27;t have the time or patience for that. You need to ramp them into your world. The quickstart -&gt; how-to -&gt; reference flow is a great way to do that. Then if you really have their attention, you can galvanize them about your approach with explanatory material.<p>[1] <a href="https:&#x2F;&#x2F;sequinstream.com&#x2F;docs" rel="nofollow">https:&#x2F;&#x2F;sequinstream.com&#x2F;docs</a><p>PS: If you have any feedback on our docs, lmk :)
评论 #42329426 未加载
评论 #42332323 未加载
评论 #42333262 未加载
pivic6 个月前
I&#x27;m a technical writer. Diátaxis is similar to DITA: <a href="https:&#x2F;&#x2F;www.oxygenxml.com&#x2F;dita&#x2F;1.3&#x2F;specs&#x2F;archSpec&#x2F;base&#x2F;information-typing.html" rel="nofollow">https:&#x2F;&#x2F;www.oxygenxml.com&#x2F;dita&#x2F;1.3&#x2F;specs&#x2F;archSpec&#x2F;base&#x2F;infor...</a><p>On the other hand, systems like these might miss out on what users actually need. Diátaxis might work for a long time if technical documentation is only used in a documentation platform. However, if the same information could and should be used in more than one place—for example, in a UI, in a documentation portal, and in a mobile app—there might be need to break up information into smaller pieces in order to assemble them in different ways. This is known as &#x27;content reuse&#x27;, the practice of using the same content in multiple places. One approach on how to create and edit information for content reuse is described in the &#x27;every page is page one&#x27; concept: <a href="https:&#x2F;&#x2F;everypageispageone.com&#x2F;the-book&#x2F;" rel="nofollow">https:&#x2F;&#x2F;everypageispageone.com&#x2F;the-book&#x2F;</a><p>If there&#x27;s resources and time, I always recommend to do UX research at the very start of a project so that one doesn&#x27;t later feel choked by a severely restricted information model. Nielsen&#x2F;Norman have done a lot of research in this area and have interesting propositions on how to resolve issues around all of this, for example: <a href="https:&#x2F;&#x2F;www.nngroup.com&#x2F;articles&#x2F;information-foraging&#x2F;#toc-what-is-information-foraging-2" rel="nofollow">https:&#x2F;&#x2F;www.nngroup.com&#x2F;articles&#x2F;information-foraging&#x2F;#toc-w...</a>
评论 #42326648 未加载
评论 #42326284 未加载
评论 #42379294 未加载
sixhobbits6 个月前
It&#x27;s very popular in tech writing circles and pretty standard now as others have suggested.<p>We do see people try to take it too far though and have literally only these four categories on their docs page, which never works well imo.<p>It&#x27;s mainly useful for a writer to keep in mind stuff like &quot;it&#x27;s a guide so focus on getting to result, not teaching&quot; but in reality you don&#x27;t want super hard lines. It&#x27;s OK to have a bit of tutorial in a guide.
评论 #42326096 未加载
评论 #42327714 未加载
评论 #42325796 未加载
评论 #42325592 未加载
评论 #42325907 未加载
ChrisMarshallNY6 个月前
Having just completed my first (and last, for a while) shipping SwiftUI app, I <i>very much</i> think that documentation has been treated in shabby fashion, in the modern tech scene. I sorely miss the work done by all those great tech writers that Apple fired. Their engineers are <i>terrible</i> documenters.<p>I&#x27;m always a bit leery of &quot;dogmatic&quot; approaches, though, because they tend to develop a &quot;priesthood,&quot; that refuses to bend; even when reality demands it.<p>In my experience, the initial developers of the dogma use it to marvelous effect, but subsequent &quot;priests&quot; screw the pooch; sometimes, turning the approach into a curse. Many good ideas have been destroyed by too-rigid applications (What is &quot;Agile&quot;?).<p>I see any documentation as having basically two faces: The maintainer, and the user. Each, has drastically different needs, and should probably be addressed by completely different teams.<p>As has been alluded to, in other comments, you can have issues with multiple instances of documentation, falling out of sync (the curse of most wiki-style documentation), but results matter. If the multiple instances can be effectively synced, then the documentation is effective and useful to its consumers. If no one reads the perfectly formatted and synced documentation, it&#x27;s worthless.<p>On SNL, Phil Hartman<i>[n]</i> used to play The Anal-Retentive Chef. In one skit, he spent so much time prepping, that he couldn&#x27;t actually demonstrate the recipe.<p>I see a lot of that, in tech. Toolchains and libraries that are absolutely perfect, but are unusable, in practice.<p>Documentation is an amalgam of many disciplines; human nature&#x2F;psychology, graphic design, information architecture, technical infrastructure, publishing and distribution, etc.<p>I really think it&#x27;s often treated as an afterthought, in most projects, and I believe that it should be a first-class consideration, at the Requirements stage, onwards.
评论 #42329170 未加载
评论 #42330743 未加载
476 个月前
Diátaxis is a great way to structure documentation, but I think its real value is in simplifying how we think about writing docs.<p>It shifts the focus from trying to cram everything into one ‘perfect document’ to recognizing that different users have different needs.<p>Like, tutorials are for learning by doing, guides are for solving specific problems, reference is for quick lookups, and explanations dive into the ‘why.’<p>That clarity alone can make one write useful docs.<p>That being said, sticking too rigidly to any system can be a trap.
评论 #42328332 未加载
agile-gift02626 个月前
We use it at our organisation and ever since we adopted it, our technical documentation is on a whole other level. That, page ownership and periodic reviews of each page by one of the page owners has made our technical documentation the only successful documentation effort that I&#x27;ve seen
hambes6 个月前
I think the graphic used by divio[1] ist so much more intuitive. But seems Diátaxis has more comprehensive documentation on what they mean.<p>1: <a href="https:&#x2F;&#x2F;docs.divio.com&#x2F;documentation-system&#x2F;" rel="nofollow">https:&#x2F;&#x2F;docs.divio.com&#x2F;documentation-system&#x2F;</a>
评论 #42333447 未加载
评论 #42326087 未加载
djaychela6 个月前
I like the idea of this (and have been lucky enough to meet the creator a couple of times at PyconUK - he&#x27;s a talented and very friendly chap), but I have a reservation about being this rigid about differentiating between the various areas of documentation in this way.<p>During a sprint I was told that the docs I was preparing (not by Daniele, for the record) were mixing modalities and not acceptable because of this. Not pulling rank, but I&#x27;ve been a teacher for 20+ years, and I have a reasonable ida of how to explain things and how to scaffold learning so that people can both get things done and progress with understanding happening as part of that.<p>As long as there&#x27;s not total rigidity then this is a great tool for deciding how to produce documentation and what each type of document should do. I often see examples in documentation (numpy springs to mind) where the examples could be a lot better chosen rather than &#x27;magic from the sky&#x27;. A good, well chosen example can provide a lot of learning while illustrating usage, a corner case or other things to be aware of.
Nathanba6 个月前
I don&#x27;t agree with it because while I think that it&#x27;s theoretically correct, the words are too close together. To me &quot;tutorial&quot;, &quot;how to guide&quot; and &quot;explanation&quot; are all practically synonyms. I know that when you think deeply about it, there are legitimate reasons for each category but it&#x27;s just too close semantically that my brain can&#x27;t see the difference. If I want to know how something works and I see &quot;tutorial&quot; and &quot;how to guide&quot; I have no idea what to click and I just click on the first thing.
评论 #42325945 未加载
评论 #42325838 未加载
评论 #42326819 未加载
评论 #42325765 未加载
评论 #42379851 未加载
评论 #42325804 未加载
piterrro6 个月前
I&#x27;m a big fan of Diátaxis and I&#x27;m using it to build documentation for Logdy: <a href="https:&#x2F;&#x2F;logdy.dev&#x2F;docs&#x2F;quick-start" rel="nofollow">https:&#x2F;&#x2F;logdy.dev&#x2F;docs&#x2F;quick-start</a> I&#x27;m curious how people see it and whether it&#x27;s a useful way to document a software product, feel free to leave a comment. So far it proved to be an effective way to communicate how to use the product also through a series of blog posts that present common use cases. Defininitely recommend!
评论 #42379763 未加载
GarnetFloride6 个月前
As a technical writer, I had been groping my way toward a framework like this myself and this is great. It is great because it gives a simple framework to work with that most people can understand very quickly and the graphic is amazing for referencing.<p>I explain it in a more audience focused way:<p>An explanation is for a prospective customer.<p>A tutorial is for someone who&#x27;s never used it before.<p>A how-to is for someone familiar with it but doesn&#x27;t use that particular feature often enough to memorize it.<p>A reference is for people wanting to become an experts on the product.
pastage6 个月前
I often get stuck changing from reference to explanation in the middle of wirintg, so this is a great guide. Having a small How-To example in every reference entry for a API endpoint might be good, but you need to keep them seperate and concise, do not start with explanations.<p>Here is a extract from Ubuntus page about this:<p>&gt; Writing security reference documentation, you will know that you should be producing clear and simple statements of fact. Explanation of a security feature or function, or showing how to use it – those don’t belong here. There is a place for them: a different place. If those things are required, then there should also be a security explanation topic, or a security how-to guide. This immediately makes life easier for the documentation author, who recognises that explaining and showing how-to are also important.<p><a href="https:&#x2F;&#x2F;ubuntu.com&#x2F;blog&#x2F;diataxis-a-new-foundation-for-canonical-documentation" rel="nofollow">https:&#x2F;&#x2F;ubuntu.com&#x2F;blog&#x2F;diataxis-a-new-foundation-for-canoni...</a>
评论 #42326135 未加载
Vosporos6 个月前
The Haskell language&#x27;s documentation team officially recommends using it: <a href="https:&#x2F;&#x2F;blog.haskell.org&#x2F;documentation-best-practices-in-2024&#x2F;" rel="nofollow">https:&#x2F;&#x2F;blog.haskell.org&#x2F;documentation-best-practices-in-202...</a>
dsmmcken6 个月前
I feel like I should be writing with the goal that the end reader is actually an LLM. The LLM will be the one spitting out the answers to the actual users via things like co-pilot, but I am not sure how that should change my approach to structure or level of detail in docs. Heavier on the number of code examples?
评论 #42330749 未加载
评论 #42329178 未加载
asymmetric6 个月前
Does anyone have examples of OSS projects using this framework, and having good documentation?<p>I find the framework doesn&#x27;t really speak to me (as a user, or prospective docs writer), and IME trying it out in communities I&#x27;m a part of, it didn&#x27;t particularly improve the situation, as I had perhaps naively expected.
评论 #42327719 未加载
losvedir6 个月前
Ooooh! I&#x27;ve seen this organization before, but didn&#x27;t realize it was a thing, or had a name. I don&#x27;t personally like it, as I get confused about where to go. When I saw &quot;tutorials&quot; and &quot;how-to guides&quot;, for example, I had thought those were roughly the same thing and didn&#x27;t know which to click. And seeing &quot;Explanation&quot; separately was even worse because why would I want a guide or tutorial without explanations??<p>I get &quot;reference&quot; as a separate section, maybe, though to my mind the best docs are built around reference with explanations and little code samples and how-tos mixed in as necessary, and maybe a single &quot;Getting Started&quot; guide for installation and configuration and stuff like that.
flowingfocus6 个月前
I recently built a small, free analysis tool that takes public documentation git repos and evaluates the content against this framework:<p><a href="https:&#x2F;&#x2F;app.getdocsy.com&#x2F;analysis&#x2F;" rel="nofollow">https:&#x2F;&#x2F;app.getdocsy.com&#x2F;analysis&#x2F;</a>
hermitcrab6 个月前
I arrived at a similar approach for my product documentation, with main sections:<p>-Tutorial&#x2F;Quick start<p>-Reference (topic based)<p>-How-to guides (task based)<p>With an extra section:<p>-Expert tips (various things the product can do that aren&#x27;t obvious or easy to discover)<p>It does mean that there is a certain amount of repetition between sections, but I don&#x27;t think that is a big problem. You just have to be conscientious when updating things.<p>In my experience, the key thing about documentation is to write it as you are creating the product. Do not leave it all unti the end!
elijahbenizzy6 个月前
We&#x27;ve leveraged Diataxis heavily for Hamilton and Burr documentation:<p>- <a href="https:&#x2F;&#x2F;hamilton.dagworks.io">https:&#x2F;&#x2F;hamilton.dagworks.io</a><p>- <a href="https:&#x2F;&#x2F;burr.dagworks.io">https:&#x2F;&#x2F;burr.dagworks.io</a><p>It&#x27;s not always the easiest to follow (we often have disagreements about whether something is a tutorial or a how-to), but it&#x27;s a really valuable framing and I think our docs have gotten better because of it.
hebocon6 个月前
My experience trying to implement this for internal use in a tech-adjacent industry is that &quot;how-to&quot; guides dominate because of a company culture of expediency over quality.<p>With time and care, those can be turned into tutorials and explanations. I use Obsidian to embed reference PDFs.<p>The end result is too hyperlinked for most to understand and the all-in-one outdated mega page in OneNote gets passed around instead much to my disappointment.
postoplust6 个月前
I use and highly recommend this framework as the starting point for any technical documentation. It helped me learn how to keep the detailed technical explanations out of the how-to documents. Before I learned of Diataxis, my how-to docs were much longer and hard to follow when things go right (because I had lots of, &quot;if this doesn&#x27;t work, investigate A, B, C...&quot;).
Attummm6 个月前
The ideas presented are great, and I can see myself adopting them in the future. However, the tone of the accompanying text feels off-putting, which makes me hesitant to share it. I hope this aspect improves over time
FigurativeVoid6 个月前
We have been implementing Diátaxis style engineering documentation. We have &quot;librarians&quot; that make sure information is going to the place, and that we aren&#x27;t creating unnecessary duplication.
gnatolf6 个月前
How is this related to <a href="https:&#x2F;&#x2F;docs.divio.com&#x2F;documentation-system&#x2F;" rel="nofollow">https:&#x2F;&#x2F;docs.divio.com&#x2F;documentation-system&#x2F;</a> ? Looks incredibly identical.
评论 #42325566 未加载
评论 #42326083 未加载
评论 #42325731 未加载
InDubioProRubio6 个月前
So does it track the users-role and reading path + searches? Like, if you searched for topic &quot;XY&quot; hop on rail XYZ other user with similar role hoped on.
gavindean906 个月前
I’ve read about this approach in the past and am curious if anyone has any experience trying to get an organization to buy into it.
评论 #42325674 未加载
评论 #42325476 未加载
swyx6 个月前
here is my alternative system: <a href="https:&#x2F;&#x2F;www.swyx.io&#x2F;documentation-levels" rel="nofollow">https:&#x2F;&#x2F;www.swyx.io&#x2F;documentation-levels</a><p>i find that the divio&#x2F;diataxis 2x2 can be -too- complete, which is harmful for earlier stage, less mature open source projects, and also equal weights areas that nobody equal weights in real life.<p>my system takes inspiration from real docs and creates a progression based on project maturity, aka prioritizing just the important stuff at the early stages.<p>- *Level 0: Basic proof of concept*<p><pre><code> - _Example audience: you&#x2F;colleagues&#x2F;hobbyists_ - One sentence description for github headline - README with API docs - goal is to save yourself from looking at source code </code></pre> - *Level 1: v0.x*<p><pre><code> - _Example audience: greenfield early adopters. Ok with missing documentation, they are here for the idea. can contribute code&#x2F;docs_ - One paragraph description with more context - could be a sales pitch but also give an idea of when to use you - Feature list&#x2F;Project Goals - Install + Config Instructions </code></pre> - *Level 2: v1*<p><pre><code> - _Example audience: brownfield early adopters. Ok with bugs, they have some problem that isnt well addressed. Needs convincing._ - Comparison vs comparable libraries - Problem Statement - what you solve, how the developer&#x2F;end user is better off with your thing than handwritten. aka Why You Exist - Basic Examples - Live Demos </code></pre> - *Level 3: vX*<p><pre><code> - _Example audience: early majority user. Wants ease of use, quick wins. Need to be very reliable. Needs content to sell solution to team_ - Project Status badges - Tutorial - Third Party Plugins&#x2F;Libraries - How-To Guide&#x2F;Cookbook&#x2F;Recipes - User&#x2F;Maintainer Content - Official Blog&#x2F;Project and Meeting Notes - Talks - 3rd Party Blogs - Video Tutorials - Podcasts - Comprehensive Examples </code></pre> - *Level 4: Production use for multiple years*<p><pre><code> - _Example audience: expert user. Needs API stability&#x2F;migration instructions, deep insight on how the project works and how it can solve problems. Needs to customize&#x2F;adapt for at-scale&#x2F;weird usecases_ - Growing the MetaLanguage - Origin Story&#x2F;Naming - Who Uses Us - Logos - Quotes&#x2F;endorsements&#x2F;testimonials - Link to production use - Funding - Migration docs from previous versions - Roadmap - Reader-friendly Changelog - Anti-Docs - Helping Contributors - _Example audience: Industry beginner. They may not know any alternatives. You are the entire world to them._ - Explain acronyms, jargon - &quot;1 to N&quot; Docs - Different docs for different audiences (eg JS&#x2F;Android&#x2F;iOS) - Different languages - Examples - [Vue](https:&#x2F;&#x2F;vuejs.org&#x2F;) - [Django](https:&#x2F;&#x2F;docs.djangoproject.com&#x2F;en&#x2F;3.0&#x2F;) - some [meta thoughts here](https:&#x2F;&#x2F;jacobian.org&#x2F;2009&#x2F;nov&#x2F;10&#x2F;what-to-write&#x2F;) - [React](https:&#x2F;&#x2F;reactjs.org)</code></pre>
chris_nielsen6 个月前
Where would ChatGPT fit?
评论 #42326850 未加载
euroderf6 个月前
A frequent post to HN. It seems there is appeal in trying to systematize the entire idea of TC. I&#x27;d like to see this extended to three dimensions.
评论 #42327513 未加载
评论 #42325524 未加载
评论 #42329224 未加载
评论 #42325516 未加载