Why documentation is good (important)
Being a developer is definitely exciting, but how about being good proficient and exited in the
same time? One of the good ways to keep the job in a perfect development and business shape is to maintain and have
good documentation. The most important reasons why we need that are: knowledge transfer, application tracking (
while working on multiple projects ), software maintenance. Let's talk about important points:
The environment of the server:
Imagine maintaining and developing the application without understanding how the environment was set up. It will
take bunch of time just to figure out the things, whereas with the documentation we can have easy start with
understanding of:
- application details, the current version
- server parameters
- directory path for the code
- application access
- current OS
- POC in case of questions
Business understanding - what am I doing here?
The worst thing that could happen is if the manager or hired personal doesn't know what are they doing, why they are
doing this or not something else. When people are on the same page and understand the purposes, functionality and
goals
- it's much easier to cooperate and work as a team. Also, from the side of a manager it will be more comfortable to
analyze the possible problems, for developers catch the job easier and cut "on boarding" process, saving thousands
of
company's $ and gaining productivity.
Troubleshooting
We can handle most of the issues from the code side, but how about the data errors? Without good documentation it
is
very hard for a new developer to understand how a specific data-related problem was resolved before.
Environment set-up:
Installing, setting up configuration and launching applications from scratch might be tricky and unclear, every step
of
the process is very important. The good documentation will provide steps, list of libraries, server versions and
parameters - everything that will ensure that environment is ready to be used for the project and works as
intended.
Software and deployment
It's always good to have deployment processes to be documented when we release new updates. The information about
releases, where they are located and could be found or where they need to be moved. The presence of good
documentation
in your company will make your team efforts efficient and successful in such processes as creating an app package,
build
to be deployed, finding the code repository and file updates.
To sum up
Writing docs sometimes is boring and time consuming process, but just remember that it's not supposed to be fancy -
make
it simple, easy to understand, functional and helpful. From my previous experience, the fact that we built docs
upfront
with both video/wiki formats saved us time and a lot of money. We on-boarded 15 new developers in record time - 4
weeks! (think about money and time resources, huge impact).