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
Blithe Rocher
August 02, 2014
Programming
0
95
The Scientific Method of Troubleshooting
This version of the talk was presented at eurucamp 2014.
Blithe Rocher
August 02, 2014
Tweet
Share
More Decks by Blithe Rocher
See All by Blithe Rocher
Microservices War Stories
blithe
1
150
The Scientific Method of Troubleshooting
blithe
1
190
The Scientific Method of Troubleshooting
blithe
2
630
Other Decks in Programming
See All in Programming
孤独のCTOグルメという やや奇抜な企画をやった目的と効果
shoheimitani
3
1k
IntelliJ IDEA を知らなかった 自分に教えたい小ネタ集 / IntelliJ IDEA Hints for My Past Self
mackey0225
3
180
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
150
Learning PHP and Static Analysis with PHP Parser
inouehi
1
250
Data Contracts In Practice With Debezium and Apache Flink (Kafka Summit London)
gunnarmorling
2
280
incrementalモデルの理解を深める
ikkimiyazaki
2
640
ドメイン・ファーストで考える問題解決に役立つモデル設計 / Domain First Model Design
suzushin54
1
1.5k
15分間でふんわり理解するDocker @ Matsuriba MAX
ukwhatn
PRO
1
340
RubyVM を PHP で実装する 〜Hello World を出力するまで〜
memory1994
PRO
1
490
Parallel Socket Communication in Swift
s_shimotori
0
260
自動テスト実行結果の目的を整理する / Organizing objectives of automated test results
twada
PRO
10
2.1k
「コンパイル時のユニットテスト」導入するとユニットテストを 書かなくてよくなるのか?
tomohisa
9
2.2k
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
Debugging Ruby Performance
tmm1
68
11k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Rails Girls Zürich Keynote
gr2m
91
13k
How GitHub (no longer) Works
holman
301
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
RailsConf 2023
tenderlove
0
510
Building Better People: How to give real-time feedback that sticks.
wjessup
350
18k
Statistics for Hackers
jakevdp
789
220k
Designing with Data
zakiwarfel
94
4.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
185
15k
Transcript
The Scientific Method of Troubleshooting
@blithe
Big Nerd Ranch Atlanta, Georgia
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
Expected behavior? ! ! !
Expected behavior? ! Actual behavior? !
Expected behavior? ! Actual behavior? ! Criteria for success?
Do Your Research
Know your environment
Read the literature
Discussions
Make it fail!
Establish a Hypothesis
Design the Experiment
Divide and conquer!
Limit the variables
Try something weird
None
Hierarchy of Blame
Gather Data
Current status?
Read the error message!
Analyze Your Results
Problem solved? ! Learn anything?
Understand the Why
Future Experiments
Embrace the Success
Keep a Good Lab Notebook
None
You won’t remember
Logs aren’t enough
Commit Messages
Update the Docs
Contribute
None
Share the Knowledge
Thanks! @blithe