cheatsheet

Technical Writing Cheatsheet

Code is read by machines; documentation is read by humans. Both require clarity, structure, and optimization. Based on Google Developer Documentation Style Guide, The Elements of Style, and 理科系の作文技術 (Technical Writing for Science and Engineering).

1. Core Principles (The “Linting” Rules)

Active Voice

Make it clear who is performing the action. Passive voice obscures responsibility and bloats text.

Second Person (Use “You”)

Address the user directly. Third-person terms like User or Developer create unnecessary distance.

Present Tense

Documentation describes what exists now. Avoid future tense (will) unless promising a future feature.


2. Structure & Layout (Refactoring Text)

BLUF (Bottom Line Up Front)

State the conclusion first. Readers are busy; do not bury the lead.

Lists over Prose

Break down complex series (3+ items) into lists.

Bad: To optimize the model, you can adjust the learning rate, change the batch size, and increase the number of epochs.

Good: To optimize the model:

Parallelism in Lists

Ensure all list items start with the same part of speech (usually imperative verbs).


3. Clarity & Conciseness (Optimization)

Kill Filler Words

Delete words that add no meaning. Treat them like compiler warnings.

Remove Why
basically / essentially Adds no information.
very / really / quite Weakens adjectives. Use stronger words or specific numbers.
in order to “to” is sufficient.
at this point in time “now” or “currently” is sufficient.
needless to say If it’s needless, don’t say it.

Short Sentences

One idea per sentence. Long sentences breed ambiguity. Break them up.

Clarify Antecedents

Avoid vague it, this, that.


4. Specific Artifacts Templates

README.md Structure

The landing page. Answer “What is this?” in 3 seconds.

  1. Project Name & One-line Description: What is this?
  2. Badges: CI status, License, Version.
  3. Why this?: Differentiators, value proposition.
  4. Quick Start: Minimal installation and “Hello World” code.
  5. Installation: Detailed setup instructions.
  6. Usage/Examples: Common use cases.

Git Commit Messages (Conventional Commits)

Machine-parseable history.

Format: <type>(<scope>): <subject>

Example: feat(solver): implement sparse matrix support for GMRES


5. Tools (Linter for Prose)

Just as code has linters, prose has linters.


6. Common Typos & Gotchas in Tech


7. 理科系の作文技術

木下是雄著『理科系の作文技術』に基づく。

7.1. 基本姿勢

事実と意見の区別

最も重要な原則。「事実(Fact)」と「意見(Opinion)」を厳密に区別する。

読者の設定

「誰に読ませるか」を最初に決める。

7.2. 構成

起承転結の否定

理系の文章に「起承転結」は不要であり、有害ですらある。

重点先行主義

  1. 目標規定文: この文書は何を主張するものか、最初に一文で定義する。
  2. 要約(Summary): 結論と重要ポイントを最初に書く。
  3. 本論: 詳細な論証。
  4. 結論: まとめ。

7.3. パラグラフ

7.4. 文体

明確な主語と述語

日本語は主語を省略しがちだが、技術文では誤解を招く。

簡潔な表現

漢字と平仮名のバランス