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
The Scientific Method of Troubleshooting
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Blithe Rocher
August 11, 2015
Programming
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The Scientific Method of Troubleshooting
This version of the talk was presented at New Relic on August 10, 2015.
Blithe Rocher
August 11, 2015
More Decks by Blithe Rocher
See All by Blithe Rocher
Microservices War Stories
blithe
1
220
The Scientific Method of Troubleshooting
blithe
2
720
The Scientific Method of Troubleshooting
blithe
0
160
Other Decks in Programming
See All in Programming
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
4
830
이 함수, 실패하면 어떻게 되나요? null부터 Rich Errors까지, Kotlin 에러 처리 15년
haeti2
0
130
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
230
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
140
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
630
Building an Out-of-Order CPU
latte72
0
670
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.4k
ALB ログから Trace を気合で繋げる技術
fohte
7
860
Webエンジニアなのにブラウザの仕組みがわからないので、Pythonで自作してみた
tatsuki12
4
1.7k
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
630
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
420
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
The SEO Collaboration Effect
kristinabergwall1
1
550
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
A Soul's Torment
seathinner
7
3.5k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Bash Introduction
62gerente
615
220k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
330
Being A Developer After 40
akosma
91
590k
Transcript
The Scientific Method of Troubleshooting
@blithe
None
Scientist
PhD in Physical Chemistry
Physics
Chemistry
6 Years!
Experiments
Scientific Method
Developer < >
StackOverflow
Problem solved?
Learn anything?
Most Important Part
Scientific Method
Set of Techniques For Acquiring Knowledge
Methodical
Systematic
“Has anyone seen string interpolation fail?”
Define the Problem 2 3 4 5 6 7 1
Expected behavior?
Expected behavior? Actual behavior?
Expected behavior? Actual behavior? Criteria for success?
Do Your Research 3 4 5 6 7 Define 2
Know your environment
Read the literature
Discussions
Make it fail!
Establish a Hypothesis 5 6 7 Define Research 4 3
Design the Experiment 6 7 Define Research Hypothesis 5 4
Divide and conquer!
Limit the variables
Try something weird
None
Hierarchy of Blame
Gather Data 6 7 Define Research Hypothesis Experiment 5
Current status?
Read the error message!
Analyze Your Results 7 Define Research Data Hypothesis Experiment 6
Problem solved? Learn anything?
Understand the Why
Future Experiments
Embrace the Success
Keep a Good Lab Notebook Define Research Data Hypothesis Experiment
Analyze 7
None
You won’t remember
Logs aren’t enough
Commit Messages
Update the Docs
Contribute
None
Share the Knowledge
Questions? Thanks! @blithe