drupal community
DESCRIPTION
Drupal Community. The Architect and the Organism: What Plato & Aristotle have to say about Drupal. Presented by Matt Butcher. About Matt. Web Developer since 1995 Author of seven technical books Actual real-life philosopher. http://technosophos.com Twitter: @technosophos Drupal: mbutcher. - PowerPoint PPT PresentationTRANSCRIPT
Drupal Community
The Architect and the Organism:
What Plato & Aristotle have to say about Drupal
Presented by Matt Butcher
About Matt• Web Developer
since 1995
• Author of seven technical books
• Actual real-life philosopher
http://technosophos.com
Twitter: @technosophos
Drupal: mbutcher
April, 2012
Who was Plato’s Teacher?Question One:
Who was Aristotle’s Mostfamous Student?
Question Two:
“All philosophy is a footnote to Plato.”A. N. Whitehead
So is all of computer science.
Philosoraptor• Quite possibly the
true teacher of Socrates.
• Author of “Tractatus Logico-Raptus”
• Short and pithy questions
• Extinct.
Socrates• 5th Century B.C.E
• Controversial teacher
• “The Socratic Method”
• A character in the dialogs of his most famous student.
• Sentences to death for the “corruption of youth”
• The father of western philosophy
http://commons.wikimedia.org/wiki/File:Anderson,_Domenico_(1854-1938)_-_n._23185_-_Socrate_(Collezione_Farnese)_-_Museo_Nazionale_di_Napoli.jpg
Plato• Student of
Socrates (he was probably in his mid-20’s when Socrates died)
• Like Socrates, an Athenian
• Traveled widely
• Wrote numerous books, mostly in the form of dialogs
http://commons.wikimedia.org/wiki/File:Plato_Silanio_Louvre_Ma3654.jpg
Aristotle• Student of Plato, and
teacher of Alexander the Great
• Instrumental in the development of…
• Philosophy
• Natural sciences
• Literary theory
• Political science
• Biology
http://commons.wikimedia.org/wiki/File:Aristoteles_Louvre.jpg
But what does any of this have to dowith us?
The Most Important Slide
http://en.wikipedia.org/wiki/File:Sanzio_01.jpg
This says it all…
http://commons.wikimedia.org/wiki/File:Sanzio_01_Plato_Aristotle.jpg
Plato
Forms, Perfection, and Reality
Ideal: Having to do primarily with an idea, ora mental object. This does not entail perfection.
So what’s the ideal girlfriend/boyfriend?
The Cave
http://xkcd.com/876/
http://commons.wikimedia.org/wiki/File:Gua_Tempurung.jpg
He returns to the caveto tell his fellow prisoners
what he has seen.
What is the most real?
Being and Becoming
Eidos: The Forms
TheLSDChair
Esinem Design
Intellect & Art
Plato would not have liked the Raphael
Object-Oriented
Plato is an architect.
Aristotle is a biologist.
Aristotle
Metaphysics, Change, & Hylomorphism
Aristotle is all about becomingchangedynamism
Metaphysics: The thing that comesbefore physics.
(Philosophers get paid for sayingstuff like that)
Aristotle in 3 Words
1. Stuff (hyle)2. Potentiality3. Actuality
Impress your friends and loved ones…
Hylomorphism
It means turning stuff into things.I am not kidding, philosophers get PAID for this.
Aristotle’s Famous Model
If Aristotle had written code…
Functional vs. ImperativeFunctional
• Focus on BECOMING
• What transformation is occurring?
• Functions are first class
• Dynamicity of runtime
• Process
Imperative (OO or Procedural)• Focus on BEING
• What is the current state?
• Objects (structs, etc.) are first class
• Encapsulation
• Structures
Functional Programming
Pay attention to the process of running the code, what it is becoming,
not what’s its state is.
Aristotle would worry about placing so muchemphasis on data structures, objects, classes, and state.
Focus on the movement – they physis
And Drupal?
Drupal is lost in the middle(like medieval philosophy)
Drupal was Aristotelian1. Stuff: simple types2. Potentiality: hooks
3. Actuality: runtime hook invocation
But it was never really functional
But it might just be the mostAristotelian system ever made
Toss this little phrase out at dinner…
Drupal isn’t a CMS.It’s a hylomorphic engine!
You can singlehandedly settle the CMS/Frameworkdebate and sound suave while doing so.
Plato hates this
He thinks hylomorphism is dumb
And scary
It’s unpredictable. It needs structure.
Plato wants you to rewrite Drupal…Using classes and objects.
WWPD?ClassesStatic wrappers
State, state, state!
Design patterns
Persistence layers
Plato would rebuild Drupalin Symfony
Quo Vadis?
That’s Latin for “Oh crap, what are we gonna do now?”
Medieval LessonThou canst not haveth
Thy cake, and partaketh of it too.
More specifically, Aristotle and Plato arefundamentally different.
Complexity is the arch-nemesisof software.
Ockham's RazorLogical Positivism
The Categorical Imperative
Taxonomy
Model & Simulation TheoryPhysical reductionism
ALL OF PHILOSPHY
Complexity
• Ambiguity: Which tools?• Anti-reductionist: Cannot simplify withoutloss
• Cognitive limitations: Ideal reason is the greatest philosophical myth
The moral of the story is…
We must pick one.
What did you think?Locate this session on theDrupalCon Denver website
http://denver2012.drupal.org/program
Click the “Take the Survey” link.
Thank You!