Documentation
Documentation is a love letter that you write to your future self.
Last updated
Documentation is a love letter that you write to your future self.
Last updated
One of our main goal when delivering a project is to make sure that our customer can use autonomously the solution we have deployed. We achieve this by working hand in hands with the customer team during the implementation but mainly by writing down a solid documentation. We rely on divio principles for writing our documentation.
There is a secret that needs to be understood in order to write good software documentation: there isn’t one thing called documentation, there are four.
They are: tutorials, how-to guides, technical reference and explanation. They represent four different purposes or functions, and require four different approaches to their creation. Understanding the implications of this will help improve most documentation - often immensely.
People working with software need these four different kinds of documentation at different times, in different circumstances - so software usually needs them all, and they should all be integrated into your documentation.
And documentation needs to be explicitly structured around them, and they all must be kept separate and distinct from each other.
oriented to
learning
a goal
information
understanding
must
allow the newcomer to get started
show how to solve a specific problem
describe the machinery
explain
its form
a lesson
a series of steps
dry description
discursive explanation
analogy
teaching a small child how to cook
a recipe in a cookery book
a reference encyclopaedia article
an article on culinary social history
This division makes it obvious to both author and reader what material, and what kind of material, goes where. It tells the author how to write, and what to write, and where to write it. It saves the author from wasting a great deal of time trying to wrestle the information they want to impart into a shape that makes sense, because each of these kinds of documentation has only one job.
In fact, it’s extremely hard to maintain good documentation that doesn’t implicitly or explicitly recognise the quadrants of this scheme. The demands of each kind are different from those of the others, so any attempt at documentation that fails to maintain this structure suffers, as it’s pulled in different directions at once.
Once you understand the structure, it becomes a very useful tool for analysing existing documentation, and understanding what needs to be done to improve it.