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
Fast Deployment and Monitoring For HelsinkiJS
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Brent Beer
May 14, 2014
Programming
1
290
Fast Deployment and Monitoring For HelsinkiJS
Talk given at HelsinkiJS. Updated slides and colors for presentation
Brent Beer
May 14, 2014
Tweet
Share
More Decks by Brent Beer
See All by Brent Beer
How GitHub Does Devops
brntbeer
0
190
Tips and Tricks: Gotta Git Them All
brntbeer
3
630
Pull Request, code review and the GitHub Flow
brntbeer
0
270
Everything I wish I knew when I started using GitHub
brntbeer
1
7.4k
Fast Deployment and Monitoring
brntbeer
1
130
Collaboration Behind your Firewall
brntbeer
0
70
How GitHub Builds Products
brntbeer
2
200
Collaborative Teaching for More Effective Learning
brntbeer
1
210
Other Decks in Programming
See All in Programming
CSC307 Lecture 11
javiergs
PRO
0
590
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
200
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.5k
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
210
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
180
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
2
160
Unity6.3 AudioUpdate
cova8bitdots
0
110
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
530
AHC061解説
shun_pi
0
320
Event Storming
hschwentner
3
1.3k
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
390
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
230
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
240
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
Making Projects Easy
brettharned
120
6.6k
The Curious Case for Waylosing
cassininazir
0
260
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
600
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
A Tale of Four Properties
chriscoyier
162
24k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
850
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Transcript
Fast Deployment and Monitoring Why continuous integration and ChatOps are
crucial to every application
Agenda Who am I? Testing Hooks / Services ChapOps
Who am I?
Trainer
Developer
In San Francisco now
None
Who even writes tests?
Who even writes tests first ?
I never did while in school
I still don't
I still don't
I'm geing beer!
Tests
"They take too long to write!"
"They take too long to write!" "I don't know how
to write them"
"They take too long to write!" "I don't know how
to write them" "My code is perfect"
"They take too long to write!" "I don't know how
to write them" "My code is perfect" Lies! Lies! Lies!
Make it easy to run tests
script/cibuild
None
None
Sometimes running tests takes too long
Sometimes running tests takes too long
"Well older things still pass tests"
Share burden and responsibility
Never work alone
Never work alone
Pull Requests
Send yourself Pull Requests
Get others to do the work for you!
@mentions
@mentions
What if others could see if your tests were passing
without running the code?
Hooks and Services
Make tests run easily for services
script/cibuild
Many third party services can be hooked into GitHub
Status API
Now someone visiting the Pull Request can know what's going
on
Status Types
History of timeline statuses
Details
None
So many CI services
None
None
None
Self Configuration
None
None
Manual Configuration
None
None
None
Services can do more than just send data to the
API
ChatOps
Context of the current state of things
Why Chat?
Hubot
Hubot
hubot.github.com
None
None
None
None
Hubot's Domain
Who does the things? Service? Hook? Robot?
Hubot: deploy all the things
Make it fast
Hubot: Make it fast
Deploys
None
None
"Hello @user, your deploy was successful, keep an eye on
Haystack"
"Hello @user, your deploy was successful, keep an eye on
Haystack"
None
Digging Deeper
Going beyond an exception
Graphite
Graphite
Now we have things reporting
Now we have things reporting
Who should fetch these graphs?
None
None
None
Maybe just a dashboard view?
Dashing
None
Dashboards
None
Group understanding
Group understanding
Useful commands
Hubot: help pager
Hubot: graph me -12h @network.border.cp1.bgp
Hubot: graph me -4h @browser.frontend
Hubot: deploy training- app/chronological to production
Teach by doing
This was always my main motivation with Hubot - teaching
by doing by making this visible. It's an extremely powerful teaching technique. - @rtomayko
Signal vs Noise
Next Steps
Easy to run tests
More tests get wrien
Or collaborate
What's the state of the Pull Request?
What has been happening on the Pull Request
Your chatroom could be your office
Use robots
Use robots more
How do things look?
Don't bother me
Keep Deploying. Keep Building. Do it Faster & Safer.
Thank you! Brent Beer GitHub Trainer @brntbeer hp://bit.ly/fast-deployment-monitoring-helsinkijs
References: hps://hubot.github.com hps://github.com/shopify/dashing hps://github.com/graphite-project hps://github.com/etsy/statsd/ hps://developer.github.com/v3/ hps://github.com/collectd hps://developer.github.com/v3/ hps://circleci.com/ hps://travis-ci.org/
hps://github.com/github/janky