SlideShare ist ein Scribd-Unternehmen logo
1 von 104
Downloaden Sie, um offline zu lesen
— You must unlearn what you have learned.




       koji.shimada@enishi-tech.com

2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Photo by tmaeda
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
from Sapporo,
                with Love for Ruby



                               Photo by darashi
2010   12   5
2010   12   5
— You must unlearn what you have learned.




       koji.shimada@enishi-tech.com

2010   12   5
2010   12   5
2010   12   5
R u by




2010   12   5
2010   12   5
-   RubyKaigi2008


2010   12   5
QWAN on Ruby


2010   12   5
http://www.flickr.com/photos/33224129@N00/3301269103/
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
•
                •
                •


2010   12   5
2010   12   5
No




2010   12   5
2010   12   5
2010   12   5
Strategy




2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Andrew Hunt and Dave omas
                      e Pragmatic Programmer




2010   12   5
YAGNI

            You Ain’t Gonna Need It



2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Single Responsibility
                 Open-Closed
                Liscov Substitution
                Interface Segregation
                Dependency Inversion
2010   12   5
http://www.objectclub.jp/community/memorial/
                homepage3.nifty.com/masarl/article/dp-ocp-2.html
2010   12   5
2010   12   5
Expect Unexpected Change




2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Growing
  Object-Oriented
  Software,
  Guided by Tests
  Steve Freeman
  Nat Pryce

2010   12   5
2010   12   5
2010   12   5
2010   12   5
Growing
  Object-Oriented
  Software,
  Guided by Tests
  Steve Freeman
  Nat Pryce

2010   12   5
http://www.flickr.com/photos/barnaby_s/2332109365/
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Push Your Self to Learn



2010   12   5
To do good work
                     your tools




2010   12   5
2010   12   5
2010   12   5
http://www.flickr.com/photos/aslakr/14507479/
2010   12   5
ActiveRecord




2010   12   5
2010   12   5
or



2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
2010   12   5
(How)



2010   12   5
(Why)



2010   12   5
2010   12   5
2010   12   5
2010   12   5
http://www.flickr.com/photos/aslakr/14507479/
2010   12   5
2010   12   5
2010   12   5
2010   12   5
Ruby
                 X



2010   12   5
-   RubyKaigi2008


2010   12   5
2010   12   5
I LOVE RUBY




                              24
2010   12   5
2010   12   5
2010   12   5
2010   12   5
— You must unlearn what you have learned.




       koji.shimada@enishi-tech.com

2010   12   5
2010   12   5
2010   12   5

Weitere ähnliche Inhalte

Ähnlich wie 20101204 you-must-unlearn-what-you-have-learned

Augmented Reality SPRING 2010
Augmented Reality SPRING 2010Augmented Reality SPRING 2010
Augmented Reality SPRING 2010Etsuji Kameyama
 
英語の技術文書を読む会のこと
英語の技術文書を読む会のこと英語の技術文書を読む会のこと
英語の技術文書を読む会のことNaoko Yamazaki
 
How to easily start Agile Development
How to easily start Agile DevelopmentHow to easily start Agile Development
How to easily start Agile DevelopmentNaoto Nishimura
 
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your SystemKoji SHIMADA
 
Engagement + Promotion
Engagement + PromotionEngagement + Promotion
Engagement + Promotionsuwaws
 

Ähnlich wie 20101204 you-must-unlearn-what-you-have-learned (6)

Augmented Reality SPRING 2010
Augmented Reality SPRING 2010Augmented Reality SPRING 2010
Augmented Reality SPRING 2010
 
英語の技術文書を読む会のこと
英語の技術文書を読む会のこと英語の技術文書を読む会のこと
英語の技術文書を読む会のこと
 
How to easily start Agile Development
How to easily start Agile DevelopmentHow to easily start Agile Development
How to easily start Agile Development
 
1204 fitc2010
1204 fitc2010 1204 fitc2010
1204 fitc2010
 
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System
20100226 Jim Coplien Said You Should Foster Generative Scheme In Your System
 
Engagement + Promotion
Engagement + PromotionEngagement + Promotion
Engagement + Promotion
 

Mehr von Koji SHIMADA

20110614 hmcc-enishitech
20110614 hmcc-enishitech20110614 hmcc-enishitech
20110614 hmcc-enishitechKoji SHIMADA
 
20101001-Introduction-to-Developer-Testing-With-Ruby
20101001-Introduction-to-Developer-Testing-With-Ruby20101001-Introduction-to-Developer-Testing-With-Ruby
20101001-Introduction-to-Developer-Testing-With-RubyKoji SHIMADA
 
20100626-We-Think-We-Act
20100626-We-Think-We-Act20100626-We-Think-We-Act
20100626-We-Think-We-ActKoji SHIMADA
 
20100526 The Productive Programmer
20100526 The Productive Programmer20100526 The Productive Programmer
20100526 The Productive ProgrammerKoji SHIMADA
 
20100213 Where The Street Has No Name
20100213 Where The Street Has No Name20100213 Where The Street Has No Name
20100213 Where The Street Has No NameKoji SHIMADA
 
20091030 Uncle Bob Said You Should Be A Professional With Clean Code
20091030 Uncle Bob Said You Should Be A Professional With Clean Code20091030 Uncle Bob Said You Should Be A Professional With Clean Code
20091030 Uncle Bob Said You Should Be A Professional With Clean CodeKoji SHIMADA
 
Our Strategy To Survive In This Hard World(tochigirubykaigi02)
Our Strategy To Survive In This Hard World(tochigirubykaigi02)Our Strategy To Survive In This Hard World(tochigirubykaigi02)
Our Strategy To Survive In This Hard World(tochigirubykaigi02)Koji SHIMADA
 
RubySapporoDigestAndMore-osc2009do
RubySapporoDigestAndMore-osc2009doRubySapporoDigestAndMore-osc2009do
RubySapporoDigestAndMore-osc2009doKoji SHIMADA
 
20090124 Pleasantly Programming with Ruby
20090124 Pleasantly Programming with Ruby20090124 Pleasantly Programming with Ruby
20090124 Pleasantly Programming with RubyKoji SHIMADA
 
20081220 Rubybonenkai2008 Sapporo
20081220 Rubybonenkai2008 Sapporo20081220 Rubybonenkai2008 Sapporo
20081220 Rubybonenkai2008 SapporoKoji SHIMADA
 
20081205 Object Club Reject Talks2008
20081205 Object Club Reject Talks200820081205 Object Club Reject Talks2008
20081205 Object Club Reject Talks2008Koji SHIMADA
 
Talking About Fluent Interface
Talking About Fluent InterfaceTalking About Fluent Interface
Talking About Fluent InterfaceKoji SHIMADA
 
20081004-OSC2008Tokyo/Fall-MetaCon
20081004-OSC2008Tokyo/Fall-MetaCon20081004-OSC2008Tokyo/Fall-MetaCon
20081004-OSC2008Tokyo/Fall-MetaConKoji SHIMADA
 
20080823-TransformingPlainTextToHtml
20080823-TransformingPlainTextToHtml20080823-TransformingPlainTextToHtml
20080823-TransformingPlainTextToHtmlKoji SHIMADA
 
20080730-WelcomeToLifeWithRuby
20080730-WelcomeToLifeWithRuby20080730-WelcomeToLifeWithRuby
20080730-WelcomeToLifeWithRubyKoji SHIMADA
 
20080622 Reject Kaigi2008 Kaigi Freaks
20080622 Reject Kaigi2008 Kaigi Freaks20080622 Reject Kaigi2008 Kaigi Freaks
20080622 Reject Kaigi2008 Kaigi FreaksKoji SHIMADA
 
20080521-Ruby-on-Rails-Security
20080521-Ruby-on-Rails-Security20080521-Ruby-on-Rails-Security
20080521-Ruby-on-Rails-SecurityKoji SHIMADA
 
The Hitchhiker’s Guide To Dsl
The Hitchhiker’s Guide To DslThe Hitchhiker’s Guide To Dsl
The Hitchhiker’s Guide To DslKoji SHIMADA
 
Why-is-ImplementationPattterns-important-so-much
Why-is-ImplementationPattterns-important-so-muchWhy-is-ImplementationPattterns-important-so-much
Why-is-ImplementationPattterns-important-so-muchKoji SHIMADA
 
Ruby札幌2008年の活動に向けて
Ruby札幌2008年の活動に向けてRuby札幌2008年の活動に向けて
Ruby札幌2008年の活動に向けてKoji SHIMADA
 

Mehr von Koji SHIMADA (20)

20110614 hmcc-enishitech
20110614 hmcc-enishitech20110614 hmcc-enishitech
20110614 hmcc-enishitech
 
20101001-Introduction-to-Developer-Testing-With-Ruby
20101001-Introduction-to-Developer-Testing-With-Ruby20101001-Introduction-to-Developer-Testing-With-Ruby
20101001-Introduction-to-Developer-Testing-With-Ruby
 
20100626-We-Think-We-Act
20100626-We-Think-We-Act20100626-We-Think-We-Act
20100626-We-Think-We-Act
 
20100526 The Productive Programmer
20100526 The Productive Programmer20100526 The Productive Programmer
20100526 The Productive Programmer
 
20100213 Where The Street Has No Name
20100213 Where The Street Has No Name20100213 Where The Street Has No Name
20100213 Where The Street Has No Name
 
20091030 Uncle Bob Said You Should Be A Professional With Clean Code
20091030 Uncle Bob Said You Should Be A Professional With Clean Code20091030 Uncle Bob Said You Should Be A Professional With Clean Code
20091030 Uncle Bob Said You Should Be A Professional With Clean Code
 
Our Strategy To Survive In This Hard World(tochigirubykaigi02)
Our Strategy To Survive In This Hard World(tochigirubykaigi02)Our Strategy To Survive In This Hard World(tochigirubykaigi02)
Our Strategy To Survive In This Hard World(tochigirubykaigi02)
 
RubySapporoDigestAndMore-osc2009do
RubySapporoDigestAndMore-osc2009doRubySapporoDigestAndMore-osc2009do
RubySapporoDigestAndMore-osc2009do
 
20090124 Pleasantly Programming with Ruby
20090124 Pleasantly Programming with Ruby20090124 Pleasantly Programming with Ruby
20090124 Pleasantly Programming with Ruby
 
20081220 Rubybonenkai2008 Sapporo
20081220 Rubybonenkai2008 Sapporo20081220 Rubybonenkai2008 Sapporo
20081220 Rubybonenkai2008 Sapporo
 
20081205 Object Club Reject Talks2008
20081205 Object Club Reject Talks200820081205 Object Club Reject Talks2008
20081205 Object Club Reject Talks2008
 
Talking About Fluent Interface
Talking About Fluent InterfaceTalking About Fluent Interface
Talking About Fluent Interface
 
20081004-OSC2008Tokyo/Fall-MetaCon
20081004-OSC2008Tokyo/Fall-MetaCon20081004-OSC2008Tokyo/Fall-MetaCon
20081004-OSC2008Tokyo/Fall-MetaCon
 
20080823-TransformingPlainTextToHtml
20080823-TransformingPlainTextToHtml20080823-TransformingPlainTextToHtml
20080823-TransformingPlainTextToHtml
 
20080730-WelcomeToLifeWithRuby
20080730-WelcomeToLifeWithRuby20080730-WelcomeToLifeWithRuby
20080730-WelcomeToLifeWithRuby
 
20080622 Reject Kaigi2008 Kaigi Freaks
20080622 Reject Kaigi2008 Kaigi Freaks20080622 Reject Kaigi2008 Kaigi Freaks
20080622 Reject Kaigi2008 Kaigi Freaks
 
20080521-Ruby-on-Rails-Security
20080521-Ruby-on-Rails-Security20080521-Ruby-on-Rails-Security
20080521-Ruby-on-Rails-Security
 
The Hitchhiker’s Guide To Dsl
The Hitchhiker’s Guide To DslThe Hitchhiker’s Guide To Dsl
The Hitchhiker’s Guide To Dsl
 
Why-is-ImplementationPattterns-important-so-much
Why-is-ImplementationPattterns-important-so-muchWhy-is-ImplementationPattterns-important-so-much
Why-is-ImplementationPattterns-important-so-much
 
Ruby札幌2008年の活動に向けて
Ruby札幌2008年の活動に向けてRuby札幌2008年の活動に向けて
Ruby札幌2008年の活動に向けて
 

Kürzlich hochgeladen

OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 

Kürzlich hochgeladen (20)

20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 

20101204 you-must-unlearn-what-you-have-learned