SlideShare a Scribd company logo
Thinking, Fast and Slow…
With Software Development
Daniel Bryant
Principal Consultant, OpenCredo
daniel.bryant@opencredo.com
@danielbryantuk
Think More Deliberately
• Our decision making can be flawed…
• Apply process and models (as appropriate)
• Collaborate more (and better)
• Plan, do, check, act…
16/10/2015 @danielbryantuk
Who Am I?
• London Java Community Associate
• muservicesweekly.com
• InfoQ Editor, DZone MVB, Voxxed
16/10/2015 @danielbryantuk
• Principal Consultant at OpenCredo
 Technical/digital transformation
 CI/CD, DevOps
 Microservices, cloud and containers
 {{ insert latest buzzword }}
Pointy-Haired Decision Making…
16/10/2015 @danielbryantuk
dilbert.com/strip/2010-08-24
Our Thinking: A Tale of Two Systems…
System 1:
fast, instinctive, emotional, subconscious
System 2:
slower, deliberate, reasoning, conscious
16/10/2015 @danielbryantuk
2 + 2 = ?
16/10/2015 @danielbryantuk
(24 / 2) * (1 / 3) = ?
16/10/2015 @danielbryantuk
2 + 2 = 4
(24 / 2) * (1 / 3) = 4
16/10/2015 @danielbryantuk
16/10/2015 @danielbryantuk
16/10/2015 @danielbryantuk
16/10/2015 @danielbryantuk
Bob is a single male in his 20’s who is bright,
quiet, likes science fiction and fantasy, and
avoids interacting with people in the real world
Which is more probable?
• Bob is a programmer
• Bob is a programmer and plays MMORPG?
16/10/2015 @danielbryantuk
Conjunction Fallacy
16/10/2015 @danielbryantuk
Our Thinking: A Tale of Two Systems…
System 1:
fast, instinctive, emotional, subconscious
Rapid, associative, and has systemic errors
System 2:
slower, deliberate, reasoning, conscious
Lazy, and causal (not statistical)
16/10/2015 @danielbryantuk
Heuristics / biases affecting software delivery
16/10/2015 @danielbryantuk
Availability Heuristic
“If something can be recalled,
it must be important”
‘Hipster-itis’
e.g. the ‘best’ architectural style
16/10/2015 @danielbryantuk
Microservices
• The current flavour of the month!
– Great ideas, but dangerously over-hyped
• Frameworks and products emerging
– Virtuous (vicious?) circle
– “The bandwagon effect”
– Have we found the silver bullet?…
16/10/2015 @danielbryantuk
Whatever is Available
When all you have is a hammer…
…everything looks like a nail
16/10/2015 @danielbryantuk
When all you have is a SOA…
…everything looks like a service
(please avoid creating the toString() service)
16/10/2015 @danielbryantuk
When all you have is a Jenkins…
…everything looks like a Jenkins Job
16/10/2015 @danielbryantuk
When all you have is a Spring Framework…
…everything looks like an AbstractSingletonProxyFactoryBean
16/10/2015 @danielbryantuk
Availability: Think Professionally
• Stop… engage system 2
• Spike/prototype, experiment, evaluate…
• Constant learning
– Find trusted mentors
– Cultivate blogs
– Read the classics
16/10/2015 @danielbryantuk
Fundamentals
16/10/2015 @danielbryantuk
Evaluation
“I will postpone using this shiny new framework
until my peers have validated the proposed
benefits with rigorous scientific experiments”
- Said by no programmer
…ever
16/10/2015 @danielbryantuk
Raible’s Comparison Matrix
16/10/2015 @danielbryantuk
Matt Raible comparison matrix (bit.ly/OxUzad)
Optimistic Bias
“People tend to be overconfident,
believing that they have substantial
control in their lives”
I know what our customers want…
…how could I possibly be wrong?
16/10/2015 @danielbryantuk
Four Factors of Optimistic Bias
• Desired end state
– Self-enhancement, perceived control
• Cognitive mechanisms
– Representativeness heuristic, singular target focus
• Information about self vs target
• Overall mood
16/10/2015 @danielbryantuk
Optimism: Think Professionally
• Define (and share) clear goals
• Build, measure, learn…
• Remove uncertainty early (bit.ly/1mAb6o4)
– “Patterns of Effective Delivery” by Dan North
• Software is inherently collaborative…
16/10/2015 @danielbryantuk
The Three Amigos
16/10/2015 @danielbryantuk
Pair Mob Programming
16/10/2015 @danielbryantuk
benjiweber.co.uk/blog/2014/11/30/the-unruly-mob/
probablyfine.co.uk/papers/mob-programming.pdf
www.infoq.com/interviews/zuill-mob-programming
DevOps: Share the Pain...
16/10/2015 @danielbryantuk
“Dev-on-call”
An occasional spike to the head
is a good thing...
...metaphorically speaking
• You build it, you run it
– Shared responsibility
– Communication
16/10/2015 @danielbryantuk
Remove (or Limit) Uncertainty
16/10/2015 @danielbryantuk
Check the HiPPO
16/10/2015 @danielbryantuk
bit.ly/1xseeXM
Planning Fallacy
“A phenomenon in which predictions about
how much time will be needed to complete a
future task display an optimistic bias. ”
Was your last project completed on time?
…and on budget?
16/10/2015 @danielbryantuk
IT Track Record…
• Sainsbury’s Supply Chain Management System
– $526m bit.ly/160SnAj
• NHS patient record system
– £10bn bit.ly/XBzFuV
• HealthCare.gov
– onforb.es/1k7egyb
16/10/2015 @danielbryantuk
Most Common Factors for Failure
• Unrealistic or unarticulated project goals
• Inaccurate estimates of needed resources
• Badly defined system requirements
• Poor reporting of the project's status
• Unmanaged risks
• Poor communication among customers, developers, and users
• Use of immature technology
• Inability to handle the project's complexity
• Sloppy development practices
• Poor project management
• Stakeholder politics
• Commercial pressures
Source spectrum.ieee.org/computing/software/why-software-fails
16/10/2015 @danielbryantuk
Most Common Factors for Failure
• Unrealistic or unarticulated project goals
• Inaccurate estimates of needed resources
• Badly defined system requirements
• Poor reporting of the project's status
• Unmanaged risks
• Poor communication among customers, developers, and users
• Use of immature technology
• Inability to handle the project's complexity
• Sloppy development practices
• Poor project management
• Stakeholder politics
• Commercial pressures
Source spectrum.ieee.org/computing/software/why-software-fails
16/10/2015 @danielbryantuk
At the Start: Feedback & Federation
• Plan, do, check (showcase), act
• Improve estimation (or #noestimates?)
• Divide and conquer
– SOA, microservices, modules… (systems thinking)
– Squads, guilds, chapters
16/10/2015 @danielbryantuk
Spotify
16/10/2015 @danielbryantuk
A Side Note
Even if your upfront planning is good…
16/10/2015 @danielbryantuk
Things Inevitably Go Wrong…
16/10/2015 @danielbryantuk
At the End: It’s All About People
16/10/2015 @danielbryantuk
From Macro to Micro…
16/10/2015 @danielbryantuk
Accept Unknown Unknowns…
16/10/2015 @danielbryantuk
dilbert.com/strips/comic/1995-11-10/
Sunk Cost Fallacy
“Any past cost that has already been
paid and cannot be recovered should not
figure into the decision making process. ”
When did you last remove a framework?
…or a library?
16/10/2015 @danielbryantuk
Why Are We Reluctant?
• We don’t like being wrong…
• Existing effort appears wasted
– Endowment effect
• Loss aversion
– Twice as powerful, psychologically, as gains?
16/10/2015 @danielbryantuk
Try Not to ‘Sink Costs’
16/10/2015 @danielbryantuk
Retrospect Regularly
• Did we make the right choice?
• When was the ‘last responsible moment’?
• What can we learn?
• How can we get better?
16/10/2015 @danielbryantuk
Anchoring Bias
“Common tendency to rely too heavily
on the first piece of information offered
when making decisions. ”
How does your manager ask for estimates?
…is it an unbiased question?
16/10/2015 @danielbryantuk
16/10/2015 @danielbryantuk
Anchoring: Learn to “Upwardly Manage”
• Learn to say no…
– Provide explanations and alternatives
• Make sure goals/user stories are well-defined
– Collaboration
– Feedback
• Apply PERT estimations (bit.ly/1mGzuoe)
16/10/2015 @danielbryantuk
A Little More #NoEstimates
16/10/2015 @danielbryantuk
Read Your Way to Tech Leadership (?)
16/10/2015 @danielbryantuk
Ok, lets wrap this up…
16/10/2015 @danielbryantuk
We All Make Mistakes…
16/10/2015 @danielbryantuk
Have a Little Empathy…
16/10/2015 @danielbryantuk
“You will be the same person in five years as
you are today except for the people you meet
and the books you read.”
- Charlie “Tremendous” Jones
(bit.ly/1LAdQkv)
16/10/2015 @danielbryantuk
Awesome Conferences and Books
16/10/2015 @danielbryantuk
16/10/2015 @danielbryantuk
Summary
• Apply process and models (as appropriate)
– Listen to system 1, but engage system 2…
• Collaborate more (and better)
• Learn, do, retrospect, (teach,) repeat
- “Think” more deliberately -
16/10/2015 @danielbryantuk
Thanks for Listening!
Comments and feedback are welcomed…
daniel.bryant@opencredo.com
@danielbryantuk
www.infoq.com/author/Daniel-Bryant
www.parleys.com/author/daniel-bryant
www.muservicesweekly.com
16/10/2015 @danielbryantuk

More Related Content

Viewers also liked

Competition ppt1
Competition ppt1Competition ppt1
Competition ppt1
Kaushik Basu
 
Java6weekstraining
Java6weekstrainingJava6weekstraining
Java6weekstraining
Amit Singh
 
Transformation digitale et banques de detail
Transformation digitale et banques de detail Transformation digitale et banques de detail
Transformation digitale et banques de detail
BRIVA
 
El extraño caso del Dr. Jekyll y Mr. Hyde
El extraño caso del Dr. Jekyll y Mr. HydeEl extraño caso del Dr. Jekyll y Mr. Hyde
El extraño caso del Dr. Jekyll y Mr. Hyde
Michelle Serna Esquivel
 
Diaa arafa sr.accountant
Diaa arafa sr.accountantDiaa arafa sr.accountant
Diaa arafa sr.accountant
Diaa Said
 
Trimestre 1
Trimestre 1Trimestre 1
Trimestre 1
gioliher
 
Webinar - 2017 at EPIP
Webinar - 2017 at EPIPWebinar - 2017 at EPIP
Webinar - 2017 at EPIP
EPIPNational
 
Las dependencias de la casa por Mayra Guamaní
Las dependencias de la casa por Mayra GuamaníLas dependencias de la casa por Mayra Guamaní
Las dependencias de la casa por Mayra Guamaní
MAYRAGUAMANI
 
Презентация видеопродакшена, видеостудии
Презентация видеопродакшена, видеостудииПрезентация видеопродакшена, видеостудии
Презентация видеопродакшена, видеостудии
Евгений Пешков
 
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
Sébastien Bourguignon
 
Eliminating Bias in Investigations
Eliminating Bias in InvestigationsEliminating Bias in Investigations
Eliminating Bias in Investigations
Case IQ
 
Version incompleta libro terminologia táctica aplicada
Version incompleta libro terminologia táctica aplicadaVersion incompleta libro terminologia táctica aplicada
Version incompleta libro terminologia táctica aplicada
UNAM
 
Docker containerd Kubernetes sig node
Docker containerd Kubernetes sig nodeDocker containerd Kubernetes sig node
Docker containerd Kubernetes sig node
Patrick Chanezon
 

Viewers also liked (16)

Competition ppt1
Competition ppt1Competition ppt1
Competition ppt1
 
Prueba slidershare
Prueba slidersharePrueba slidershare
Prueba slidershare
 
Java6weekstraining
Java6weekstrainingJava6weekstraining
Java6weekstraining
 
Transformation digitale et banques de detail
Transformation digitale et banques de detail Transformation digitale et banques de detail
Transformation digitale et banques de detail
 
El extraño caso del Dr. Jekyll y Mr. Hyde
El extraño caso del Dr. Jekyll y Mr. HydeEl extraño caso del Dr. Jekyll y Mr. Hyde
El extraño caso del Dr. Jekyll y Mr. Hyde
 
Ps1 chapter 1
Ps1 chapter 1Ps1 chapter 1
Ps1 chapter 1
 
Diaa arafa sr.accountant
Diaa arafa sr.accountantDiaa arafa sr.accountant
Diaa arafa sr.accountant
 
Trimestre 1
Trimestre 1Trimestre 1
Trimestre 1
 
CV OF PRISHEN GUNPATH
CV OF PRISHEN GUNPATHCV OF PRISHEN GUNPATH
CV OF PRISHEN GUNPATH
 
Webinar - 2017 at EPIP
Webinar - 2017 at EPIPWebinar - 2017 at EPIP
Webinar - 2017 at EPIP
 
Las dependencias de la casa por Mayra Guamaní
Las dependencias de la casa por Mayra GuamaníLas dependencias de la casa por Mayra Guamaní
Las dependencias de la casa por Mayra Guamaní
 
Презентация видеопродакшена, видеостудии
Презентация видеопродакшена, видеостудииПрезентация видеопродакшена, видеостудии
Презентация видеопродакшена, видеостудии
 
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
#PortraitDeStartuper #3 - Tilkee - Sylvain Tillon
 
Eliminating Bias in Investigations
Eliminating Bias in InvestigationsEliminating Bias in Investigations
Eliminating Bias in Investigations
 
Version incompleta libro terminologia táctica aplicada
Version incompleta libro terminologia táctica aplicadaVersion incompleta libro terminologia táctica aplicada
Version incompleta libro terminologia táctica aplicada
 
Docker containerd Kubernetes sig node
Docker containerd Kubernetes sig nodeDocker containerd Kubernetes sig node
Docker containerd Kubernetes sig node
 

Similar to Thinking fast and slow with software development - Daniel Bryant

JAX London 2016: "Empathy - The hidden ingredient of good software development?"
JAX London 2016: "Empathy - The hidden ingredient of good software development?"JAX London 2016: "Empathy - The hidden ingredient of good software development?"
JAX London 2016: "Empathy - The hidden ingredient of good software development?"
Daniel Bryant
 
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
Microservice Summit 2016 "Microservices: The Organisational and People Impact"Microservice Summit 2016 "Microservices: The Organisational and People Impact"
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
Daniel Bryant
 
Microservices: The Organizational and People Impact
Microservices: The Organizational and People ImpactMicroservices: The Organizational and People Impact
Microservices: The Organizational and People Impact
Ambassador Labs
 
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
Daniel Bryant
 
Jfokus 2015 "Thinking Fast and Slow with Software Development"
Jfokus 2015 "Thinking Fast and Slow with Software Development"Jfokus 2015 "Thinking Fast and Slow with Software Development"
Jfokus 2015 "Thinking Fast and Slow with Software Development"
Daniel Bryant
 
microXchg 2017: "Microservices: The People and Organisational Impact"
microXchg 2017: "Microservices: The People and Organisational Impact"microXchg 2017: "Microservices: The People and Organisational Impact"
microXchg 2017: "Microservices: The People and Organisational Impact"
Daniel Bryant
 
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
The London Web "Empathy - The Hidden Ingredient of Good Software Development"The London Web "Empathy - The Hidden Ingredient of Good Software Development"
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
Daniel Bryant
 
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
Daniel Bryant
 
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
Daniel Bryant
 
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
Daniel Bryant
 
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
Daniel Bryant
 
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
Daniel Bryant
 
CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...
Daniel Bryant
 
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
Daniel Bryant
 
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
Daniel Bryant
 
The seven deadly sins of microservices
The seven deadly sins of microservicesThe seven deadly sins of microservices
The seven deadly sins of microservices
Haufe-Lexware GmbH & Co KG
 
AllDayDevOps: "Microservices: The People and Organisational Impact"
AllDayDevOps: "Microservices: The People and Organisational Impact"AllDayDevOps: "Microservices: The People and Organisational Impact"
AllDayDevOps: "Microservices: The People and Organisational Impact"
Daniel Bryant
 
NTC Workshop: Digital Inclusion Program Sustainability
NTC Workshop: Digital Inclusion Program SustainabilityNTC Workshop: Digital Inclusion Program Sustainability
NTC Workshop: Digital Inclusion Program Sustainability
Denise Linn Riedl
 
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
Smart Chicago Collaborative
 
Taming the Hoarders (Updated, NACollabSummit)
Taming the Hoarders (Updated, NACollabSummit)Taming the Hoarders (Updated, NACollabSummit)
Taming the Hoarders (Updated, NACollabSummit)
Stephanie Donahue
 

Similar to Thinking fast and slow with software development - Daniel Bryant (20)

JAX London 2016: "Empathy - The hidden ingredient of good software development?"
JAX London 2016: "Empathy - The hidden ingredient of good software development?"JAX London 2016: "Empathy - The hidden ingredient of good software development?"
JAX London 2016: "Empathy - The hidden ingredient of good software development?"
 
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
Microservice Summit 2016 "Microservices: The Organisational and People Impact"Microservice Summit 2016 "Microservices: The Organisational and People Impact"
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
 
Microservices: The Organizational and People Impact
Microservices: The Organizational and People ImpactMicroservices: The Organizational and People Impact
Microservices: The Organizational and People Impact
 
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
 
Jfokus 2015 "Thinking Fast and Slow with Software Development"
Jfokus 2015 "Thinking Fast and Slow with Software Development"Jfokus 2015 "Thinking Fast and Slow with Software Development"
Jfokus 2015 "Thinking Fast and Slow with Software Development"
 
microXchg 2017: "Microservices: The People and Organisational Impact"
microXchg 2017: "Microservices: The People and Organisational Impact"microXchg 2017: "Microservices: The People and Organisational Impact"
microXchg 2017: "Microservices: The People and Organisational Impact"
 
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
The London Web "Empathy - The Hidden Ingredient of Good Software Development"The London Web "Empathy - The Hidden Ingredient of Good Software Development"
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
 
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
 
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
 
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
 
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
 
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
CraftConf16 "Empathy: The Hidden Ingredient of Good Software Development?"
 
CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...
 
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
 
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
GOTO CPH "With Age Comes Wisdom (Hopefully): Lessons Learned from 15 Years of...
 
The seven deadly sins of microservices
The seven deadly sins of microservicesThe seven deadly sins of microservices
The seven deadly sins of microservices
 
AllDayDevOps: "Microservices: The People and Organisational Impact"
AllDayDevOps: "Microservices: The People and Organisational Impact"AllDayDevOps: "Microservices: The People and Organisational Impact"
AllDayDevOps: "Microservices: The People and Organisational Impact"
 
NTC Workshop: Digital Inclusion Program Sustainability
NTC Workshop: Digital Inclusion Program SustainabilityNTC Workshop: Digital Inclusion Program Sustainability
NTC Workshop: Digital Inclusion Program Sustainability
 
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
Digital Inclusion Program Sustainability: Documenting Lessons, Sharing Succes...
 
Taming the Hoarders (Updated, NACollabSummit)
Taming the Hoarders (Updated, NACollabSummit)Taming the Hoarders (Updated, NACollabSummit)
Taming the Hoarders (Updated, NACollabSummit)
 

More from JAXLondon_Conference

Cassandra and Spark - Tim Berglund
Cassandra and Spark - Tim BerglundCassandra and Spark - Tim Berglund
Cassandra and Spark - Tim Berglund
JAXLondon_Conference
 
All change! How the new Economics of Cloud will make you think differently ab...
All change! How the new Economics of Cloud will make you think differently ab...All change! How the new Economics of Cloud will make you think differently ab...
All change! How the new Economics of Cloud will make you think differently ab...
JAXLondon_Conference
 
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
The Unit Test is dead. Long live the Unit Test! - Colin VipursThe Unit Test is dead. Long live the Unit Test! - Colin Vipurs
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
JAXLondon_Conference
 
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo EuteneuerStop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
JAXLondon_Conference
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel UrmaJava Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel UrmaJava Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
Smoothing the continuous delivery path – a tale of two teams - Lyndsay PrewerSmoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
JAXLondon_Conference
 
VC from the inside - a techie's perspective - Adrian Colyer
VC from the inside - a techie's perspective - Adrian ColyerVC from the inside - a techie's perspective - Adrian Colyer
VC from the inside - a techie's perspective - Adrian Colyer
JAXLondon_Conference
 
Use your type system; write less code - Samir Talwar
Use your type system; write less code - Samir TalwarUse your type system; write less code - Samir Talwar
Use your type system; write less code - Samir Talwar
JAXLondon_Conference
 
The java memory model and the mutability matrix of pain - Jamie Allen
The java memory model and the mutability matrix of pain - Jamie AllenThe java memory model and the mutability matrix of pain - Jamie Allen
The java memory model and the mutability matrix of pain - Jamie Allen
JAXLondon_Conference
 
The art of shifting perspectives - Rachel Davies
The art of shifting perspectives - Rachel DaviesThe art of shifting perspectives - Rachel Davies
The art of shifting perspectives - Rachel Davies
JAXLondon_Conference
 
Spring Boot in the Web Tier - Dave Syer
Spring Boot in the Web Tier - Dave SyerSpring Boot in the Web Tier - Dave Syer
Spring Boot in the Web Tier - Dave Syer
JAXLondon_Conference
 
Microservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly CumminsMicroservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly Cummins
JAXLondon_Conference
 
Love your architecture - Alexander von Zitzewitz
Love your architecture - Alexander von ZitzewitzLove your architecture - Alexander von Zitzewitz
Love your architecture - Alexander von Zitzewitz
JAXLondon_Conference
 
Lambdas puzzler - Peter Lawrey
Lambdas puzzler - Peter LawreyLambdas puzzler - Peter Lawrey
Lambdas puzzler - Peter Lawrey
JAXLondon_Conference
 
Java vs. Java Script for enterprise web applications - Chris Bailey
Java vs. Java Script for enterprise web applications - Chris BaileyJava vs. Java Script for enterprise web applications - Chris Bailey
Java vs. Java Script for enterprise web applications - Chris Bailey
JAXLondon_Conference
 
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
Java generics past, present and future - Raoul-Gabriel Urma, Richard WarburtonJava generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
JAXLondon_Conference
 
Java 8 best practices - Stephen Colebourne
Java 8 best practices - Stephen ColebourneJava 8 best practices - Stephen Colebourne
Java 8 best practices - Stephen Colebourne
JAXLondon_Conference
 
Intuitions for scaling data centric architectures - Benjamin Stopford
Intuitions for scaling data centric architectures - Benjamin StopfordIntuitions for scaling data centric architectures - Benjamin Stopford
Intuitions for scaling data centric architectures - Benjamin Stopford
JAXLondon_Conference
 
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
Hybrid solutions – combining in memory solutions with SSD - Christos ErotocritouHybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
JAXLondon_Conference
 

More from JAXLondon_Conference (20)

Cassandra and Spark - Tim Berglund
Cassandra and Spark - Tim BerglundCassandra and Spark - Tim Berglund
Cassandra and Spark - Tim Berglund
 
All change! How the new Economics of Cloud will make you think differently ab...
All change! How the new Economics of Cloud will make you think differently ab...All change! How the new Economics of Cloud will make you think differently ab...
All change! How the new Economics of Cloud will make you think differently ab...
 
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
The Unit Test is dead. Long live the Unit Test! - Colin VipursThe Unit Test is dead. Long live the Unit Test! - Colin Vipurs
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
 
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo EuteneuerStop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel UrmaJava Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel UrmaJava Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
 
Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
Smoothing the continuous delivery path – a tale of two teams - Lyndsay PrewerSmoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer
 
VC from the inside - a techie's perspective - Adrian Colyer
VC from the inside - a techie's perspective - Adrian ColyerVC from the inside - a techie's perspective - Adrian Colyer
VC from the inside - a techie's perspective - Adrian Colyer
 
Use your type system; write less code - Samir Talwar
Use your type system; write less code - Samir TalwarUse your type system; write less code - Samir Talwar
Use your type system; write less code - Samir Talwar
 
The java memory model and the mutability matrix of pain - Jamie Allen
The java memory model and the mutability matrix of pain - Jamie AllenThe java memory model and the mutability matrix of pain - Jamie Allen
The java memory model and the mutability matrix of pain - Jamie Allen
 
The art of shifting perspectives - Rachel Davies
The art of shifting perspectives - Rachel DaviesThe art of shifting perspectives - Rachel Davies
The art of shifting perspectives - Rachel Davies
 
Spring Boot in the Web Tier - Dave Syer
Spring Boot in the Web Tier - Dave SyerSpring Boot in the Web Tier - Dave Syer
Spring Boot in the Web Tier - Dave Syer
 
Microservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly CumminsMicroservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly Cummins
 
Love your architecture - Alexander von Zitzewitz
Love your architecture - Alexander von ZitzewitzLove your architecture - Alexander von Zitzewitz
Love your architecture - Alexander von Zitzewitz
 
Lambdas puzzler - Peter Lawrey
Lambdas puzzler - Peter LawreyLambdas puzzler - Peter Lawrey
Lambdas puzzler - Peter Lawrey
 
Java vs. Java Script for enterprise web applications - Chris Bailey
Java vs. Java Script for enterprise web applications - Chris BaileyJava vs. Java Script for enterprise web applications - Chris Bailey
Java vs. Java Script for enterprise web applications - Chris Bailey
 
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
Java generics past, present and future - Raoul-Gabriel Urma, Richard WarburtonJava generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
 
Java 8 best practices - Stephen Colebourne
Java 8 best practices - Stephen ColebourneJava 8 best practices - Stephen Colebourne
Java 8 best practices - Stephen Colebourne
 
Intuitions for scaling data centric architectures - Benjamin Stopford
Intuitions for scaling data centric architectures - Benjamin StopfordIntuitions for scaling data centric architectures - Benjamin Stopford
Intuitions for scaling data centric architectures - Benjamin Stopford
 
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
Hybrid solutions – combining in memory solutions with SSD - Christos ErotocritouHybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
 

Recently uploaded

Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
e20449
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 

Recently uploaded (20)

Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 

Thinking fast and slow with software development - Daniel Bryant

  • 1. Thinking, Fast and Slow… With Software Development Daniel Bryant Principal Consultant, OpenCredo daniel.bryant@opencredo.com @danielbryantuk
  • 2. Think More Deliberately • Our decision making can be flawed… • Apply process and models (as appropriate) • Collaborate more (and better) • Plan, do, check, act… 16/10/2015 @danielbryantuk
  • 3. Who Am I? • London Java Community Associate • muservicesweekly.com • InfoQ Editor, DZone MVB, Voxxed 16/10/2015 @danielbryantuk • Principal Consultant at OpenCredo  Technical/digital transformation  CI/CD, DevOps  Microservices, cloud and containers  {{ insert latest buzzword }}
  • 4. Pointy-Haired Decision Making… 16/10/2015 @danielbryantuk dilbert.com/strip/2010-08-24
  • 5. Our Thinking: A Tale of Two Systems… System 1: fast, instinctive, emotional, subconscious System 2: slower, deliberate, reasoning, conscious 16/10/2015 @danielbryantuk
  • 6. 2 + 2 = ? 16/10/2015 @danielbryantuk
  • 7. (24 / 2) * (1 / 3) = ? 16/10/2015 @danielbryantuk
  • 8. 2 + 2 = 4 (24 / 2) * (1 / 3) = 4 16/10/2015 @danielbryantuk
  • 12. Bob is a single male in his 20’s who is bright, quiet, likes science fiction and fantasy, and avoids interacting with people in the real world Which is more probable? • Bob is a programmer • Bob is a programmer and plays MMORPG? 16/10/2015 @danielbryantuk
  • 14. Our Thinking: A Tale of Two Systems… System 1: fast, instinctive, emotional, subconscious Rapid, associative, and has systemic errors System 2: slower, deliberate, reasoning, conscious Lazy, and causal (not statistical) 16/10/2015 @danielbryantuk
  • 15. Heuristics / biases affecting software delivery 16/10/2015 @danielbryantuk
  • 16. Availability Heuristic “If something can be recalled, it must be important” ‘Hipster-itis’ e.g. the ‘best’ architectural style 16/10/2015 @danielbryantuk
  • 17. Microservices • The current flavour of the month! – Great ideas, but dangerously over-hyped • Frameworks and products emerging – Virtuous (vicious?) circle – “The bandwagon effect” – Have we found the silver bullet?… 16/10/2015 @danielbryantuk
  • 18. Whatever is Available When all you have is a hammer… …everything looks like a nail 16/10/2015 @danielbryantuk
  • 19. When all you have is a SOA… …everything looks like a service (please avoid creating the toString() service) 16/10/2015 @danielbryantuk
  • 20. When all you have is a Jenkins… …everything looks like a Jenkins Job 16/10/2015 @danielbryantuk
  • 21. When all you have is a Spring Framework… …everything looks like an AbstractSingletonProxyFactoryBean 16/10/2015 @danielbryantuk
  • 22. Availability: Think Professionally • Stop… engage system 2 • Spike/prototype, experiment, evaluate… • Constant learning – Find trusted mentors – Cultivate blogs – Read the classics 16/10/2015 @danielbryantuk
  • 24. Evaluation “I will postpone using this shiny new framework until my peers have validated the proposed benefits with rigorous scientific experiments” - Said by no programmer …ever 16/10/2015 @danielbryantuk
  • 25. Raible’s Comparison Matrix 16/10/2015 @danielbryantuk Matt Raible comparison matrix (bit.ly/OxUzad)
  • 26. Optimistic Bias “People tend to be overconfident, believing that they have substantial control in their lives” I know what our customers want… …how could I possibly be wrong? 16/10/2015 @danielbryantuk
  • 27. Four Factors of Optimistic Bias • Desired end state – Self-enhancement, perceived control • Cognitive mechanisms – Representativeness heuristic, singular target focus • Information about self vs target • Overall mood 16/10/2015 @danielbryantuk
  • 28. Optimism: Think Professionally • Define (and share) clear goals • Build, measure, learn… • Remove uncertainty early (bit.ly/1mAb6o4) – “Patterns of Effective Delivery” by Dan North • Software is inherently collaborative… 16/10/2015 @danielbryantuk
  • 29. The Three Amigos 16/10/2015 @danielbryantuk
  • 30. Pair Mob Programming 16/10/2015 @danielbryantuk benjiweber.co.uk/blog/2014/11/30/the-unruly-mob/ probablyfine.co.uk/papers/mob-programming.pdf www.infoq.com/interviews/zuill-mob-programming
  • 31. DevOps: Share the Pain... 16/10/2015 @danielbryantuk
  • 32. “Dev-on-call” An occasional spike to the head is a good thing... ...metaphorically speaking • You build it, you run it – Shared responsibility – Communication 16/10/2015 @danielbryantuk
  • 33. Remove (or Limit) Uncertainty 16/10/2015 @danielbryantuk
  • 34. Check the HiPPO 16/10/2015 @danielbryantuk bit.ly/1xseeXM
  • 35. Planning Fallacy “A phenomenon in which predictions about how much time will be needed to complete a future task display an optimistic bias. ” Was your last project completed on time? …and on budget? 16/10/2015 @danielbryantuk
  • 36. IT Track Record… • Sainsbury’s Supply Chain Management System – $526m bit.ly/160SnAj • NHS patient record system – £10bn bit.ly/XBzFuV • HealthCare.gov – onforb.es/1k7egyb 16/10/2015 @danielbryantuk
  • 37. Most Common Factors for Failure • Unrealistic or unarticulated project goals • Inaccurate estimates of needed resources • Badly defined system requirements • Poor reporting of the project's status • Unmanaged risks • Poor communication among customers, developers, and users • Use of immature technology • Inability to handle the project's complexity • Sloppy development practices • Poor project management • Stakeholder politics • Commercial pressures Source spectrum.ieee.org/computing/software/why-software-fails 16/10/2015 @danielbryantuk
  • 38. Most Common Factors for Failure • Unrealistic or unarticulated project goals • Inaccurate estimates of needed resources • Badly defined system requirements • Poor reporting of the project's status • Unmanaged risks • Poor communication among customers, developers, and users • Use of immature technology • Inability to handle the project's complexity • Sloppy development practices • Poor project management • Stakeholder politics • Commercial pressures Source spectrum.ieee.org/computing/software/why-software-fails 16/10/2015 @danielbryantuk
  • 39. At the Start: Feedback & Federation • Plan, do, check (showcase), act • Improve estimation (or #noestimates?) • Divide and conquer – SOA, microservices, modules… (systems thinking) – Squads, guilds, chapters 16/10/2015 @danielbryantuk
  • 41. A Side Note Even if your upfront planning is good… 16/10/2015 @danielbryantuk
  • 42. Things Inevitably Go Wrong… 16/10/2015 @danielbryantuk
  • 43. At the End: It’s All About People 16/10/2015 @danielbryantuk
  • 44. From Macro to Micro… 16/10/2015 @danielbryantuk
  • 45. Accept Unknown Unknowns… 16/10/2015 @danielbryantuk dilbert.com/strips/comic/1995-11-10/
  • 46. Sunk Cost Fallacy “Any past cost that has already been paid and cannot be recovered should not figure into the decision making process. ” When did you last remove a framework? …or a library? 16/10/2015 @danielbryantuk
  • 47. Why Are We Reluctant? • We don’t like being wrong… • Existing effort appears wasted – Endowment effect • Loss aversion – Twice as powerful, psychologically, as gains? 16/10/2015 @danielbryantuk
  • 48. Try Not to ‘Sink Costs’ 16/10/2015 @danielbryantuk
  • 49. Retrospect Regularly • Did we make the right choice? • When was the ‘last responsible moment’? • What can we learn? • How can we get better? 16/10/2015 @danielbryantuk
  • 50. Anchoring Bias “Common tendency to rely too heavily on the first piece of information offered when making decisions. ” How does your manager ask for estimates? …is it an unbiased question? 16/10/2015 @danielbryantuk
  • 52. Anchoring: Learn to “Upwardly Manage” • Learn to say no… – Provide explanations and alternatives • Make sure goals/user stories are well-defined – Collaboration – Feedback • Apply PERT estimations (bit.ly/1mGzuoe) 16/10/2015 @danielbryantuk
  • 53. A Little More #NoEstimates 16/10/2015 @danielbryantuk
  • 54. Read Your Way to Tech Leadership (?) 16/10/2015 @danielbryantuk
  • 55. Ok, lets wrap this up… 16/10/2015 @danielbryantuk
  • 56. We All Make Mistakes… 16/10/2015 @danielbryantuk
  • 57. Have a Little Empathy… 16/10/2015 @danielbryantuk
  • 58. “You will be the same person in five years as you are today except for the people you meet and the books you read.” - Charlie “Tremendous” Jones (bit.ly/1LAdQkv) 16/10/2015 @danielbryantuk
  • 59. Awesome Conferences and Books 16/10/2015 @danielbryantuk
  • 61. Summary • Apply process and models (as appropriate) – Listen to system 1, but engage system 2… • Collaborate more (and better) • Learn, do, retrospect, (teach,) repeat - “Think” more deliberately - 16/10/2015 @danielbryantuk
  • 62. Thanks for Listening! Comments and feedback are welcomed… daniel.bryant@opencredo.com @danielbryantuk www.infoq.com/author/Daniel-Bryant www.parleys.com/author/daniel-bryant www.muservicesweekly.com 16/10/2015 @danielbryantuk

Editor's Notes

  1. Many explanations for the optimistic bias come from the goals that people want and outcomes they wish to see.[1] People tend to view their risks as less than others because they believe that this is what other people want to see. These explanations include self-enhancement, self-presentation, and perceived control. Self-enhancement suggests that optimistic predictions are satisfying and that it feels good to think that positive events will happen. People tend to focus on finding information that supports what they want to see happen, rather than what will happen to them Representative heuristic: individuals tend to think in stereotypical categories rather than about their actual targets when making comparisons. The estimates of likelihood associated with the optimistic bias are based on how closely an event matches a person's overall idea of the specific event Individuals know a lot more about themselves than they do about others.[1] Because information about others is less available, information about the self versus others leads people to make specific conclusions about their own risk, but results in them having a harder time making conclusions about the risks of others. This leads to differences in judgments and conclusions about self-risks compared to the risks of others, leading to larger gaps in the optimistic bias
  2. In behavioral economics, the endowment effect (also known as divestiture aversion) is the hypothesis that people ascribe more value to things merely because they own them (1990 where participants were given a mug and then offered the chance to sell it or trade it for an equally priced alternative good (pens). Kahneman et al. (1990)[2] found that the amount participants required as compensation for the mug once their ownership of the mug had been established ("willingness to accept") was approximately twice as high as the amount they were willing to pay to acquire the mug ("willingness to pay") Loss aversion implies that one who loses $100 will lose more satisfaction than another person will gain satisfaction from a $100 windfall.
  3. delay commitment until the last responsible moment, that is, the moment at which failing to make a decision eliminates an important alternative. If commitments are delayed beyond the last responsible moment, then decisions are made by default, which is generally not a good approach to making decisions. The key is to make decisions as late as you can responsibly wait because that is the point at which you have the most information on which to base the decision.
  4. Program Evaluation and Review Technique Three-point estimation technique