Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Documentation Journey
Search
ericholscher
November 08, 2013
Technology
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Documentation Journey
A talk about Documentation I gave a PDXNode in November 2013
ericholscher
November 08, 2013
More Decks by ericholscher
See All by ericholscher
Introduction to Django Channels - ConFoo Vancouver 2016
ericholscher
0
270
Understanding Documentation Systems - ConFoo Vancouver 2016
ericholscher
0
320
Python Documentation: Past, Present, & Future
ericholscher
3
390
Understanding Documentation Systems
ericholscher
1
320
Documentation as Empathy
ericholscher
1
270
Introduction to Sphinx & Read the Docs Djangocon 2015
ericholscher
0
230
Announcing Read the Docs for Business
ericholscher
1
250
Write the Docs NA 2014 Introduction
ericholscher
0
180
Introduction to Sphinx & Read the Docs
ericholscher
3
610
Other Decks in Technology
See All in Technology
AI駆動開発におけるQAエンジニアの役割事例 〜AI駆動開発の現場から〜
kobayashiyorimitsu
0
420
SRE Next 2026 何でも屋からの脱却
bto
0
260
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
140
GuardrailからGovernanceへ~AIエージェント運用の次の課題~
sbspsy
1
240
AI時代のエンジニアキャリアについて今一度考える
sakamoto_582
2
1.4k
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
150
環境凍結という Toil を倒す -セルフサービス型 Ephemeral テスト環境の 設計と実践
shirouz
1
1.9k
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
デジタル・デザイン構想 by Sayaka Ishizuka
y150saya
0
200
キャリアの中で本を作る / Making a Book During Your Career
ak1210
0
130
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
4.2k
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
380
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The SEO Collaboration Effect
kristinabergwall1
1
500
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Odyssey Design
rkendrick25
PRO
2
730
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
320
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
970
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Rails Girls Zürich Keynote
gr2m
96
14k
The Spectacular Lies of Maps
axbom
PRO
1
850
Transcript
Eric Holscher PDX Node Nov ‘13 Documentation Journey
What This Talk Is • High level overview of how
to think about documentation • Why documentation matters • Overview of my thoughts on doing docs well • Discussion around Node community documentation
What this talk isn’t • Telling you how to write
docs • User/Product documentation
Disclaimer • I don’t know a lot about Node
Who am I • Maintainer of Read the Docs •
Co-Organizer of Write the Docs
Why Write Docs
You will be using your code in 6 months
You want people to use your code
You want people to help out
It makes your code better
You want a (better) community
You want to be a better writer
Documentation as Empathy
outreach • We want more people to code • How
do I become a programmer? • Having good documentation allows people to learn how to program
Internationalization • Documentation is much more accessible for non-native speakers
• Text is most easily translated into other languages
Other Audiences • Each tool is unique • People want
to use your code, so make it easy for them, whoever they are.
Good Documentation
Types of Documentation • Tutorials • Overviews and Topical Guides
• Reference Material
Tutorials • Be quick • Be easy (but not too
easy) • Give a “feel” for your project
Tutorials • Great for people who are new to your
project • Should aim to delight or scare
Topical Guides • High level concepts • Vertical component •
Comprehensive
Topical Guides • Great for people who don’t know your
project space well • Give you the “why” • The “meat” of your docs
Reference • Provide lists of classes and modules • Organize
by hand, generate to keep up to date
Reference • Great for users who already use your so
ware • Give you the “how”
Official • Good documentation comes from the project • Must
be constantly updated with code changes • Put process in place
If you only have reference docs, your docs are broken
Current Tools
README’s • Great for small projects • Provide a very
specific thing • Basically a “getting started” doc
Blog Posts • Quickly goes out of date • Stack
Overflow solves this problem better • Good for Topical Guides
Wiki’s • No ownership • Lower quality based on “someone
will fix it later”
Books • Free projects should have free documentation • Books
are effectively always out of date
Reference • Generally provided by automated tools • http://jsdoc.info/
State of the Art • Folder Full of Markdown •
Served on GitHub • “Website”
Missing bits
Missing Bits • Overview of ecosystem/project • Central Repository for
Prose Documentation • Standard Tools
Standard Tooling • Need a common format • Where you
go a er a folder full of markdown • Not “build a custom website”
Documentation Focused • Not a website builder • Needs primitives
specific to documentation
Tooling Benefits • Search • Discovery • Design • Interoperability
• Platform (API)
Easy and Obvious • New users need an easy way
to get started • There needs to be an obvious path towards a good solution
Path Forward
Community • Docs are a community problem • You need
to expect them and complain if they don’t exist
Young • You can help shape what the world looks
like • Derived projects will follow your lead
Conclusion • Good documentation is hard work • Documentation acts
as outreach • Work to improve tools, to make writing documentation easier
Reference Links • jacobian.org/writing/great- documentation/ • docs.writethedocs.org/en/latest/ writing/beginners-guide-to-docs/
Thanks • @ericholscher •
[email protected]
• Questions?