Software Development: Thinking, Fast and Slow

Post on 22-Jan-2015

1.415 views 2 download

Tags:

description

In the international bestseller 'Thinking, Fast and Slow', Daniel Kahneman explains how we as human beings think and reason, and perhaps surprisingly how our thought processes are often fundamentally flawed and biased. This talk briefly explores the ideas presented in the book in the context of professional software development. As software developers we all like to think that we are highly logical, and make only rational choices, but after reading the book I'm not so sure. Here I'll share my thinking on thinking.

Transcript of Software Development: Thinking, Fast and Slow

Professional Software Development:Thinking, Fast and Slow

Daniel BryantCTO, Instant Access Technologies

d.bryant@iatltd.com@taidevcouk

10/04/2023 @taidevcouk

Thinking, Fast and Slow

An awesome book!

Exploring how we think…“Bias and decision heuristics”

amzn.to/KidCCy

10/04/2023 @taidevcouk

Your Thinking: A Tale of Two Systems…

System 1:fast, instinctive, emotional, subconsciousSystemic errors

System 2:slower, deliberate, reasoning, consciousLazy, and causal (not statistical)

10/04/2023 @taidevcouk

Heuristics / biases affecting software developers

10/04/2023 @taidevcouk

Availability Heuristic

“If something can be recalled, it must be important”

Ever notice that MongoDB are at every conference?

…and every application seems to use MongoDB?

10/04/2023 @taidevcouk

10/04/2023 @taidevcouk

Substitution Heuristic

“…a computationally complex judgment will be substituted

for a more easily calculated heuristic”

Observe what happens when you ask…

‘Is Scala a good choice for your current project?’

10/04/2023 @taidevcouk

10/04/2023 @taidevcouk

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?

10/04/2023 @taidevcouk

10/04/2023 @taidevcouk

Thinking Professionally

• Availability– Constant learning and evaluation– Spike, prototype, experiment…

• Substitution– Matt Raible comparison matrix (bit.ly/OxUzad)

• Anchoring– ‘Clean Coder’ PERT Estimation (amzn.to/1dr0SSW)

10/04/2023 @taidevcouk

Thanks for Listening!

This is a beta lightning talk…… was it interesting? Please let me know!

Contact me: d.bryant@iatltd.com@taidevcouk