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
8.3k
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
10
6.4k
(Software) Development with Agility
kakutani
4
900
KeebKaigi Strikes!!!q
kakutani
0
620
Ruby30周年イベント オープニング / Ruby30th Opening
kakutani
3
1.6k
Above All, Make It Fun! #fjordbootcamp / make it fun
kakutani
8
1.2k
Agile Manifesto Decade Resurrections
kakutani
4
3.5k
『達人プログラマー 第2版』/ Pragmatic Programmer 2nd Ed.
kakutani
7
9.3k
『ユニコーン企業のひみつ』とスケーリングの考えかた / #AgileLounge 20220204
kakutani
5
5.5k
(You) Name It!
kakutani
6
2k
Other Decks in Technology
See All in Technology
Behind Postgres 18: The People, the Code, & the Invisible Work | Claire Giordano | PGConfEU 2025
clairegiordano
0
140
QA業務を変える(!?)AIを併用した不具合分析の実践
ma2ri
0
150
頭部ふわふわ浄酔器
uyupun
0
110
[読書]AWSゲームブック〜GuardDuty魔神とインシデント対応の旅〜DevIO2025
cmusudakeisuke
0
200
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
140
ラスベガスの歩き方 2025年版(re:Invent 事前勉強会)
junjikoide
0
310
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
190
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.8k
AI時代、“平均値”ではいられない
uhyo
8
2.6k
知覚とデザイン
rinchoku
1
600
OCIjp_Oracle AI World_Recap
shinpy
1
180
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
150
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Statistics for Hackers
jakevdp
799
220k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Context Engineering - Making Every Token Count
addyosmani
8
300
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
GitHub's CSS Performance
jonrohan
1032
470k
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!)
ΤϯυϢʔβʔͷ ϝϯλϧϞσϧΛ ιʔείʔυͱͯ͠ දݱ͢Δ
ιϑτΣΞ಄ͷͳ͔ʹ͋Δ