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
OMG BUILDZ
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Scott Robinson
November 03, 2011
Programming
160
0
Share
OMG BUILDZ
To all my downtrodden build monkeys of the world.
Scott Robinson
November 03, 2011
More Decks by Scott Robinson
See All by Scott Robinson
DevOps is People
quad
1
440
A Build Monkey's Apology
quad
1
180
After today, you will yell at doors
quad
0
200
Railfans in North Korea
quad
1
460
Test Invaders
quad
0
280
So Help Me God, You Will Understand Git's Model, Even If It Kills Me
quad
0
210
Functional Reactive Programming: A Video Game and Piece of CRUD
quad
1
1k
Just Die Already
quad
0
16k
What and who are DNS, SMTP, and XMPP?
quad
1
320
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
270
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
520
Agentic AI in the Frontend: Architectures with Open Standards @iJS London 2026
manfredsteyer
PRO
0
100
cloudnative conference 2026 flyle
azihsoyn
1
210
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
720
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
5
620
My daily life on Ruby
a_matsuda
3
440
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
120
Swiftのレキシカルスコープ管理
kntkymt
0
190
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
370
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
260
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
3
570
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7k
Music & Morning Musume
bryan
47
7.2k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
The Spectacular Lies of Maps
axbom
PRO
1
760
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
What's in a price? How to price your products and services
michaelherold
247
13k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
GraphQLとの向き合い方2022年版
quramy
50
15k
A better future with KSS
kneath
240
18k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Transcript
HAI GAIS
None
λ = t·d
0! 10! 20! 30! 40! 50! 60! 70! 80! 90!
1! 2! 4! 8! 16! # of contributors! Builds / hr" (avg. 1 - 4 commits / hr)!
L = λW Little’s Law
1! 2! 3! 4! 5! 6! 7! 8! Build 1!
Build 2! Build 3!
None
Pre-Commit
Smoke Build Test Deploy
Smoke Build Test Deploy Test
Smoke Build Test Deploy Test Build Build Test Test
Smoke Build Test Deploy Test Build Build Deploy Deploy Test
Deploy Test
Smoke Important Mess Less Important Mess
Feedback Cycle
Feedback Cycle • Order stages by team value • Do
not stop for regression • Do not mark tests as broken
What stops you from continuing with confidence?
•Resourcing •Configuration What takes our time?!
On Designing and Deploying Internet-Scale Services http://bit.ly/ReadThisPaper
Use Virtual Machines
Use Virtual Machines • Snapshot and Clone • Validate machines
• Resource by Capability
Resource by Capability • Windows • JRuby • Selenium •
build • project-a • scott’s box YES NO
Use Configuration Management
Use Configuration Management
Use Configuration Management Vagrant
Configuration • Version build configuration • Build scripts in the
source tree • Use build artifacts
•Keep build time low •Each stage in a pipeline increases
confidence •Builds are part of your software
fin The hardest part about builds is safe experimentation. Sadly,
our tools make this hard for us.
Thank You — Andrew K. — Brady L. — Brian
G. — Dane B. — Darren S. — Dave R. — Evan B. — James F. — Julio M. — Kristan V. — Maha N. — Rob H. — Ryan B. — Sam G. — Scott S. — Sreeni A. — Wen D.