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
Not so weird after all
Search
Jeroen Leenarts (AppForce1)
June 04, 2013
Programming
0
44
Not so weird after all
A presentation I gave at Xebia about some root cause analysis.
Jeroen Leenarts (AppForce1)
June 04, 2013
Tweet
Share
More Decks by Jeroen Leenarts (AppForce1)
See All by Jeroen Leenarts (AppForce1)
Building a Vapor Swift backend integration with authentication and authorization
jeroenleenarts
0
610
The developer’s manual: working with and managing software developers
jeroenleenarts
0
45
PassKeys and WebAuthN: What you want to know
jeroenleenarts
0
580
Being a Lead Software Developer
jeroenleenarts
1
350
SECONDARY SKILLS AS A DEVELOPER
jeroenleenarts
0
1.2k
Try Swift intro
jeroenleenarts
0
16
Micro Frameworks: What, why and how?
jeroenleenarts
0
25
mDevcon 2015: See the time on your wrist
jeroenleenarts
0
130
A inspirational presentation at a company's hackathon
jeroenleenarts
0
98
Other Decks in Programming
See All in Programming
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
3.4k
SwiftUI API Design Lessons
niw
1
260
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.6k
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
1
110
海外のアプリで見かけたかっこいいTransitionを真似てみる
shogotakasaki
1
160
AWSで雰囲気でつくる! VRChatの写真変換ピタゴラスイッチ
anatofuz
0
150
ベクトル検索システムの気持ち
monochromegane
31
9.9k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
2.9k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.3k
AHC 044 混合整数計画ソルバー解法
kiri8128
0
330
プロダクト横断分析に役立つ、事前集計しないサマリーテーブル設計
hanon52_
2
390
フロントエンドテストの育て方
quramy
11
2.9k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
What's in a price? How to price your products and services
michaelherold
245
12k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
Why Our Code Smells
bkeepers
PRO
336
57k
Six Lessons from altMBA
skipperchong
27
3.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Visualization
eitanlees
146
16k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Transcript
Weird things can happen A tale on understanding documentation and
undefined behavior
Just imagine •Your project is doing great! •Apple rolled out
new language features •Lets use those features •Stuff just breaks (but only in production)
What’s going on here? •New release rolled out •Sudden increase
by XXX % of “3 times wrong pin” occurrences •Sh#t hit the fan! Lots of users not happy!
Reproduction steps •Get a new or “factory reset” device •Install
App •Register as usual •Logout •Login •Why is my pin not working? !$#%
Initial suspicions •It must’ve been a change we introduced in
this release, right? •Right!?
None
Finding the problem •Well, sort of... it seems. •No joy
during debugging. •Doesn’t crash on simulator •Doesn’t crash on our test devices when debugging
How can this break? •Why didn’t we see this before?
•Why does it break now? •Putting back the old code “solves” it. •So that’s our initial bug fix.
Having that bad feeling •This doesn't feel right •This should
not break!
Let’s go line by line
Let’s read some docs
Call in the cavalry •Some guy said to enable optimizations..
;) •Let’s try that then...
None
Click, click, BOOM!!
What we learned
None