Learn to integrate programming with good documentation. This book teaches you the craft of documentation for each step in the software development lifecycle, from understanding your users' needs to publishing, measuring, and maintaining useful developer documentation.
Well-documented projects save time for both developers on the project and users of the software. Projects without adequate documentation suffer from poor developer productivity, project scalability, user adoption, and accessibility. In short: bad documentation kills projects.
Docs for Developers demystifies the process of creating great developer documentation, following a team of software developers as they work to launch a new product. At each step along the way, you learn through examples, templates, and principles how to create, measure, and maintain documentation-tools you can adapt to the needs of your own organization.
You will:
- Create friction logs and perform user research to understand your users' frustrations
- Research, draft, and write different kinds of documentation, including READMEs, API documentation, tutorials, conceptual content, and release notes
- Publish and maintain documentation alongside regular code releases
- Measure the success of the content you create through analytics and user feedback
- Organize larger sets of documentation to help users find the right information at the right time
Autorentext
Jared Bhatti
Inhalt
Getting Started
- Researching documentation
Understanding your users
Cultivating empathy
- Understanding user desires, user needs, and company needs
Recruiting users for research
Research methods
- Reading code comments
Trying it out
Running diverse and inclusive focus groups and interviews
User journey mapping
- Identifying and working with stakeholders
Finding your experts
Collaborative documentation development
- Learning from existing content
The value of design documents
Finding examples in industry
Friction logs
Defining your initial set of content
Deciding your minimum viable documentation
- Drafting test and acceptance criteria
Understanding content types
Concepts, tutorials and reference documentation
API specifications
READMEs
Guides
Release notes
Setting yourself up for writing success
Who is this for? Personas, requirements, content types
- Definition of done
How to iterate
Tools and tips for writing rough drafts
Understanding your needs
Choosing your writing tools (handwriting, text-only, productivity/measurement writing tools)
- Hacks to get started drafting content
Mechanics
Headings
Lists
Notes and warnings
Conclusions/tests
Using templates to form drafts
- Purpose of a template
How to derive a template from existing docs
How to take templates into text
Gathering initial feedback
Feedback methods
Getting feedback from difficult contributors
Editing content for publication
Determine destination
Editing tools (Grammarly, linters, etc)
- Declaring good enough
Recap, strategies, and reassurance
Structuring sets of documentation
Where content types live
Concepts, tutorials and reference documentation
- Code comments
API specifications
Guides
Release notes
READMEs
Content information architecture styles
Designing for search
- Creating clear, well-lit paths through content
User testing and maintenance
Planning for document automation