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
RailsConf 2015: What if Shakespeare Wrote Ruby?
Search
Adam Cuppy (he/him)
April 22, 2015
Programming
220
0
Share
RailsConf 2015: What if Shakespeare Wrote Ruby?
RailsConf 2015 Presentation
Adam Cuppy (he/him)
April 22, 2015
More Decks by Adam Cuppy (he/him)
See All by Adam Cuppy (he/him)
Mentorship in Three Acts
acuppy
0
130
Mechanically Confident
acuppy
1
160
Pluck It - Southeast Ruby 2017
acuppy
1
140
Trust Me - Rocky Mountain Ruby 2017
acuppy
0
100
Brighton Ruby 2017 - Difficult Conversations
acuppy
1
90
GoRuCo 2017 - Difficult Conversations
acuppy
0
140
GORUCO - Cult(ure)
acuppy
0
97
#RailsPacific - Taming Chaotic Specs - RSpec Design Patterns
acuppy
5
1.1k
#RailsPacific - [NOTES] Taming Chaotic Specs - RSpec Design Patterns
acuppy
1
230
Other Decks in Programming
See All in Programming
How Swift's Type System Guides AI Agents
koher
0
230
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
770
CDK Deployのための ”反響定位”
watany
4
720
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
260
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.9k
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
270
Nuxt Server Components
wattanx
0
270
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
200
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
890
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
490
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
840
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
290
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
520
Paper Plane
katiecoart
PRO
1
49k
GitHub's CSS Performance
jonrohan
1032
470k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Code Review Best Practice
trishagee
74
20k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
730
Transcript
What if Shakespeare Wrote ?
ACTION ROUND
None
Adam Cuppy
None
codingzeal.com
None
None
None
None
None
None
github.com/acuppy twitter.com/adamcuppy
amplify greatness
Software Writers - DHH (Creator of Ruby on Rails)
None
“i” before “e” (except after “c”)
Language is powerful
None
Software Writers - DHH (Creator of Ruby on Rails)
None
None
None
None
None
Poet
None
None
(8) 100 thousands!
1,700 New Word Forms
Shakespeare.inspect
Domain-specific Language
DSL?! NOOOO!!!
Domain-specific Language
Expressive Conventions
None
None
* Meaningful * Demonstrative * Suggestive * revealing
None
None
None
None
None
Iambic Pentameter (metered verse)
baBOOM / baBOOM / baBOOM / baBOOM / baBOOM.
When I / do COUNT / the CLOCK / that
TELLS / the TIME
To BE or NOT to BE, THAT is the QUEStion:
class Character < ActiveRecord::Base belongs_to :play has_many :lines end
class Character < ActiveRecord::Base belongs_to :play has_many :lines end Look
Mom, a convention!
app/ assets/ controllers/ helpers/ models/ views/ mailers/ bin/ config/ lib/
assets/ tasks/ ... app specific non-specific
… and another User.where( happiness: 8..10 )
… and another User.create User.create! user.save user.save!
STAND UP
sampson.when(:bite_thumb) do abraham.ask "Do you bite your thumb at us,
sir?" end sampson.bite_thumb # => Abraham asks, “Do you..."
abraham = Abraham.new sampson = Sampson.new abraham.observe sampson sampson.observe abraham
abraham .when(sampson) { bit_thumb? } .then(abraham) { ask "Do you bite your thumb at us, sir?" } sampson.bite_thumb # => Abraham asks, “Do you..."
Harmonious Simplicity
STAND UP
Create Spectacle
“ Often people focus on the machines. They think, "By
doing this, the machine will run more effectively.” But in fact we need to focus on humans, on how humans care about doing programming… We are the masters. They are the slaves.” - Matz (Creator of Ruby)
None
None
github.com/acuppy twitter.com/adamcuppy
None
None