Write Documentation

Intent: Contribute to a free software project by writing useful documentation.

Problem

How to identify which documentation would be useful for the project? How to write such documentation?

This problem is difficult because:

Yet, solving it is feasible because:

Solution

Useful documentation includes, in general, …

source (project, contrib), activity (update, create),

Hints

Trade Offs

Pros: * It’s easier for stakeholders to understand the project, if there is a good documentation. * Compared to other kinds of contributions, it isn’t a difficult task.

Cons: * For an efficient contribution, it’s necessary a deep understanding of the project’s section. * Sometimes it’s difficult to know if the documentation is outdated or not. * It’s necessary to use the same technology just used to do the documentation, sometimes it’s represent another matter to study and tools to install.

Rationale

The only documentation that is always up to date is the code itself, but it is not easily understandable for all stakeholders. However, when stakeholders handle with outdated documentation, the project loses reliability. Therefore, it’s important to find out which documentation must be write and how it must be up date.

Example

Known Uses

To make a significant contribution, it’s necessary to [Look for TODO Lists] (@@root@@/involvement/LookForTodoLists.html), [Review Recent Activity] (@@root@@/contribution/ReviewRecentActivity.html) and prioritizes the next tasks. To avoid duplicating effort, working in wrong version, before start, remember to get the [Right Version for the Task] (@@root@@/contribution/RightVersionfortheTask.html).

What Next

Even with documentation contribution, it is important to [Review Your Changes] ((@@root@@/contribution/ReviewYourChanges.html) before submitting them. After all, you can’t forget to do a [Explanatory Commit Messages] ((@@root@@/contribution/ExplanatoryCommitMessages.html).