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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Adam Cuppy (he/him)
April 22, 2015
Programming
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
150
Mechanically Confident
acuppy
1
170
Pluck It - Southeast Ruby 2017
acuppy
1
150
Trust Me - Rocky Mountain Ruby 2017
acuppy
0
110
Brighton Ruby 2017 - Difficult Conversations
acuppy
1
100
GoRuCo 2017 - Difficult Conversations
acuppy
0
140
GORUCO - Cult(ure)
acuppy
0
110
#RailsPacific - Taming Chaotic Specs - RSpec Design Patterns
acuppy
5
1.1k
#RailsPacific - [NOTES] Taming Chaotic Specs - RSpec Design Patterns
acuppy
1
240
Other Decks in Programming
See All in Programming
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
500
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
140
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.4k
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
860
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
510
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
550
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
360
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
480
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
170
Featured
See All Featured
Everyday Curiosity
cassininazir
0
280
Designing Experiences People Love
moore
143
24k
Marketing to machines
jonoalderson
1
5.7k
Navigating Weather and Climate Data
rabernat
0
470
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
230
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Building an army of robots
kneath
306
46k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Embracing the Ebb and Flow
colly
88
5.1k
Being A Developer After 40
akosma
91
590k
ラッコキーワード サービス紹介資料
rakko
1
4.3M
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
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