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
Writing for developers workshop
Search
Alice Bartlett
January 24, 2019
Technology
1
230
Writing for developers workshop
Alice Bartlett
January 24, 2019
Tweet
Share
More Decks by Alice Bartlett
See All by Alice Bartlett
Strategy workshop from LDX3 Director+
alicebartlett
0
410
The Journey of a Byline
alicebartlett
0
290
Getting more from Git
alicebartlett
0
1.2k
presentations_ft.pdf
alicebartlett
1
370
All Day Hey! - Can't you make it more like bootstrap?
alicebartlett
2
2.2k
Case study on the FT's Responsive Image Service
alicebartlett
0
550
Git for Humans
alicebartlett
67
35k
FT Accessibility 101
alicebartlett
2
680
Can't you make it more like Bootstrap? (CASCADIA CONF)
alicebartlett
1
1.2k
Other Decks in Technology
See All in Technology
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
380
会社にデータエンジニアがいることでできるようになること
10xinc
9
1.6k
ドキュメントはAIの味方!スタートアップのアジャイルを加速するADR
kawauso
3
360
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
2
230
TypeScript入門
recruitengineers
PRO
13
3.5k
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
280
株式会社ARAV 採用案内
maqui
0
340
見てわかるテスト駆動開発
recruitengineers
PRO
4
320
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
2.2k
Goss: New Production-Ready Go Binding for Faiss #coefl_go_jp
bengo4com
0
1.1k
Backboneとしてのtimm2025
yu4u
4
1.5k
Gaze-LLE: Gaze Target Estimation via Large-Scale Learned Encoders
kzykmyzw
0
320
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
KATA
mclloyd
32
14k
Designing for humans not robots
tammielis
253
25k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
How to Ace a Technical Interview
jacobian
279
23k
Visualization
eitanlees
147
16k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Transcript
Alice Bartlett Principal Engineer, Customer Products team @alicebartlett Writing for
developers
@alicebartlett Disclaimer: I AM NOT A WRITER
1. Why writing is important for developers 2. Tips for
writing well 3. A exercise!
1. Why writing is important for developers @alicebartlett
@alicebartlett This should be obvious: part of being an effective
developer is being able to communicate ideas and instructions well
@alicebartlett A useful tool for communicating is writing!
@alicebartlett Writing clearly and concisely can be difficult, but the
payoff is huge
@alicebartlett Writing clear and concise documentation is going to be
strategically important this year.
@alicebartlett This year we have more code than ever to
maintain and so people are going to need to work on things they haven’t worked on before
@alicebartlett If these codebases are well documented the it’s a
lot easier to work on them
@alicebartlett Writing well doesn’t need to be onerous. It requires
a bit of effort, but luckily there are a lot of tools around.
@alicebartlett Good writing is clear and concise.
Clear writing is unambiguous. The reader understands precisely what the
writer intended. @alicebartlett
Concise writing is short. The writer communicated her idea in
as few words as possible thereby not wasting the reader’s time. @alicebartlett
1. Why writing is important for developers 2. Some tips
for writing well 3. A exercise!
2. Some tips for writing well @alicebartlett
@alicebartlett
Grammatical correctness is important but it is not everything @alicebartlett
Its, it’s, there, their, they’re. It’s easy to get hung up on apostrophe usage or spelling but there are more important things to focus on
@alicebartlett These minor errors can be a distraction from thinking
further about the words you’ve chosen and how well they're communicating your thoughts and intent
@alicebartlett Ideally your words would be good and your grammar
would be flawless. But grammar won’t save you if the communication of your idea is poor in other ways
@alicebartlett And, yes, there are cases where an apostrophe can
change the meaning of a sentence.
Structure things for skim readers @alicebartlett Use headings, tables, lists,
asides, bold, emphasis…
Don’t bury the lede @alicebartlett Put the most important information
at the top of the section. Don’t make people read a whole paragraph to understand the most important part
Headings should give you the gist @alicebartlett They should summarise
in a single sentence what follows
@alicebartlett How do I raise a ticket? // information on
how to raise a ticket Raise a ticket in Jira // information on how to raise a ticket
@alicebartlett How do I raise a ticket? // information on
how to raise a ticket Raise a ticket in Jira // information on how to raise a ticket // Better // OK
@alicebartlett Be conversational It’s OK to use contractions like “there’s”
instead of “there is”. Our documentation can be useful without being formal.
@alicebartlett Be conversational Unless you’re writing a formal document such
as a technical specification as defined by the W3C.
@alicebartlett Be concrete and personal Use “you” and “we” Use
“will”
@alicebartlett Not “The aim is to complete phase one by
June”
@alicebartlett Not “Aiming for completion end of June”
@alicebartlett But “We will complete phase one by the end
of June”
Avoid words like “probably”, “maybe”, “might”, “could be” @alicebartlett Don’t
equivocate
@alicebartlett These words are bad for the reader, who is
looking for clear instructions.
@alicebartlett Avoiding them forces you to think about what you
actually mean.
@alicebartlett “We think the best strategy is X” Not
@alicebartlett “The best strategy is X” But
In the active voice, the subject of the sentence does
the action @alicebartlett Avoid the passive voice
@alicebartlett The active voice forces you to take responsibility for
what you are saying
@alicebartlett We use the passive voice when we’re trying to
distance ourselves from the message
@alicebartlett I’ve made a mistake We’ll email you We’ve decided
A mistake was made You will be emailed A decision has been made
https://www.mcsweeneys.net/articles/an-interactive-guide-to-ambiguous-grammar
@alicebartlett Monzo’s style guide contains a useful hack for telling
if you’ve used the passive voice
@alicebartlett I’ve made a mistake We’ll email you We’ve decided
A mistake was made You will be emailed A decision has been made
@alicebartlett I’ve made a mistake by monkeys We’ll email you
by monkeys We’ve decided by monkeys A mistake was made by monkeys You will be emailed by monkeys A decision has been made by monkeys
@alicebartlett Avoid metaphors and idioms
@alicebartlett “You can’t have your cake and eat it too”
@alicebartlett This phrase exists in other languages
@alicebartlett In Italian, the equivalent phrase is
@alicebartlett “Volere la botte piena e la moglie ubriaca”
@alicebartlett “Volere la botte piena e la moglie ubriaca” “Want
a full wine barrel and a drunk wife”
Avoid “simply”, “just” @alicebartlett
Simply rotate the key @alicebartlett
“Simply” adds no value to this sentence. If you don’t
know how to rotate the key, it makes you feel bad. If you do, then you don’t need to know it’s simple @alicebartlett
Simply rotate the key @alicebartlett
@alicebartlett Avoid jargon and acronyms
@alicebartlett Jargon and acronyms create an in- group who know
what they mean, and an out-group who do not
@alicebartlett Jargon is lazy
Hemingway (named after Earnest Hemingway) is an app that shows
when your writing isn’t clear @alicebartlett Use Hemingway
@alicebartlett
None
1. Why writing is important for developers 2. Some tips
for writing well 3. A exercise!