$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Don't Get Clever
Search
avdi
July 20, 2013
1
420
Don't Get Clever
Part of the Ruby Rogues live panel episode at Lone Star Ruby Conference 2013.
avdi
July 20, 2013
Tweet
Share
More Decks by avdi
See All by avdi
Pairing is Caring
avdi
2
520
Code to Joy
avdi
10
1.7k
Building Gems that Don't Suck
avdi
4
580
Making Little Classes out of Big Ones
avdi
29
3.3k
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
Discover your Explorer Soul
emna__ayadi
2
1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
400
First, design no harm
axbom
PRO
1
1.1k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
140
We Have a Design System, Now What?
morganepeng
54
7.9k
[SF Ruby Conf 2025] Rails X
palkan
0
560
Evolving SEO for Evolving Search Engines
ryanjones
0
73
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
32
Ruling the World: When Life Gets Gamed
codingconduct
0
100
WENDY [Excerpt]
tessaabrams
8
35k
Transcript
Don't Get Clever Avdi Grimm
Pop quiz r e q u i r e '
p s t o r e ' s t o r e = P S t o r e . n e w ( ' d a t a . p s t o r e ' ) s t o r e . t r a n s a c t i o n ( t r u e ) d o # . . . e n d
Pop quiz 2 A r r a y . i
n s t a n c e _ m e t h o d s ( f a l s e )
Symbols are truthy r e q u i r e
' p s t o r e ' s t o r e = P S t o r e . n e w ( ' d a t a . p s t o r e ' ) s t o r e . t r a n s a c t i o n ( : r e a d _ o n l y ) d o # . . . e n d
Clever!
What's : r e a d _ o n l
y ?? s t o r e . t r a n s a c t i o n ( : r e a d _ o n l y ) d o # . . . e n d
Dead end s t o r e . t r
a n s a c t i o n ( : c h u n k y _ b a c o n ) d o # . . . e n d
Negation A r r a y . i n s
t a n c e _ m e t h o d s ( ! : i n c l u d e _ s u p e r )
Don't get clever
Intention-revealing argument r e a d _ o n l
y = t r u e s t o r e . t r a n s a c t i o n ( r e a d _ o n l y ) d o # . . . e n d
Intention-revealing argument i n c l u d e _
s u p e r = f a l s e A r r a y . i n s t a n c e _ m e t h o d s ( i n c l u d e _ s u p e r )
Inline version A r r a y . i n
s t a n c e _ m e t h o d s ( i n c l u d e _ s u p e r = f a l s e )
Don't get clever