How I try to document everything when developing

How I try to document everything when developing

Is this the documenting process worth it or too much trouble?

Software Development nowadays is complex; you have to content yourself of plenty of things. The most effective way to be productive in this situation, I've experienced, is to try keeping track of subtle changes, requirements, code snippets even if I will never use them again.

For example, I use Typora text editor, whenever I encounter an issue, to document it and try usually solving it before actually coding anything.

I start writing the :

  • current situation e.g. docker cannot be launched due to some errors
  • brief description of steps to reproduce such as running Docker Jumpstart
  • Possible solutions based on research on sites such as StackOverflow or GitHub
  • I try to keep track of the steps I've done with a Steps done list; for example Remove VM Virtual Box and Reinstall Docker Toolbox
  • I then add a resolved list consisting of steps that solved the issue; such as reinstalling the latest version of virtual box after windows 10 update
  • And a conclusion that pinpoints exactly, according to me, what was the real issue

What are the PROS?

By documenting the issue, whenever I or a colleague encounter that later, in months that I forget about it, I can come back to the document. This helps saving time without having to reinvent the wheel, that is research again all the steps.

What are the CONS?

This process takes a lot of time to document every issue especially when there are more urgent bugs or change requests.