<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://blog.dask.org</id>
  <title>Dask Working Notes - Posts by Julia Signell and Jacob Tomlinson</title>
  <updated>2026-03-05T15:05:19.906619+00:00</updated>
  <link href="https://blog.dask.org"/>
  <link href="https://blog.dask.org/blog/author/julia-signell-and-jacob-tomlinson/atom.xml" rel="self"/>
  <generator uri="https://ablog.readthedocs.io/" version="0.11.12">ABlog</generator>
  <entry>
    <id>https://blog.dask.org/2022/07/15/documentation-framework/</id>
    <title>Documentation Framework</title>
    <updated>2022-07-15T00:00:00+00:00</updated>
    <author>
      <name>Julia Signell and Jacob Tomlinson</name>
    </author>
    <content type="html">&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 8)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;section id="executive-summary"&gt;

&lt;p&gt;Yesterday at the Dask BOF at &lt;a class="reference external" href="https://www.scipy2022.scipy.org/"&gt;SciPy&lt;/a&gt; we were talking about the recent docs work and how we can fill holes in our documentation. We want to come up with a strategy to improve things.&lt;/p&gt;
&lt;p&gt;For a while, we’ve been exploring moving our documentation to the &lt;a class="reference external" href="https://diataxis.fr/"&gt;Diátaxis Framework&lt;/a&gt;, and after catching up with other maintainers at SciPy it is clear that many projects are converging on this framework and we are confident about continuing on this journey. This post lays out how we will take the existing docs and apply the framework to make content clearer and easier to find. NOTE: This blog post sketches out where we are going, but the change will happen incrementally.&lt;/p&gt;
&lt;p&gt;We want the docs to quickly answer questions like:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;I know my workflow is parallizable - can Dask help?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How do I find my logs for a particular worker?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Should I be using &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;.persist()&lt;/span&gt;&lt;/code&gt;?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 20)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="contents"&gt;
&lt;h1&gt;Contents&lt;/h1&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference internal" href="#theory"&gt;&lt;span class="xref myst"&gt;Theory&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference internal" href="#current-documentation"&gt;&lt;span class="xref myst"&gt;Current Documentation&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference internal" href="#new-structure"&gt;&lt;span class="xref myst"&gt;New Structure&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference internal" href="#how-you-can-help"&gt;&lt;span class="xref myst"&gt;How you can help&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 27)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="theory"&gt;
&lt;h1&gt;Theory&lt;/h1&gt;
&lt;p&gt;The Diataxis Framework proposes that the documentation be split into 4 entirely separate sections.&lt;/p&gt;
&lt;p&gt;&lt;img alt="Diataxis Framework" src="https://blog.dask.org/_images/diataxis-framework.png" /&gt;
&lt;em&gt;Credit: https://diataxis.fr/&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Each section serves a unique purpose.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Tutorials&lt;/strong&gt; provide a narrative that addresses a particular larger objective such as predicting global temperature or analyzing financial data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;How-Tos&lt;/strong&gt; target people who already know &lt;em&gt;what&lt;/em&gt; they want to do and are trying to figure out &lt;em&gt;how&lt;/em&gt; to do it. These people might ask questions like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How do I apply a rolling mean to a timeseries?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How do I groupby a column?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How do I write to a geotiff?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Reference&lt;/strong&gt; provides the exact arguments and outputs of a particular operation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Explanation&lt;/strong&gt; gives context and includes descriptions of how operations work internally.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 44)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="current-documentation"&gt;
&lt;h1&gt;Current Documentation&lt;/h1&gt;
&lt;p&gt;There are several different sites that comprise different aspects of dask documentation. Of particular interest are &lt;a class="reference external" href="https://examples.dask.org"&gt;Examples&lt;/a&gt;, &lt;a class="reference external" href="https://tutorial.dask.org"&gt;Tutorials&lt;/a&gt; and &lt;a class="reference external" href="https://docs.dask.org"&gt;Docs&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The bulk of the documentation that we currently have on &lt;a class="reference external" href="https://docs.dask.org"&gt;Docs&lt;/a&gt; falls under “Explanation” and “Reference” but they are pretty intermingled. There are also some small “How-Tos” sprinkled in, particularly in the API docs.&lt;/p&gt;
&lt;p&gt;The material on &lt;a class="reference external" href="https://tutorial.dask.org"&gt;Tutorials&lt;/a&gt; is a mixture of “Tutorial” and “Explanation”. They answer questions like: “What can I do with Dask Dataframes?” &lt;em&gt;and&lt;/em&gt; questions like “What is a Dask Dataframe?”. These are styled like lectures in that there is often no motivating example and the assumption is that the audience wants to learn both about how to do specific operations in dask and how those operations work. This type of material can be consumed as standalone content and runs on binder.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://examples.dask.org"&gt;Examples&lt;/a&gt; pretty much falls under “How-To” but there is a fair amount of setup and each example isn’t split into small enough bits. They answer questions like: “How do I use dask dataframes?” and they have some more longer workflows.&lt;/p&gt;
&lt;section id="which-pages-are-most-used"&gt;
&lt;h2&gt;Which pages are most used?&lt;/h2&gt;
&lt;p&gt;From Google Analytics we can see the most commonly viewed pages.&lt;/p&gt;
&lt;img src="/images/docs-google-analytics.png" width="70%"&gt;
&lt;p&gt;It is hard to understand whether those pages are the most visible, or if they actually contain the information that people are trying to find. But either way, it conveys the importance of navigation in directing users.&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 62)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;/section&gt;
&lt;section id="new-structure"&gt;
&lt;h1&gt;New Structure&lt;/h1&gt;
&lt;p&gt;&lt;a class="reference external" href="https://tutorial.dask.org"&gt;Tutorial&lt;/a&gt; will be left as is and treated as a long-form overview.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://examples.dask.org"&gt;Examples&lt;/a&gt; will be presented more as &lt;strong&gt;How-Tos&lt;/strong&gt; with little explanation and more code. This will be similar to gallery or cookbook style documentation that you may see in other projects. Historically one of the current roles of examples is to demonstrate what Dask looks like, that role is now subsumed by “10 Minutes to Dask”.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://docs.dask.org"&gt;Docs&lt;/a&gt; will be reorganized and the left-nav will be slimmed down dramatically to provide direction. One idea for the left-nav is:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;Installation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;10 Minutes to Dask (&lt;strong&gt;How-To&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tutorials &amp;amp; Talks (&lt;strong&gt;Tutorial&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Examples (&lt;strong&gt;How-To&lt;/strong&gt;)- this will be a landing page that points to individual sections of &lt;a class="reference external" href="https://examples.dask.org"&gt;Examples&lt;/a&gt; or API Reference.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Best Practices (&lt;strong&gt;Explanation&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;API (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;User Guide (&lt;strong&gt;Explanation&lt;/strong&gt;)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;DataFrame - explains what a dataframe is - links out aggressively to reference docs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Array&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bag&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Delayed&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Futures&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Task Graphs&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scheduling&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Diagnostic Dashboard&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuration (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deploy Dask Clusters (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Development Guidelines (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Changelog (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;FAQs (&lt;strong&gt;Reference&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Many docstrings (aka &lt;strong&gt;Reference&lt;/strong&gt;) already contain their own short-form &lt;strong&gt;How-To&lt;/strong&gt; docs. I think this is a good place for these and we can thoroughly link from other places to these canonical docs.&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2022/07/15/documentation-framework.md&lt;/span&gt;, line 96)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="how-you-can-help"&gt;
&lt;h1&gt;How you can help&lt;/h1&gt;
&lt;p&gt;Please raise issues on the dask issue tracker when you find holes in the docs! The largest gaps we see now are in “how to” which commonly are found via Google. So if you search for how to do something in Dask, and you’re looking for copy-paste examples but can’t find any then let us know.&lt;/p&gt;
&lt;p&gt;If you see other gaps please let us know about those too. And if you know how your needs fit into the diataxis framework even better :)&lt;/p&gt;
&lt;/section&gt;
</content>
    <link href="https://blog.dask.org/2022/07/15/documentation-framework/"/>
    <summary>Document headings start at H2, not H1 [myst.header]</summary>
    <published>2022-07-15T00:00:00+00:00</published>
  </entry>
</feed>
