How I Started?: Sometimes, You Have To Put Yourself in Other People's Shoes, and This Is The Case. Precise Things
How I Started?: Sometimes, You Have To Put Yourself in Other People's Shoes, and This Is The Case. Precise Things
Source: https://documentation.divio.com/
Software development is not just about writing code in a programming language. Writing
documentation can be seen as a wasteful task, but proper documentation is a must. Well-
organized, easy-to-access, useful and readable – written in the clearest manner possible; those
are essential attributes for a successful project, especially if you expect others to be able to use
your code. In the same way as testing, documentation must be part of your development
process from get-go. Get acquainted with the best practices to improve your internal software
documentation.
How I started?
Usually, we find on software pages the website’s name followed by a short description. The
latter description is not only the first content users read, but also the information search engines
use to position the documentation webpage. A few words should be enough to explain what
your project does and why it exists. For open-source projects, consider adding license, version,
installing requirements, contribution instructions and recommendations. All this information
might be written in a “README” doc.
Who are you writing for? A user profile can be an easier way to organize the documentation you
provide. Sometimes, you have to put yourself in other people's shoes, and this is the case. FAQ
sections to deal with general issues or usual problems, are ideal to explain precise things about
your project. The only factor to determine good software documentation is feedback, for in the
end users define how valuable or relevant is the information you present.
Writing documentation for the first time is certainly tedious. Being so, we must begin with
instructions and comments on code, then continue with specific file documentation:
Helpful tools
Efficient internal documentation can be an automated process. With the right tools it is possible
to generate documentation from source code, even making information easily accessible, on
multiple versions and formats. Sphinx creates intelligent documentation for the Python
community (sooner than later for other programming languages) by converting ReST files into
HTML web pages and other formats such as PDF or ePub. Therefore, users write their pages in
ReST, a plaintext markup language which, although being certainly simple, as in Python, is
sensitive to indentation. It includes tools for documenting HTTP APIs. ReadtheDocs, a hosting
documentation software, provides their service with Sphinx for free.
Doxygen generates online documentation in HTML of a set of source files, multi-language, free
for use and works on all top operating systems (Linux, Windows, macOS). It also has support
for generating output in RTF (MS-Word), PDF, compressed HTML and UNIX manual pages. For
API docs from Java source code to HTML, Javadoc looks at include comments in code and
automatically generates system documentation containing descriptions, parameters, return
values. If there are no structured comments, some system documentation generators can
automatically determine classes, methods, and variables.