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 08, 2014
Programming
720
2
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 Distill 2014 and GoGaRuCo 2014.
Blithe Rocher
August 08, 2014
More Decks by Blithe Rocher
See All by Blithe Rocher
Microservices War Stories
blithe
1
220
The Scientific Method of Troubleshooting
blithe
1
250
The Scientific Method of Troubleshooting
blithe
0
160
Other Decks in Programming
See All in Programming
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
460
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
150
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
150
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
350
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
180
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
320
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.6k
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
210
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
110
その節約、円になってますか?
isamumumu
1
720
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Raft: Consensus for Rubyists
vanstee
141
7.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Designing for Performance
lara
611
70k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Producing Creativity
orderedlist
PRO
348
40k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
It's Worth the Effort
3n
188
29k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
250
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
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 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