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
1
120
Documentation Journey
A talk about Documentation I gave a PDXNode in November 2013
ericholscher
November 08, 2013
Tweet
Share
More Decks by ericholscher
See All by ericholscher
Introduction to Django Channels - ConFoo Vancouver 2016
ericholscher
0
220
Understanding Documentation Systems - ConFoo Vancouver 2016
ericholscher
0
280
Python Documentation: Past, Present, & Future
ericholscher
3
330
Understanding Documentation Systems
ericholscher
1
270
Documentation as Empathy
ericholscher
1
240
Introduction to Sphinx & Read the Docs Djangocon 2015
ericholscher
0
170
Announcing Read the Docs for Business
ericholscher
1
230
Write the Docs NA 2014 Introduction
ericholscher
0
150
Introduction to Sphinx & Read the Docs
ericholscher
3
480
Other Decks in Technology
See All in Technology
KMP導⼊において、マネジャーとして考えた事
sansantech
PRO
1
220
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
370k
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
1.3k
継続戦闘能⼒
sansantech
PRO
0
230
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
48
32k
ソフトウェアテストのAI活用_ver1.20
fumisuke
0
160
libsyncrpcってなに?
uhyo
0
180
kintone開発組織のDevOpsへの移り変わりと実践
ueokande
1
220
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
25k
Data Hubグループ 紹介資料
sansan33
PRO
0
1.8k
オープンソースのハードウェアのコンテストに参加している話
iotengineer22
0
730
Java で学ぶ 代数的データ型
ysknsid25
2
1k
Featured
See All Featured
Designing for humans not robots
tammielis
253
25k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
What's in a price? How to price your products and services
michaelherold
245
12k
Practical Orchestrator
shlominoach
188
11k
Designing Experiences People Love
moore
142
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
BBQ
matthewcrist
88
9.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Statistics for Hackers
jakevdp
799
220k
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?