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
Why I use Guard
Search
Keith Pitty
May 26, 2016
Programming
0
140
Why I use Guard
Lightning Talk given at Melbourne Ruby Meetup on 25 July, 2016
Keith Pitty
May 26, 2016
Tweet
Share
More Decks by Keith Pitty
See All by Keith Pitty
Succeeding with Remote Retrospectives
keithpitty
0
200
What were they thinking?
keithpitty
0
210
How not to have future developers curse you
keithpitty
1
71
How not to give advice (about Markdown)
keithpitty
0
87
Morphing your Ruby into Civil Tech
keithpitty
0
89
Loving Legacy Code
keithpitty
0
640
Better OO Design in Rails
keithpitty
0
81
Other Decks in Programming
See All in Programming
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
1.8k
rage against annotate_predecessor
junk0612
0
170
Laravel Boost 超入門
fire_arlo
3
220
私の後悔をAWS DMSで解決した話
hiramax
4
210
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
130
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
170
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
170
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
10
4.3k
旅行プランAIエージェント開発の裏側
ippo012
2
920
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
460
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Practical Orchestrator
shlominoach
190
11k
What's in a price? How to price your products and services
michaelherold
246
12k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Documentation Writing (for coders)
carmenintech
74
5k
Visualization
eitanlees
148
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
It's Worth the Effort
3n
187
28k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Transcript
WHY I USE GUARD KEITH PITTY
None
WHY?
None
FAST AUTOMATIC FEEDBACK
FIN!
None
None
OH, OK …
None
HOW?
guard-rspec
REMEMBER AUTOTEST?
GuardFile
guard :rspec, cmd: 'zeus rspec' do watch('spec/spec_helper.rb') { "spec" }
watch(%r{^spec/.+_spec\.rb$}) watch(%r{^app/(.+)\.rb$}) { |m| "spec/ #{m[1]_spec.rb" } # etc. end
guard :rspec, cmd: 'zeus rspec'
None
None
None
< 1 SECOND
None
GuardFile
CURATION
watch('app/views/feeds/facebook/_encoded_content.erb') { "spec/controllers/feeds/facebook_controller_spec.rb" }
WHEN A FILE CHANGES …
AFFECTED TESTS RUN AUTOMATICALLY
None
FOCUS
SPECIFIC TEST
it "does what it should" do, focus: true # expect
something end
None
FIRST 10 FAILED SPECS
guard :rspec, cmd: 'zeus rspec', failed_mode: :focus do # etc.
end
guard-rspec
FAST AUTOMATIC FEEDBACK
None
ALSO …
guard-teaspoon
guard-livereload
guard-bundler
guard-ctags-bundler
AUTOMATION
None
NEXT?
None
guard-rubocop
WHY DO I USE GUARD?
FAST AUTOMATIC FEEDBACK
UNDERSTAND NOW?
None
None
THANK YOU!
@keithpitty