Applying Philosophy to
Engineering
Topher Bullock
@topherbullock
topher.bullock@xtremelabs.com
( how two seemingly different things you love
might complement each other in interesting and
useful ways )
Slavoj Zizek
"First As Tragedy, Then As Farce" (2009).
" When we are dealing with a truly
great philosopher the real question to
be raised concerns not what this
philosopher may still tell us, what he
may still mean to us, but rather the
opposite, namely, what we are, what
our contemporary situation might be, in
his eyes, how our epoch would appear
to his thought. "
" The Dialectic of the new and the old. "
" Analyze today through the
lenses of the past."
About
- Agile Engineer @ Xtreme Labs
- Work on Mobile Web / Hybrid products
- UWO/Fanshawe Media Theory & Production grad.
To become the leading provider of mobile
solutions to the world's most important
companies as we help drive a revolution in
computing.
Xtreme Labs : Mission
Pair Programming
``
``Logic : William of Occam
¬( Q AND P ) ⇔ ( ¬Q OR ¬P )
De Morgan's laws
!( Q && P ) ⇔ ( !Q || !P)
If ConditionQ and ConditonP are not
simultaneously true.
It can be inferred that:
Either ConditionQ is not true or
ConditionP is not true.
If the blog post is not both saved and
valid.
It can be inferred that:
Either the post is invalid or it hasn't
been saved.
Occams Razor
" entities must not be multiplied beyond
necessity "
- Synthesis of Occam's insights on Logic
- Often (intentionally) over-simplified
" A difficult-to-believe, but optimized internal
dispatch function for triggering events. Tries
to keep the usual cases speedy (most internal
Backbone events have 3 arguments). "
DONE!
Code Epistemology : Plato
' grok '
( pron :: /ɡrɒk/ )
" to understand profoundly and
intuitively "
" to intimately and completely share
the same reality or line of thinking
with another physical or conceptual
entity"
Design Patterns
Creational
Structural
Behavioral
" a general reusable solution to a
commonly occurring problem
within a given context "
Mediator Pattern
" encapsulates how a set of objects
interact. promotes loose coupling by
keeping objects from referring to each
other explicitly "
World of Forms
V8 : Hidden Classes
V8 : Hidden Classes
Observability
" Creators need to be able to see
what they're doing "
Bret Victor - Inventing on Principle
Debugging Ontology : Hume & Kant
David Hume
When events of one kind are immediately
followed by events of another kind.
Where, if there had been no object of the first
kind, we would never have seen an object of
the second kind.
Accounting for Causation
When an event or output is dependant on the
sequence or timing of other uncontrollable
events.
Race Conditions
Immanuel Kant
proposition whose justification does not rely
upon experience; can be validated by
experience, but is not grounded in it.
proposition whose justification relies on
experience; validated by, and grounded in,
experience.
a priori
a posteriori
" All bachelors are unmarried "
" 7 + 5 = 12"
a priori
" All bachelors are unhappy."
" Cats exist."
a posteriori
" Adding arrays gives you a string"
" Feature X doesn't work on iPad but works
in IE8"
" Being wrong doesn't feel like anything. "
Confirmation Bias
a tendency of people to favor
information that confirms their
beliefs or hypotheses
Agile Engineers as Authors
" Once the Author is gone, the claim to
' decipher ' a text becomes quite
useless. "
" To give an Author to a text is to
impose upon that text a stop clause, to
furnish it with a final signification "
Roland Barthes
"The Death of The Author" (1967).

Philosophical Solutions to Agile Engineering with Topher Bullock

  • 1.
    Applying Philosophy to Engineering TopherBullock @topherbullock topher.bullock@xtremelabs.com ( how two seemingly different things you love might complement each other in interesting and useful ways )
  • 2.
    Slavoj Zizek "First AsTragedy, Then As Farce" (2009). " When we are dealing with a truly great philosopher the real question to be raised concerns not what this philosopher may still tell us, what he may still mean to us, but rather the opposite, namely, what we are, what our contemporary situation might be, in his eyes, how our epoch would appear to his thought. "
  • 3.
    " The Dialecticof the new and the old. " " Analyze today through the lenses of the past."
  • 4.
    About - Agile Engineer@ Xtreme Labs - Work on Mobile Web / Hybrid products - UWO/Fanshawe Media Theory & Production grad.
  • 5.
    To become theleading provider of mobile solutions to the world's most important companies as we help drive a revolution in computing. Xtreme Labs : Mission
  • 6.
  • 7.
  • 8.
  • 9.
    ¬( Q ANDP ) ⇔ ( ¬Q OR ¬P ) De Morgan's laws !( Q && P ) ⇔ ( !Q || !P) If ConditionQ and ConditonP are not simultaneously true. It can be inferred that: Either ConditionQ is not true or ConditionP is not true.
  • 10.
    If the blogpost is not both saved and valid. It can be inferred that: Either the post is invalid or it hasn't been saved.
  • 11.
    Occams Razor " entitiesmust not be multiplied beyond necessity " - Synthesis of Occam's insights on Logic - Often (intentionally) over-simplified
  • 12.
    " A difficult-to-believe,but optimized internal dispatch function for triggering events. Tries to keep the usual cases speedy (most internal Backbone events have 3 arguments). "
  • 13.
  • 14.
  • 15.
    ' grok ' (pron :: /ɡrɒk/ ) " to understand profoundly and intuitively " " to intimately and completely share the same reality or line of thinking with another physical or conceptual entity"
  • 17.
    Design Patterns Creational Structural Behavioral " ageneral reusable solution to a commonly occurring problem within a given context "
  • 18.
    Mediator Pattern " encapsulateshow a set of objects interact. promotes loose coupling by keeping objects from referring to each other explicitly "
  • 19.
  • 20.
    V8 : HiddenClasses
  • 21.
    V8 : HiddenClasses
  • 23.
    Observability " Creators needto be able to see what they're doing " Bret Victor - Inventing on Principle
  • 24.
  • 25.
  • 26.
    When events ofone kind are immediately followed by events of another kind. Where, if there had been no object of the first kind, we would never have seen an object of the second kind. Accounting for Causation
  • 27.
    When an eventor output is dependant on the sequence or timing of other uncontrollable events. Race Conditions
  • 28.
  • 29.
    proposition whose justificationdoes not rely upon experience; can be validated by experience, but is not grounded in it. proposition whose justification relies on experience; validated by, and grounded in, experience. a priori a posteriori
  • 30.
    " All bachelorsare unmarried " " 7 + 5 = 12" a priori
  • 31.
    " All bachelorsare unhappy." " Cats exist." a posteriori " Adding arrays gives you a string" " Feature X doesn't work on iPad but works in IE8"
  • 32.
    " Being wrongdoesn't feel like anything. "
  • 33.
    Confirmation Bias a tendencyof people to favor information that confirms their beliefs or hypotheses
  • 38.
  • 39.
    " Once theAuthor is gone, the claim to ' decipher ' a text becomes quite useless. " " To give an Author to a text is to impose upon that text a stop clause, to furnish it with a final signification " Roland Barthes "The Death of The Author" (1967).