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
Failure Teaches Success
Search
Hiromu Shioya
July 17, 2014
Technology
0
4.2k
Failure Teaches Success
2014-07-17 System Lightning Talks Bar Vol.2
"Failure Teaches Success" by kwappa
Hiromu Shioya
July 17, 2014
Tweet
Share
More Decks by Hiromu Shioya
See All by Hiromu Shioya
My Generation 年配者がこの先生きのこるには (Developers CAREER Boost 2024 Edition)/My Generation How elder engineers can survive
kwappa
4
1.7k
三大あいまい能力/Three ambiguous abilities
kwappa
1
260
My Generation 年配者がこの先生きのこるには/My Generation How elder engineers can survive
kwappa
3
6.3k
勝ちに不思議の勝ちあり、負けに不思議の負けあり/There is a mystery to win, but there is no mystery to lose
kwappa
0
280
伸び代だらけのチームに 伸びてもらうための施策100連発/100 measures to grow up a team with a lot of growth potential
kwappa
1
230
HIGH OUTPUT Infrastructure Engineering
kwappa
1
42
礼節とHRTと心理的安全性/Civility, HRT and Psychological Safety
kwappa
0
810
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
2
3.5k
デスマーチから身を守るたったひとつの方法
kwappa
2
7.1k
Other Decks in Technology
See All in Technology
推し書籍📚 / Books and a QA Engineer
ak1210
0
120
インフラ寄りSREの生存戦略
sansantech
PRO
8
3.3k
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
470
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
290
Lakebaseを使ったAIエージェントを実装してみる
kameitomohiro
0
170
[SRE NEXT] ARR150億円_エンジニア140名_27チーム_17プロダクトから始めるSLO.pdf
satos
3
1.7k
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
2
220
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
140
Four Keysから始める信頼性の改善 - SRE NEXT 2025
ozakikota
0
130
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
600
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
0
150
microCMSではじめるAIライティング
himaratsu
0
110
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
RailsConf 2023
tenderlove
30
1.1k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Designing for humans not robots
tammielis
253
25k
Visualization
eitanlees
146
16k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Code Review Best Practice
trishagee
69
19k
Embracing the Ebb and Flow
colly
86
4.7k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Docker and Python
trallard
44
3.5k
Transcript
Failure Teaches Success 2014-07-17! System Lightning Talks Bar Vol.2! SHIOYA,
Hiromu (@kwappa)
Hello, World!
kwappa SHIOYA Hiromu
None
http://cookpad.com
http://info.cookpad.com
http://bit.ly/cookpadjobs
Failure Teaches Success
CASE 1 1998
FLAG SHOULD NEVER COMPARE TO 1
FOR EXAMPLE
!!! BUG !!! item[42] # => 0
!!! BUG !!! item[42] # => 1
!!! BUG !!! item[42] # => 2
!!! BUG !!! item[42] # => 3
!!! BUG !!! item[42] # => 4
!!! BUG !!! item[42] # => 5
DEAD END
BETTER ONE
CASE 2 2008
BOSS SHOULD NEVER DEPLOY
NEW BOSS CAME AND TOLD US
NEW BOSS CAME AND TOLD US I USED TO CODE,
BUT I TOOK AN ARROW IN THE KNEE...
OUR SYSTEM commit checkout rsync DEVELOPER SVN STAGING DEPLOY PRODUCTION
HERE COMES THE BOSS rsync STAGING DEPLOY PRODUCTION
HERE COMES THE BOSS login rsync STAGING DEPLOY PRODUCTION
HERE COMES THE BOSS login rsync STAGING DEPLOY PRODUCTION $vi
regist.php
HERE COMES THE BOSS login rsync STAGING DEPLOY PRODUCTION $vi
regist.php $rm regist.php
HERE COMES THE BOSS login rsync STAGING DEPLOY PRODUCTION $vi
regist.php $rm regist.php $svn hogehoge
HERE COMES THE BOSS login rsync STAGING DEPLOY PRODUCTION $vi
regist.php $rm regist.php $svn hogehoge $./deploy.sh
CASE 3 2014
ERRORS SHOULD NEVER PASS SILENTLY
http://www.flickr.com/photos/chrisdonia/3460805358/
http://www.flickr.com/photos/chrisdonia/3460805358/ ʊਓਓਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼ 500 ʻ ʼ INTERNAL SERVER ERROR ʻ
ʉY^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Yʉ
OAuth2::Response#parsed # => nil
https://github.com/intridea/oauth2/commit/ 56f9758d961fc317a05b2f93fd039588967a84b1
None
None
None
None
WHY DID IT WORK? multi_xml oauth2 requires
WHY DID IT WORK? multi_xml httparty oauth2 requires depends
WHY DID IT WORK? aws-sdk-ruby multi_xml httparty oauth2 requires depends
depends
WHY DID IT BRAKE?
WHY DID IT BRAKE? Gemfile
WHY DID IT BRAKE? Gemfile.lock Gemfile
https://github.com/aws/aws-sdk-ruby/commit/ c25952ed50d568172de6eb1756525a35eeb2fa77
WHY DID IT BREAK? aws-sdk-ruby multi_xml httparty oauth2 requires depends
depends
WHY DID IT BREAK? aws-sdk-ruby multi_xml httparty oauth2 requires depends
WHY DID IT BREAK? aws-sdk-ruby multi_xml oauth2 requires
WHY DID IT BREAK? aws-sdk-ruby oauth2 requires
WHY DID IT BREAK? aws-sdk-ruby oauth2 requires ʊਓਓਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼ 500
ʻ ʼ INTERNAL SERVER ERROR ʻ ʉY^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Yʉ
CONCLUSION
FLAG SHOULD NEVER COMPARE TO 1
FLAG SHOULD NEVER COMPARE TO 1 BOSS SHOULD NEVER DEPLOY
FLAG SHOULD NEVER COMPARE TO 1 BOSS SHOULD NEVER DEPLOY
ERRORS SHOULD NEVER PASS SILENTLY
Failure Teaches Success SHARE YOUR FAILURES!!! THANK YOU FOR LISTENING