Over the years, I have seen us fall in the same rabbit holes repeatedly, myself included.
This talk will help you spot these holes and avoid them. And if you are in one, then better to know how to get out. Rather save your energy for the real hard yards of transformation, than digging in holes.
18. failure
Being unprepared for a backlog grooming?
Being late for stand-up?
A bad release?
A late deployment?
Not meeting sprint commitments?
Over budget?
When it is
repeated.
When it is
not corrected.
RABBIT HOLE #1
TOO SAFE TO FAIL
19. And a lot
more.
Your backchannels are more active than
your retrospectives
Emotions win over logic and reason
Anonymous feedback
Critical straight talkers are marginalised
Parent shopping
signs
RABBIT HOLE #1
TOO SAFE TO FAIL
20. MODEL and understand
your business as a simple,
measurable machine
include your software in the machine
ASK
what happened?
why did it happen?
what was the impact?
who was at the wheel?
Establish if it was the
machine or a person
if it was the machine
tweak the machine
if it was a person
if a lack of skills then train
if a lack of ability then replace
Be humane(always)
fix
RABBIT HOLE #1
TOO SAFE TO FAIL
23. Getting out of
this hole is
tough!
It may be
easier to
pre-empt.
quitting
get scared
it was not that important
ran out of time or money
doing the wrong thing
have a short term focus
settled for mediocrity
RABBIT HOLE #2
QUITTING IN THE ABYSS
24. look ahead
RABBIT HOLE #2
QUITTING IN THE ABYSS
walking a
death march
aiming for
mediocrity
worthless
effort
25. pre-empt
RABBIT HOLE #2
QUITTING IN THE ABYSS
Write downs the conditions that will cause you to quit
Name the 2nd and 3rd order consequences of quitting and not quitting
Don’t rush to build
1 Converge on the problem and potential models
2 Conceptualise the model confirm with data
3 Realise it fast assume what is routine work
27. what is the gap
between
the best and the rest
RABBIT HOLE #3
ACCEPTING MEDIOCRITY
28. signs
RABBIT HOLE #3
ACCEPTING MEDIOCRITY
It takes longer to socialise a change than to build a backlog
Stories are untestable
The product is a set of incompatible features glued together
Never have proper test data
Needing a refactoring sprint
More effort put into looking good than being good
Too many people on the project and meaningless meetings
29. zone of mediocrity
RABBIT HOLE #3
ACCEPTING MEDIOCRITY
extinction zone!
excellence
acceptable
necessary
zone of hard yards
the normalisation
of deviance
30. 4 developers, 1 QA, 1 analyst, 1 UX, 1 Program Manager
Maintain conceptual integrity - all the time!
Stop personal productivity having negative generativity
Focus on the output and figure out the input
The team has the right people regardless of the org chart
The team includes the software, the logs, the data, the tools
no easy fix
RABBIT HOLE #3
ACCEPTING MEDIOCRITY
32. Why do we do this?
Accept project deadlines that can’t be
achieved and complain about it
fudge the sprint to look good in the review
spinning measurements / reports to look good
writing worthless tests to get a green build
RABBIT HOLE #4
UNBELIEVABLE
33. the fix #1
RABBIT HOLE #4
UNBELIEVABLE
ask “is it true?”
and demand answers
from credible people
34. the fix #2
RABBIT HOLE #4
UNBELIEVABLE
know when to
hold the line
and
when to walk
36. Do you know
where are the hotspots in your code?
what effort is being spent there?
the distribution of knowledge?
how long it takes to onboard?
RABBIT HOLE #5
IGNORANT OF COSTS
37. The code that has
far too many lines
with high complexity
and changes a lot
(by many people)
hotspot
RABBIT HOLE #5
IGNORANT OF COSTS
38. A good code base
has less than 5%
hotspots
that consumes
less than 10% of cost
(with a handful of developers)
What I observed
RABBIT HOLE #5
IGNORANT OF COSTS
Many code bases
have under 10% hotspots
but consume
easily 25% of
development cost
(with teams in excess of 20 developers)
39. software is a craft
software is art
not the fix
RABBIT HOLE #5
IGNORANT OF COSTS
40. maintain conceptual integrity
compatible mental models
(when this happens, you accelerate)
discipline
experiment in spite of uniformity
(this is about well designed hypotheses, not mere ideas)
always value data
the fix
RABBIT HOLE #5
IGNORANT OF COSTS
42. What do you want?
happiness?
a great score on KPI’s?
chase a plan of 2 week milestones?
get someone of your back?
RABBIT HOLE #6
CHASING RAINBOWS
43. RABBIT HOLE #6
CHASING RAINBOWS
be useful first and happiness will follow
my actions defines the next version of myself
be honest - always
never lie when we can’t tell the truth
learn to accept and appreciate criticism
never use my input effort as an excuse
fixing myself
44. THIS IS WHAT WE
SHOULD BE DOING
trying to understand applying our understanding
conversations design code run
“observe - tweak - learn” loop
45. thank you
Too safe to fail
Quitting in the abyss
Accepting mediocrity
Unbelievable
Ignorant of costs
Chasing rainbows
agile rabbit holes
aslam khan
@aslamkhn