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
150
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
220
What were they thinking?
keithpitty
0
220
How not to have future developers curse you
keithpitty
1
80
How not to give advice (about Markdown)
keithpitty
0
91
Morphing your Ruby into Civil Tech
keithpitty
0
110
Loving Legacy Code
keithpitty
0
670
Better OO Design in Rails
keithpitty
0
88
Other Decks in Programming
See All in Programming
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
480
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.2k
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
820
CSC307 Lecture 11
javiergs
PRO
0
580
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
3
380
15年目のiOSアプリを1から作り直す技術
teakun
0
580
CSC307 Lecture 15
javiergs
PRO
0
200
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
2.1k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
190
AIプロダクト時代のQAエンジニアに求められること
imtnd
1
510
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.6k
AI巻き込み型コードレビューのススメ
nealle
2
2.5k
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
120
A designer walks into a library…
pauljervisheath
210
24k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Designing for Performance
lara
611
70k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
300
WCS-LA-2024
lcolladotor
0
470
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4k
The Curious Case for Waylosing
cassininazir
0
260
Tell your own story through comics
letsgokoyo
1
830
Building AI with AI
inesmontani
PRO
1
760
Deep Space Network (abreviated)
tonyrice
0
81
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