Layman's Guide to Documenting Your Next Big Project
Basics to know before you grab your coffee and start hitting the keys.
Documentation is a crucial component of any successful project or product. Good documentation can help users understand how to use a product or service, troubleshoot issues, and implement new processes. However, writing effective documentation can be a challenge. It requires careful planning, attention to detail, and the ability to explain complex concepts in simple terms.
The guy who knows about computers is the last person you want to have creating documentation for people who don't understand computers.
~ Adam Osborne
Documentation is like the air we breathe, essential for survival but often taken for granted. You wouldn't drive a car without knowing what pedal does what or attempt to put together IKEA furniture without instructions (unless you're some sort of mad genius), so why would you release software without proper documentation? It's like sending a toddler into a candy store without any supervision - chaos will ensue, and nobody will come out unscathed.
Okay, I Get The Point. What to keep in mind?
There's really not much to it if you know what you are stepping into. You just need to keep note of a few points mentioned below to nail it in your initial drafts:
1) Know your audience:
Determine who your documentation is intended for and what they need to know. This will help you tailor your language and tone to their level of expertise. For software available to the masses, layman's language is the way to go.
2) Proceed with a purpose:
Clearly define the purpose of your documentation. Is it to teach someone how to use a product, troubleshoot an issue, or explain a process? Understanding the purpose will help you structure the content and focus on what’s most important.
3) Structurize:
Plan the structure of your documentation, including sections and subsections. Use headings, bullet points, and tables to make the content easier to comprehend and navigate.
4) Simplism supremacy:
Use simple and concise language to explain each topic. Avoid technical terms unless they are necessary. Use clear language to explain complex concepts.
5) Visualize:
Include diagrams, screenshots, and videos to supplement the text and help readers better understand complex topics. Humans are visual learners, so having visual aids can make life easier for the user.
6) Examples go a long way:
Use real-life examples to illustrate how to use a product or process. This can help readers better understand how to apply the information provided. A good example can be Bootstrap documentation, which includes code snippets showing how to implement its various components.
7) Test your documentation:
Before publishing your documentation, have someone review it to ensure it is accurate, easy to follow, and addresses the needs of your target audience (probably not your mum though, unless she's into technical stuff).
8) Keep updating it:
Update your documentation regularly to reflect changes in the product, process, or service. That new feature isn't any good if people can't use it.
"Once you realize that documentation should be laughed at, peed upon, put on fire, and just ridiculed in general, then, and only then, have you reached the level where you can safely read it and try to use it to actually implement a driver."
~ Linus Torvalds
Alright! Now, Where Do I Start?
When you start up with your documentation process, you first need to know if you really need it, and know what structure to follow in case you do. These questions are answered below for you:
Do I really need the documentation?
As a rule of thumb, if you are working on a project, product or service that requires a user to interact with it, you will likely need to create documentation. This could include user manuals, technical guides, FAQs, help files, or any other type of document that provides information about the product or service. Even if you are working on an internal project or process, documentation can help ensure that everyone is on the same page and understands their roles and responsibilities.
What Structure do I follow?
Let's say you're documenting a new software your company made. Here is an example documentation structure for the same:
I. Introduction
Purpose of the software
Overview of the software’s features
Installation instructions
II. Getting Started
System requirements
Download and installation process
How to access the software
User account creation and management
III. User Interface
Overview of the user interface
Navigation
Menus and buttons
Customization options
Shortcuts and hotkeys
IV. Functionality
Description of the software’s functions and capabilities
How to perform common tasks
Troubleshooting tips and error messages
Use cases and examples
V. Integration and Compatibility
Compatibility with other software and systems
APIs and third-party integrations
Configuration options for integrations
VI. Security and Privacy
Data protection and privacy measures
User access and permissions
Backup and disaster recovery procedures
VII. Maintenance and Updates
Routine maintenance tasks
How to update the software
Release notes and changelogs
VIII. Glossary
- Definitions of technical terms and concepts used in the documentation
IX. Appendix
Additional resources, such as FAQs or user forums
Contact information for technical support or customer service
This structure provides a comprehensive overview of the software and covers all the necessary information to help users understand how to use it. Breaking down the information into sections makes it easier for users to navigate and find the information they need. You can further adapt and modify it to fit the specific needs of your software and the target audience.
Also, know that different products or software need a different structure of documentation. Programming languages, for example, have different structures. You can visit any of the official documentation for any programming language and see how certain categories are swapped for others, according to need.
Apart from this, there is not much else that needs to be considered. And to top it off, most niggles can be fixed with valuable feedback from a tester.
Wrapping things up
In conclusion, writing documentation is a piece of cake. All you need is a comprehensive understanding of the topic, impeccable writing skills, and the patience of a saint. It's so easy, in fact, that we're left wondering why there aren't more people writing documentation as a hobby. Perhaps it's because they don't want to be showered with gratitude and adoration from their peers. Or maybe they're just intimidated by the sheer awesomeness of the task.
And don't forget, if all else fails, just copy and paste from Stack Overflow - nobody will ever know. (Just kidding, please don't do that. People aren't stupid enough to not know).