Documentation
Documentation is recorded explanatory, instructional, or reference information that describes a subject, system, or process to support its understanding, use, or maintenance.
Lead Developer Career Guide
Written information describing the features, operation, or technical aspects of a product or system for a technical audience.
- How it is used
- Provides a shared reference for system behavior, team processes, troubleshooting, and developer onboarding.
- How deep it goes
- Details structuring, concise writing, and recurring review practices without teaching code implementation.
- Examples
- Contrasts wordy and concise setup instructions and recounts product-support questions and overlapping APIs.
- What you can do after
- Practice/perform documentation planning, concise writing, and regular review to keep team guidance usable.
Read how Lead Developer Career Guide explains documentation →
"Looks Good to Me"
Written material that explains software behavior, usage, implementation, or relevant reference information.
- How it is used
- Supports pull-request review, team process definition, feature communication, and emergency execution records.
- How deep it goes
- Provides checklists and required records, but does not detail documentation tooling, information architecture, or maintenance practices.
- Examples
- Uses pull-request descriptions, visual before-and-after comparisons, process workflows, emergency authorization records, and execution logs.
- What you can do after
- Apply documentation through pull-request checklists and produce an accountable record of emergency actions and deviations.
Delivering Machine Learning Projects: From design to deployment
Documentation is recorded information describing a project's work, decisions, requirements, and system state.
- How it is used
- Keeps ML delivery decisions and system knowledge available across sprint work, handover, and production support.
- How deep it goes
- Specifies checkpoint records and four production documents, with concrete run-book uses rather than document templates.
- Examples
- Uses a post-modeling checklist and run-book responses to data errors and application-server faults.
- What you can do after
- Practice/perform sprint record-keeping and prepare support documents that help teams reproduce work and respond to production errors.
Read how Delivering Machine Learning Projects: From design to deployment explains documentation →
Effective Data Analysis
Documentation is the systematic recording of methods, data, procedures, and decisions so that work can be understood, evaluated, or repeated.
- How it is used
- Positions documentation as a way to preserve analytics work and make curated data understandable to teammates and stakeholders.
- How deep it goes
- Defines project and data documentation, then gives record-keeping goals and a metadata-based approach without prescribing a single documentation system.
- Examples
- Uses information schemas and a documented dbt users dimension table with column meanings, an update process, and sample queries.
- What you can do after
- Practice/perform it by retaining reusable project records and writing descriptions that help others find, understand, and use data.
Think Like a Software Engineering Manager
The practice of recording information about systems, processes, decisions, or procedures for later reference.
- How it is used
- Supports remote learning, shared project expectations, operational response, and knowledge transfer during departures or leadership changes.
- How deep it goes
- Distinguishes records for agreements, services, and procedures, with guidance on sharing and review rather than a detailed documentation-writing method.
- Examples
- Uses shared meeting minutes, troubleshooting runbooks, service diagrams, and departure handovers as concrete artifacts.
- What you can do after
- Practice/perform documentation by recording agreements and critical operational knowledge so teammates can consult them during work and transitions.
Read how Think Like a Software Engineering Manager explains documentation →
Think Like a CTO
Documentation is the practice and resulting body of recording information about systems, processes, decisions, or work so it can be understood and maintained over time.
- How it is used
- Preserves operational knowledge and design rationale so teams can maintain systems and onboard people as they grow.
- How deep it goes
- Develops audience, format, validation, and maintenance guidance, with procedural detail for operations and releases; defers specific compliance standards.
- Examples
- Uses an owner’s manual, a tested build procedure, a deployment guide, and an annotated database schema.
- What you can do after
- Practice/perform documentation by capturing critical procedures, testing them with another reader, and updating them as systems change.
Machine Learning System Design
Documentation is a maintained collection of information that describes a system, its implementation, operation, and associated procedures.
- How it is used
- Supports knowledge transfer, onboarding, system operation, and continuity when original builders leave.
- How deep it goes
- Treats documentation as maintained operational infrastructure and illustrates reproducible deployment, but does not specify a formal documentation schema.
- Examples
- Uses reproducible language-model deployment and a poorly documented Bitcoin on-chain analysis as contrasting operational examples.
- What you can do after
- Operate/configure an ML system more independently by following documentation to reproduce deployment and inspect associated artifacts.
Read how Machine Learning System Design explains documentation →
Shipping Go: Develop, deliver, discuss, design, and go again
Software documentation is written information that explains software code, behavior, usage, or design.
- How it is used
- Guides contributors through setup and code use while making team practices repeatable.
- How deep it goes
- Works through README commands and Go comment checks, without prescribing an exhaustive documentation standard.
- Examples
- Uses Go 1.18 setup commands, a macOS-support TODO, and golangci-lint checks for comments.
- What you can do after
- Practice/perform README maintenance and Go comment checks with `make static-check` before merging changes.
Read how Shipping Go: Develop, deliver, discuss, design, and go again explains documentation →
Learn Rust in a Month of Lunches
Documentation is explanatory material that describes how code works and how it can be used.
- How it is used
- Guides readers through unfamiliar Rust code and provides reusable explanations of public types, methods, and functions.
- How deep it goes
- Explains documentation layout, searching, assertions, comments, and generation with Cargo, without developing the generator’s internals.
- Examples
- Uses assert_eq! checks, Vec operations, /// comments, generated pages, search navigation, and small example structs.
- What you can do after
- Apply it via Cargo and documentation pages to find APIs, interpret examples, and describe your own Rust code.
Read how Learn Rust in a Month of Lunches explains documentation →
The Art of Code
Technical documentation is written information that explains a software system’s purpose, usage, design, operation, or maintenance.
- How it is used
- Reduces the need to reverse-engineer code and preserves intent, usage, and system interactions near implementation.
- How deep it goes
- Explains maintenance rationale and several repository-based forms, but stops short of prescribing a complete documentation workflow.
- Examples
- Uses commit messages, Javadoc, Python docstrings, C# XML comments, OpenAPI, GraphQL, and gRPC as concrete artifacts.
- What you can do after
- Apply it by storing maintainable comments, contracts, schemas, and commit explanations alongside the codebase.
BDD in Action, Second Edition
Technical documentation is information describing software behavior, implementation intent, interfaces, or operation for technical practitioners.
- How it is used
- Organizes executable specifications, readable code, and tests as documentation of product behavior and implementation.
- How deep it goes
- Descends from high-level requirements to executable unit and integration specifications, while treating light architectural documentation as complementary.
- Examples
- Uses feature files, annotated code samples, unit tests, integration tests, and BDD tests for critical legacy behavior.
- What you can do after
- Evaluate/understand existing behavior, support safer changes, and reduce regression risk through executable acceptance and unit tests.
Read how BDD in Action, Second Edition explains documentation →
The AI Pocket Book
Written reference material describing a model or system, including development details and supported information as required here.
- How it is used
- Uses concise library references to avoid reinventing cookie-cutter software tasks.
- How deep it goes
- Shows documented inputs, installation, invocation, and output, but does not develop documentation practices or standards.
- Examples
- Uses a sun-position library, its installation command, its function call, and its returned coordinates.
- What you can do after
- Evaluate and apply an existing library by checking its documented interface before trusting generated code.
Related concepts
- cargo docproduced by · cargo doc is a Cargo command that generates documentation for Rust packages and their dependencies.
- living documentationincludes · Living documentation is documentation maintained or validated as a system evolves so that it remains aligned with the system, behavior, design, or decisions it describes.
- testproduced by · A test is a procedure or check that evaluates behavior using specified inputs or evidence against expected results or criteria.
- commenthas part · A comment is text or markup designated by a format's syntax as an annotation or non-content rather than ordinary executable or data content.
- specificationincludes · A specification is a formal or informal description of the required or intended behavior, properties, interfaces, or constraints of a system or component.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.











