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
3.9k
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
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
0
2.5k
デスマーチから身を守るたったひとつの方法
kwappa
2
6.2k
メタエンジニアリングという選択肢/The choice named meta-engineering
kwappa
1
1.6k
レビューのつらさを倒したい/To Defeat the Pain of Reviewing
kwappa
3
4.7k
リモートワーク時代のコミュニケーションデザイン : コーチングに学ぶ1on1の基礎/Learn Basics of 1on1 from Coaching
kwappa
1
1.7k
The Show Must Go On 終わりのない道のなかばでふりかえる俺とDevLOVE / The Show Must Go On Looking back of me and DevLOVE in the middle of the endless road
kwappa
0
540
プロフェッショナルなエンジニアのためのコミュ力概論/Overview of communication skills for professional engineers
kwappa
2
3k
登壇は最強の生存戦略である / Speaking in conferences is the best survival strategy
kwappa
0
3.9k
礼節から育てるチームの健康と信頼性 / Improve team health and reliability starting with civility
kwappa
8
25k
Other Decks in Technology
See All in Technology
サーバー間 GraphQL と webmock-graphql の話 / server-to-server graphql and webmock-graphql
qsona
2
170
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
610
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
290
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
120
SREとその組織類型
tatsuo48
9
1.6k
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
420
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
850
20240416_devopsdaystokyo
kzkmaeda
1
200
HEXA OSINT CTF V3 作戦会議
meow_noisy
0
120
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
7
1.2k
継続的な改善 x ⾮連続的な進化
sansantech
PRO
3
120
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
170
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
43
9.7k
Web development in the modern age
philhawksworth
202
10k
What’s in a name? Adding method to the madness
productmarketing
PRO
15
2.6k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Optimising Largest Contentful Paint
csswizardry
7
2.3k
BBQ
matthewcrist
80
8.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
259
12k
Designing Experiences People Love
moore
136
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
12
4.6k
What the flash - Photography Introduction
edds
64
11k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.4k
Done Done
chrislema
178
15k
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