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
DCI and the application builds our mental models
Search
Shintaro Kakutani
September 16, 2012
Technology
15
8k
DCI and the application builds our mental models
Sapporo RubyKaigi 2012 #sprk2012
Shintaro Kakutani
September 16, 2012
Tweet
Share
More Decks by Shintaro Kakutani
See All by Shintaro Kakutani
えにしテック、あるいは人間関係のエクササイズ / #enishitech-15th-anniv
kakutani
9
5.1k
(Software) Development with Agility
kakutani
4
740
KeebKaigi Strikes!!!q
kakutani
0
540
Ruby30周年イベント オープニング / Ruby30th Opening
kakutani
3
1.4k
Above All, Make It Fun! #fjordbootcamp / make it fun
kakutani
8
1.1k
Agile Manifesto Decade Resurrections
kakutani
4
3.2k
『達人プログラマー 第2版』/ Pragmatic Programmer 2nd Ed.
kakutani
7
8.9k
『ユニコーン企業のひみつ』とスケーリングの考えかた / #AgileLounge 20220204
kakutani
5
5.3k
(You) Name It!
kakutani
5
1.9k
Other Decks in Technology
See All in Technology
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
140
タイミーのデータ活用を支えるdbt Cloud導入とこれから
ttccddtoki
1
260
Alignment and Autonomy in Cybozu - 300人の開発組織でアラインメントと自律性を両立させるアジャイルな組織運営 / RSGT2025
ama_ch
1
2.4k
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
180
あなたの人生も変わるかも?AWS認定2つで始まったウソみたいな話
iwamot
3
860
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
250
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
メールヘッダーを見てみよう
hinono
0
110
ABWGのRe:Cap!
hm5ug
1
120
コロプラのオンボーディングを採用から語りたい
colopl
5
1.3k
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
6
1.5k
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
Featured
See All Featured
Code Review Best Practice
trishagee
65
17k
Bash Introduction
62gerente
610
210k
Why Our Code Smells
bkeepers
PRO
335
57k
RailsConf 2023
tenderlove
29
970
Six Lessons from altMBA
skipperchong
27
3.6k
Side Projects
sachag
452
42k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
192
16k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
The Cult of Friendly URLs
andyhume
78
6.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Visualization
eitanlees
146
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Transcript
֯୩৴ଠ KAKUTANI Shintaro; Ruby-no-kai,Eiwa System Management,Inc. Ұൠࣾஂ๏ਓຊ3VCZͷձ ג ӬγεςϜϚωδϝϯτ TIJOUBSP!LBLVUBOJDPN
ࡳຈ3VCZձٞ 4VO %$* BOEUIFBQQMJDBUJPOCVJMET PVSNFOUBMNPEFMT
http://gihyo.jp/news/report/01/sapporo-rubykaigi2012/00b4
None
taken from igaiga’s flickr @kakutani
Ruby Evangelist
http://www.pragprog.com/titles/jtrap/the-agile-samurai
http://www.amazon.co.jp/o/ASIN/4274068560/kakutani-22
None
He is the Agile Samurai, so I’m a...
None
http://www.deos.co.jp/hojokoza
http://www.deos.co.jp/hojokoza
http://www.slideshare.net/snoozer05/20101204-youmustunlearnwhatyouhavelearned/61
http://www.amazon.co.jp/o/ASIN/4798124583/kakutani-22/ref=nosim/
None
None
None
ఏɹڙ ͓͔͛͞·Ͱ̏̌प ใԽٕज़Λ௨ͯࣾ͡ձͱڞੜ͢Δ
http://estore.ohmsha.co.jp/
None
None
W E A R E H I R I N
G : R u b y i s t A N D Agile Designer https://github.com/esminc/jobs ( W A N N A B I E S ) ( W A N N A B I E S )
Asakusa.rb http://www.flickr.com/photos/takkanm/3978417669
݄࣌ ॴਂߐށࢿྉؗখܶ Ӧେߐށઢਗ਼നՏӺెา ࢀՃඅ༻༗ྉ ఆһd໊ جௐߨԋ!BNBUTVEB !@LP
ر ӡӦ"TBLVTBSC ࣮ߦҕһ!LBLVUBOJ IUUQSFHJPOBMSVCZLBJHJPSHPFEP ͜Ε"TBLVTBSCͷ ճͷNFFUVQͳΜͩΑ
None
None
https://twitter.com/kakutani/status/209815868325117952
Thanks to everyone who retweeted my tweet <3
5IF3VCZ,BJHJ3JTFT ֯୩৴ଠ KAKUTANI Shintaro; Ruby-no-kai,Eiwa System Management,Inc. Ұൠࣾஂ๏ਓຊ3VCZͷձcc ג ӬγεςϜϚωδϝϯτ
!LBLVUBOJ LBLVUBOJ!SVCZLBJHJPSH TokyuRubyKaigi05, 2012-07-29(Sun)
K A I G I
THE RUBYKAIGI 2013 May 30 (Thu) - June 1 (Sat)
Tokyo, Japan
[email protected]
http://rubykaigi.org
֯୩৴ଠ KAKUTANI Shintaro; Ruby-no-kai,Eiwa System Management,Inc. Ұൠࣾஂ๏ਓຊ3VCZͷձ ג ӬγεςϜϚωδϝϯτ TIJOUBSP!LBLVUBOJDPN
ࡳຈ3VCZձٞ 4VO %$* BOEUIFBQQMJDBUJPOCVJMET PVSNFOUBMNPEFMT
James O.Coplien
We’ve already had nice resources on the net...
http://www.amazon.co.jp/o/ASIN/0470684208/kakutani-22/ref=nosim/
http://objectsonrails.com/
http://clean-ruby.com/
http://rubysource.com/dci-the-evolution-of-the-object-oriented-paradigm/
http://dci-in-ruby.info/resources.html
http://mikepackdev.com/blog_posts/24-the-right-way-to-code-dci-in-ruby
...and @apotonick!!!11
ιϑτΣΞ Ͳ͜ʹ͋Δͷ͔
ιϑτΣΞ಄ͷͳ͔ʹ͋Δ
ΤϯυϢʔβʔͷ ϝϯλϧϞσϧΛ ιʔείʔυͱͯ͠ දݱ͢Δ
গͣͭ͠ɺ ܁Γฦ͠ͳ͕Β ҭ͍ͯͯ͘
Software Development as Learning Process
“Agile”
ςετۦಈ։ൃ
ΦϒδΣΫτࢦઃܭ
దͳ໊લͷ͍ͭͨ ίʔυΛదͳॴʹ ஔ͘͜ͱ
Ruby
✓ Agile Style Workflow ✓ Test Driven Development ✓ Object-Oriented
Design ✓ Ruby
ιϑτΣΞ಄ͷͳ͔ʹ͋Δ
http://www.amazon.co.jp/o/ASIN/4798124583/kakutani-22/ref=nosim/
None
We’re on the same rails http://pixdaus.com/single.php?id=104150
http://guides.rubyonrails.org/getting_started.html
http://guides.rubyonrails.org/getting_started.html#the-mvc-architecture
HTTP: Hyper TEXT Transfer Protocol
http://martinfowler.com/eaaCatalog/activeRecord.html
Active Record is a pattern for persistence
Rails doesn’t save YOUR Applications! (it’s an awesome FRAMEWORK!)
http://www.flickr.com/photos/essgee/2477102230/ Recap ‘Common Pitfalls’ @ursm mentioned yesterday
✓ Helpers don’t help up ✓ Partials are just partial,
Not parts ✓ Too Fat to be a model
✓ Helpers don’t help up ✓ Partials are just partial,
Not parts ✓ Too Fat to be a model
Too Fat to be a model
None
DCI Data-Context-Interaction
✓ Data: AR ✓ Context: (Ba) Playing field for “objects”
✓ Interaction: Role Object#extend / refinements?
http://mikepackdev.com/blog_posts/24-the-right-way-to-code-dci-in-ruby
✓ Data: AR ✓ Context: “Activities” ✓ Interaction: Modules Poor
man’s DCI: you should check the talk given by @ursm yesterday, thanks!
None
http://qa.atmarkit.co.jp/
✓ Agile Style Workflow ✓ Test Driven Development ✓ Object-Oriented
Design ✓ Ruby
Rails doesn’t save YOUR Applications! (it’s an awesome FRAMEWORK!)
ΤϯυϢʔβʔͷ ϝϯλϧϞσϧΛ ιʔείʔυͱͯ͠ දݱ͢Δ
ιϑτΣΞ಄ͷͳ͔ʹ͋Δ