Get notified about Dave Farley

Sign up to a email when Dave Farley publishes a new video

good afternoon so this joke this
presentation started is a bit of a joke
and it's meant to be slightly humorous I
am really not trying to start a religion
with my own laws or anything like that
but the this this started a long time
ago and I was I was in a canteen far
away which didn't really look much like
this apart from the attendees it looked
a bit more like this and and we were
doing what friends do we I work together
in this consultancy we were there was a
bunch of us that got on really well we
were doing some interesting things and
we used to always eat lunch together in
the canteen and we were chatting and
making jokes about things and put in the
world right as you do and I kind of
jokingly came up with these laws which
in the network of my friends became kind
of reasonably well known a few years
later one of my friends that was at that
in that group Martin Thompson was
talking at conference and he put this up
where he misquoted me which he's want to
do but it sees a good friend so I'll let
it pass but as soon as you realize that
most people don't know what they're
doing the wheel makes a lot more sense
um that's actually not second that's not
Farley second law but it is it is
something that I said I confess during
the course of the conversation so here
are the laws people are crap stuffs more
complicated than you think all stuff is
interesting if you just look at it in
the right way I have a caveat III a man
I am an English English speaker and in
English English saying that people are
crap doesn't isn't as rude as it sounds
it doesn't mean that they're it
doesn't mean that they're nasty people
it means that they're vaguely rubbish it
means that they're not really very good
at things and that's that's what I mean
so this is kind of what I mean more than
saying that people are bad or nasty or
horrible we're just a bit rubbish as a
what was she thinking actually it more
than that this is kind of what I had in
mind I would like to know what was going
through his mind oh and this is Kai I
think this is a common part of human
experience this this kind of sense of
stuff not really working out as we
planned this is my mental model of the
human species so as I say it's not meant
to be unpleasant I don't mean to be
getting at anybody I'm not I'm not
pointing a finger in saying your crap
and i'm not i'm just as crap as
everybody else we're all just as crap as
and i want to try and convince you a
little bit of that and then talk about
what we need to do to try and avoid some
of the crap net and so starting off
hands up who thinks that you know you're
all intelligent people you're working in
this cerebral discipline who thinks that
you're rational okay I've got news for
you if you go for it if you go to a
meeting and you want to convince the
people in the meeting that your ideas
are the right ideas what's the most
important thing that you can do sorry
yell that that works haven't have nice
pretty presentation materials actually
psychologists have done the research and
the most important thing that you can do
is bring nice food that will convince
people faster than anything else doesn't
matter how good your arguments are how
powerful your presentation materials how
well thought out your argument is bring
the nice biscuits and people will listen
to you seeing is believing that that's a
well-known phrase right so I'm going to
show you some things that and that maybe
might make you question that too so so
people are crap we poor observers did
anybody notice well done
thank you for playing here's a little
video are of us being poor observers
sometime soon
so so you got theories about what's
going on here some weird magnets you
know right that stuff it's obvious that
that's what's going they look quite like
those aha here is some more this this
one in in the UK this one caused
enormous controversy depending on what
you're thinking at the time and what you
perceive the lighting to be at the time
this dress is either white and gold or
blue and black and it's kind of hard to
see will be one or the other depending
on it is it's it's this is a clear
example of the same effect he's a he's a
picture and I've got two squares that
are marked inb which ones the darker
square eh yeah come on put your hands up
you know you think it's a really or be
well I I promise that I haven't changed
anything all I've done is cut and paste
it and I'll slide it down to be
alongside they're the same color this
there's there's a thing about the way in
which our cognition work so the way that
a vision system works where we it's it's
not just measuring life it's not just
measuring colors we infer we make it
colors really really complicated if you
look at it if you look at it in detail
view try and figure out what's going on
it's really difficult which is one of
the reasons that we can usually still
tell when something is computer graphics
or other than real because it's such a
complex thing and that's in part that's
a large part of the cognition it's the
way that our brains work and the way
they interpret the signals that we get
and we make jump to conclusions about
well we think that this is in a certain
lighting condition we think that this is
in shade therefore if it's that color of
gray it must be light whereas this one
was in life and if it's that color of
gate must be dark and we make that up in
our heads here's another one if you
stare at the dot in the picture i'm
sorry i'm not being jingoistic about the
flag it's just this is the picture that
I found so if you stare at the dot in
the middle of the picture
for a few seconds and then I'm just
going to put up a blank sheet a white
sheet and if you were staring at the
dark the persistence in your vision this
is chemical processes going on in the
back of your eyes this is the way that
your eyes work you there's nothing
really there it's just a white sheet of
paper but if you were playing along you
will have seen the British flag in its
normal colors here's the knot here's an
even better one I like this one better
if you stare at the dot again for a few
seconds I have to wait to program your
your eyes now if you look at this it
looks in color but if you move your eyes
and there's nothing tricky are going on
than that all of the trickiness is going
on inside of your heads here's another
one this is a static picture if you if
you watch this reading time I think that
what you'll probably see is just it
moving back and forth like that it's
because of the way that our eyes work in
our eye scan around a film actually our
field of view is very very narrow and we
can perceive very little so what we do
is that our ice kid about around the
scene and they sample the world and they
paint a picture in our brains of what's
going on and with a picture like this we
kind of lose reference and so as I eyes
are skidding around there's something
about this picture that makes it feel
like it moves around and so that gives
it the illusion brains paint the
illusion that the that the scene is
moving the with us here's another one
and I love this one there are four
I'm going to help you out ok now I'm
going to remove the lines again and you
still can't see it there's more going on
than we think he's going on this is this
is ridiculously simple this is just they
agreed with white dots if you watch this
for any times I think you will see some
black dots and you don't see them moving
around as your eyes move around the
scene we can fool ourselves in all sorts
of ways there are these these sorts of
optical illusions that give us give us a
you know a fake view of reality this is
a this is a work of art that somebody
did a street art up literally there was
in Canary Wharf in London and just with
false perspective you move it you have a
couple of paces to the side and it's all
it's all obviously wrong but you stand
in the right place and you get this
amazing image this is to do with the
physiology of our eyes and the
that this stuff works this is there's no
avoiding this we if we show that there
are some kinds of optical illusions that
with rectangles if you show that to
people that have only lived where there
aren't any rectangles not in cities or
anything like that then they don't share
those optical illusions but something
that what many of the ones that I've
shown you aren't like that these are
things that are just in built into us
they're just part of human experience we
can't avoid these things is another one
this is an animation this isn't one of
those people wearing dots my bet is that
you can even tell what sex you think
this person is and it's not it's just
dots moving it's just a pure animation
of dots moving this one's even better i
hope i hope the sounds legend of i'm
going to play you some sounds and if you
haven't heard anything like this before
you won't know what the sound is and
then i'm going to play you some speech
that translates those sounds and then
after a play the sounds again you will
understand the speech
the camel was kept in a cage at the zoo
they have always carefully carry to the
zoo now with the newspaper left home the
man read the newspaper at lunch time
allow read the newspaper let her know he
was better he was sitting at his desk in
his office he's all three hello is
brain paints the picture it fills in the
gaps those that that speech was made
purely from sine waves there are no
consonant sounds in there there's just
sine waves which kind of a close
approximate the vowel sounds that come
out but our brains are these amazing
devices that allow us to fill in the
gaps and paint pictures and allow us to
understand what's really going on it is
it gets it more interesting when you
start looking at the illusions that are
just part of our brain not necessarily
perceptual you know sensory illusions in
there st. and this is this is one of
those I'm going to show you some words
and call out the color of the words not
so sorry i bought the sound of things i
think i think many of you did quite well
but nevertheless it's harder than you
think isn't it if you do this with
kindergarten children they will be well
out better than you because they can't
read Eric our executive function
prioritizes the things that we learned
through reading that what's the
important about words is what the word
saves not the color there for brains
makers aren't perceive the what the
words say before they perceive what
color the words are so we have to
consciously decide to ignore what the
III am British and and we're all busy
showing off because for the first time
in nearly a hundred years we have a
tennis player that can play tennis well
so so this is that Andy Murray and let's
imagine that that you're standing at the
other end of a tennis court from Andy
Murray let's imagine that he's having a
bad day he's just failed his first serve
and he's just doing his second serve and
it's a really bad one so it's only going
to do about 100 miles an hour okay how
long have you got and what what how do
we break down how much time you've got
to react to this so let's say that the
serve is about 100 miles per hour so
about 160 kilometers an hour so that
right yeah 160 kilometers an hour 100
miles an hour is about forty five
milliseconds so 45 meters per second
sorry said that wrong the speed of light
is roughly 300 thousand meters per
second and as a nerd I love the fact
that roughly one foot is one nanosecond
at the speed of light I think that's a
wonderful thing so the speed of light is
going to take the length of tennis court
is 24 meters and so the speed of light
of nano seconds to get from one
to the court to another meanwhile
there's us in the loop so here's our eye
and the lights going to arrive from the
other end of the tennis court to our eye
and that's going to take a certain
amount of time and then we've got to
process that information so it's going
to take about 78 nanoseconds the light
from Andy Murray serve to reach our I
it's going to take roughly seventy eight
nanoseconds if we're standing outside
the court and he's standing outside the
court it's going to take us in order for
the the pathway from our I to our brain
information it's going to take us about
15 milliseconds just for the message to
get from there to there so really slow
compared to light what's terrifying is
it takes us about 300 milliseconds for
that information to cross the gap from a
subconscious mind to our conscious mind
so if we're looking at this and we start
to think about what this means in terms
of returning Andy Murray serve we've got
a complete time to reactive about 300
15.000 00078 milliseconds the distance
to react if we do the math for that
which I very kindly did for you is is
it's about 45 sorry about 46 feet
remember what I said the whole length of
the tennis courts 78 feet that means
that we had to would have had to
understand what he's doing and be
already sending the signal to our
muscles to react while the balls still
on his side of the tennis court while
the balls actually only about half way
across his side of the tennis court to
our side of the tennis court Top
Sportsman don't really work that way
they work they train themselves to be
more instinctive they try
to get down so that they can work in
these lower numbers but but that's what
it takes I'm sorry I'll take questions
at the end sorry it's where this thing
comes in the idea of fast and slow
thinking I'm going to show you two
calculations here's the two calculations
my bet is that you've got really
different reactions to those two
calculations the first one the the
answer to the calculation will have
appeared in your mind presented to your
conscious mind before your mind actually
had time to recognize that the
calculation was up on the screen it will
have happened in that kind of 15 milli
second time horizon because you know the
answer to two plus two the second one
not so much what would have happened my
guess of what happened with that is that
you'll have thought days just got a
calculation on the screen do I know the
answer to this one no I don't cannot be
bothered to work it out no I can't and
that's the sort of processing that will
have taken 300 plus milliseconds it
makes the difference this is a thing
called fast and slow thinking or system
one and system two thing and this is
neuroscience this is the way our brains
work could I ask everybody to fold their
arms please cool now fold them the other
way around it feels strange doesn't it
feels different the first one system one
thinking you've done that since you were
a child and you can just do that without
thinking about it system to thinking you
have to think I've done this enough now
where I'm starting to train myself to be
able to do it but system to thing you
think head was that what was that the
wrong way around it it's a really
different response the beautiful part of
this as a science nerd is you can
measure this in an fMRI brain scanner
you can see the difference between the
way that people's brains work when
they're doing system to thinking versity
system one thinking when you're doing
the the reactive thing the
short 15 milli second response you get
the top picture a tiny part of your
brain is at play when you do the
conscious thing the slow thing the 300
millisecond thing your brain is like lit
up like a Christmas tree when we do
conscious thought when we employ
rational conscious thinking we are
burning more calories than when we're
not we are using more energy guess what
we're biologically evolved to try and
avoid wasting calories we're
biologically evolved to try and avoid
rational thinking that's too expensive
to do all of the time the vast majority
of human experience we jump to
conclusions that's why the biscuits work
that's why convincing people of
arguments through just giving them nice
food it works being rational is
literally hard work and we're programmed
to avoid it we tend to jump to
conclusions and belief comes easily
doubt takes effort we need to work hard
at being skeptical and we can only
combat this through a deliberate act of
will and practice this leads to us being
poor observers it means that we have
things like confirmation bias wheels
will selectively choose the information
to back up our theories will make a
biased interpretation will let will
discard stuff that we don't think fits
with what we're talking about and we
will literally forget things will only
choose the things that we that we think
are true it's one of the reasons why why
police lineups are not very reliable if
you do if the psychology experiments say
that they're really quite unreliable
because what mostly happens is that the
people that are that the victims that
are trying to help the police want to be
helpful they want to help the police
find the right person so they're just
going to pick somebody from the lineup
whether they were there or not we have
polarization of opinion we tend to you
know organize ourselves into groups and
we've got you know all go down one line
or all of these things come to play and
I think you recognize all of these
things they're just part of normal human
experience this is kind of what we are
on the way that we think about these
things i want to show you another little
video this is this is kind of a lot of
a better example of persistence of
discredited beliefs I've never seen
there's at one point in that in that
little movie where there's a guy
standing there on the defensive side
that could have just stepped like that
and stopped him and he just stands there
what what's that what's this got to do
with a software conference what's the
point that I'm trying to make its this
it's science science is our defense
against these failures science is the
wonderful invention that we've created
to try and stop ourselves from fooling
ourselves and so I I think that software
development in particular is one of the
more difficult things that we undertake
as a species we saw we saw the stuff
that so that mr. kuyper was talking
about yesterday and that the amazing
space ship the the european space sorry
the International Space Station a
wonderful piece of engineering and
you're saying it's the most complex
thing that we ever built I'm not sure
that's right on my better the OS X or
Linux or something like that would give
it a run for its money in terms of the
number of pieces that interoperate I
think software systems are at least on
the same kind of scale if not more
complex the other thing that software
systems have is that their intensity
fragile we get a comma or two out of
place and a spaceship blows up really
I've got some data that i will show you
shortly mmm so so we're working in this
field where it's intensely complex it's
very difficult we're building these
complex fragile systems shouldn't be
using the best techniques available to
us shouldn't we be using a more
scientific approach to solving the
problems or shouldn't we be trying to
test our theories so I'm not talking
about about Large Hadron colliders and
space shuttles I'm talking about the
scientific method this does anybody know
who this is Richard Fineman
fireman was a Nobel prize-winning
physicist he came up with the a way to
solve problems in a field good quantum
electrodynamics the stuff that he came
up with is the most accurate predictive
tool that human beings have ever
invented in addition to that it was this
wonderful philosopher on the topic of
science and and one of the purest
scientists that there's been he was
intellectually very honest he would
discard ideas that as soon as there was
data against them and he was great for
quotes he he said all sorts of wonderful
things science is the belief in the
ignorance of experts the first principle
is that you must not fall yourself and
you're the easiest person to fall it
doesn't matter how intelligent you are
if you guess and that guess can't be
backed by experimental evidence then
it's still a guess so I think that we
should be working to try and establish a
series of experiments opportunities for
us to learn opportunities for us to
screw up and get things wrong and learn
from that and adapt and move on this is
the method this is what wikipedia says
based on character experience in
observation propose an explanation make
a prediction from the from the
hypothesis that you've formed test the
prediction reflect move on that's it if
you look at the kind of entirety of
human history we are as a species we are
in the order of 200,000 years old and by
most measures certainly in terms of the
amount of information that we process
them and knowledge that we have but in
terms of the amount of energy that we
wield the distances that we travel you
can graph human history and for the
200,000 years it's a flat line and about
two or three hundred years ago it starts
ticking up and through the 20th century
by all nearly all of those measures it
just goes exponential and then through
the 21st century it's just off the graph
there's data that suggests that the
entirety of human knowledge doubles
every 14 months
that's staggering it's staggering and
all of that I would argue is as a result
of the application of the scientific
method this is the thing that allows us
to to race ahead to grab a deeper more
profound understanding of the world and
what's around us I think we should be
applying this to science the in
experimental really matters has people
seen this picture before it's one of
these another one of these little
optical illusions so the thing is which
dirties the bigger the one on the right
of the one on the Left could have a show
nobody this is the bigger dot okay there
are the same so we can carry out an
experiment and we can see that there's
same it's a common optical illusion
here's another one of people seeing this
one before okay which line is longer and
the people that were in my workshop
you're not allowed to vote which line is
longer the one on the left on the right
hands up for the one on the left no one
on the right okay no I Chi the one on
the right is longer you're cool you're
correct all those people that had their
hands down because you've been slugged
because you thought was an optical
illusion I cheated you have to do the
experiment you can't trust me so I want
to tell a little story I'm a I'm a
science nerd in an engineering nerd as
well as a software nerd and this is one
of the things that that kind of gets me
excited so in 1961 JFK went to Congress
and said we're going to put a man on the
moon and bring him back and everybody at
NASA went hmm because they had no clue
how to do that at this point in history
it was about two weeks after Alan
Shepard had done the the 500-mile sorry
the 50-mile suborbital lob into the the
first American into space but not not an
orbit yet so these are the things so
Kennedy's establish this goal this this
purpose for NASA over the next less
slightly less than 10 years and here are
the things that NASA didn't know how to
do which is basically all of the things
achieve that goal this is the time where
NASA the NASA space ships were blowing
up on the pad they didn't know how to do
multistage vehicles they didn't know
about about building modular spaceships
they hadn't yet had the idea of having
the lunar rover as a the lunar module as
a separate space ship to the the command
module nobody had done docking in space
space suits nobody there hadn't been any
walks in space yet none of these stuff
did they know how to do and they've now
got nine years so where do you start
where do you start when you've got a
problem like that so I think you know I
think you think of all of the you think
of NASA being a fairly engineering rigid
discipline sort of organization they're
going to do lots of these sorts of
specification kind of things and that's
true but hey a really important feature
is to have this purpose in mind this
direction of travel here's the problem
here's the earth-moon system this is
kind of the classic sort of kids
storybook picture of the earth-moon
system sadly that's not what the
earth-moon system looks like this is the
point in human history no human artifact
had been more than 1 pixel away from the
earth so there's your first problem so
how do you solve a problem on that scale
I know let's build a spaceship put three
astronauts in it fire it to the moon and
see if they come back no maybe not oops
sorry click too soon I'm gone this one
no that's that's that's too risky
they're definitely going to close the
space program if we kill all of the
astronauts so I know let's launch a
spaceship and that without any
astronauts in it send it to the moon and
see if we can get it back well that's
that's that's better than killing the
astronauts that's a step forward but
that's not as simple as it can be what I
don't we just fire something at the moon
and see if we can land it on the moon
yeah that's a lot simpler because I mean
just getting to their he's going to be
hard bringing it back as well as really
the moon and landing on them and what's
survive the landing I know let's launch
spaceships at the moon and see if we can
hit the moon that's this program it's
called the Ranger program these were
essentially spaceships as bullets
they're going to fire them at the moon
and see if you could hit the moon so
what happened well the first Ranger was
Ranger one was intended to go into Earth
orbit and test the launch systems and
all of that and it blew up on the pad
the second one blew up on the pad this
this will amuse you so so you know
you're learning you're learning about
how to stop them blowing up on the pad
what do you do when you're starting to
get behind schedule I know we'll move
the mission parameters out so the next
one we no longer just going to go for
orbit we are going to aim for the moon
so it got it got up it got into Earth
orbit it managed to do the deal with
Vernon shoot towards the moon and it
missed the moon the third one got into
orbit did the deorbit burn all of the
telemetry systems failed and book that
from Earth Observation through
telescopes it hit the moon so it was a
success of a kind they have no data this
one mr. moon the sixth one it all worked
going to orbit did the deorbit burn
shooted up the moon hit the moon the
cameras failed so they've got the
telemetry but no pictures so we're
getting closer the seventh one worked
gave them all of the data the eighth one
worked and the ninth one worked if
they'd started
and the first one had worked and they
did cool let's send the astronauts that
would have been bad one of the things
about being experimental is you've got
to be is fairly is not bad failure is a
good thing failure failure gives the
opportunity to learn that's one of the
things about being experimental has
anybody seen the marshmallow challenge
this is a psychology experiment that's
been carried out across the world with
different groups of people and its
really simple what the idea is is you
have 20 sticks of I do this in workshops
sometimes it's a lot of fun you have 20
sticks of spaghetti a meter of sticky
tape a meter of string and a marshmallow
is it does anybody know what a
marshmallow is the sweets and the idea
is to build the tallest possible tower
out of the spaghetti that will support a
marshmallow at the top and you get all
sorts of wonderful structures that kind
of come out of this some of them are
fascinating but what's really
interesting is the data so as you might
expect architects and engineers are
quite good at this kind of thing okay
proper engineers knows
architects and engineers they understand
structures they understand strength they
know that you've got to build triangles
and they will do all of that kind of
thing so they do quite a good job CEOs
do better than average not better but
they do better when you mix the CEOs
with admin assistants what's going on
there well what most adults tend to do
when you when you do this kind of
exercise in a group is that the first
bit is kind of the social politics it's
the negotiation it's the planning so so
what's going to happen is first off the
group's going to get together and
they're going to be trying to sort out
who are the people that are the good
ideas who are the people that are that
are going to the doers that you're going
to deuce them who are the people who are
just going to listen to me you know and
and when you've got a bunch of CEOs you
know quite successful egotistical kind
of people that takes quite a long time
and so they spend quite a lot of time
trying to figure out all of the politics
of it before they start doing things and
doing the planning and all that kind of
thing if you mix in admin assistants
with those people they facilitate that
conversation and the discussion they
spend less time doing that and more time
building stuff the thing that's really
interesting though is this group
kindergarten children at perform lawyers
business school students and the average
and what they that's because what most
adults groups do is they start off they
do the little social negotiation stuff
and then they come up with a plan we're
going to build this you go away and
build this bit you got away and build
this bit will put it all together we'll
have an integration phase will put it
all together put the marshmallow on the
top and it falls over marshmallows quite
a lot hard heavier than you think
there's quite a lot sugar in the
marshmallow it's quite dense what
kindergarten children do is that they
get three sticks the baguette ease
spaghetti stick the marshmallow on the
top standing on the floor ago yay
and then they put they raise it up and
they go yay and then their AC tu pigna
on the go yay they're experimenting they
are experimenting kind of in its purest
sense they are doing it with Antony
grand plan they don't have any
preconceptions about what's going to
work really they're just experimenting
and just experimenting beats everything
except specialist knowledge I think
that's kind of interesting this is this
is edwards deming this is this is the
chap that went to Japan after the Second
World War is an American process
specialist and the Americans weren't
listening to him so he went to Japan
after the Second World War and helps the
Japanese get the Japanese economy back
onto its feet Deming is the person his
worth kind of gave birth to to the kind
of rational iterative empirical approach
that that infected Japanese industry
he's the father of total quality
management the Toyota method lean all of
those things that kind of we talk about
and what he did was this he did more
than this but this is one of the things
he did this is the plan do study act
model and the idea is is that you plan a
change or test aimed at improvement you
carry out the change test and preferably
a small scale you study the results and
find out what you learned and then you
decide to adopt the change abandon it or
run through the cycle again does that
look familiar that's the scientific
method with just a slight change of
worth it was a conscious lift on his
part of the scientific method to apply
it to the process this is a really
powerful this is the thing that prevents
us from falling ourselves the lean
mindset comes out of that thinking about
working in lean ways in iterative ways
in experimental ways is is that is a is
a real direct outcome of working in this
kind of more deliberate more data-driven
way I have a particular interest in
continuous delivery as one of the people
that wrote the book about it and I think
it's the same thing I
think that I think that continuous
delivery is an application of the
scientific method to software
development we're trying to work in a
way that allows us to be more
experimental we're trying to build a
substrate of technology process and
practice that allow organizations to
become experimental so the
organization's can go and carry out
experiments to find out what their users
want when I talk when I talk to people
about continuous delivery what I say is
that we're trying to optimize the
software development process from having
an idea to getting that idea into the
hands of our users and figuring out what
they make of it and we do whatever it
takes to make that as that process as
short as possible so you can have lots
of ideas and throw away the bad ones
this stuff matters so here are a series
of software failures so if you're right
if if I'm writing software for my mom's
cake shop and the software site fails
that's not that's not the end of the
world but software is important these
days software serves more useful
purposes than just delivering web pages
to customers and my mom's cake shop not
i was i was involved a little bit after
the fact with knight capital and helping
them improve their software did all they
lost half a billion dollars in 45
minutes when their software worse than
that cancer treatment machine overdoses
patient patients with gamma radiation
because of a bug in software the ariane
5 explodes because there was a there was
an old bit of software that assumed
32-bit integers and then you knew bit of
software with 64-bit integers and they
tried to put 64-bit integer integer into
a 32-bit integer bit of memory and the
spaceship blew up and I until I was
researching this I didn't even know
about this one a Russian Colonel
preventing nuclear war in 1983 by
ignoring the message from Earth the
early warning systems all of the early
warning systems were telling him that
the Americans had sent an all-out
nuclear attack and he didn't press the
button the human intervention paid off
so we need to be working in software on
software to
try and avoid these kinds of mistakes we
need to be taking this seriously we need
to be working more deliberate ways and
really doing applying engineering to
these things engineering in the sense of
the application of science to solving
hard problems a little story and I'm
starting to wrap up we've got about five
minutes is that right so this is the
Vancouver Stock Exchange and the
night i know this is an old story but i
think you'll recognize it it opened in
1982 and the the trading index was
initialized at a value of a thousand you
might as well start with a nice round
number it was then updated and truncated
to three decimal places on every trade
about three thousand times a day the
truncation led to a loss of around 20
points per month two years later they
fix the problem they went and they went
back and addressed it and then correct
it and it more it doubled the value of
the stock exchange you get these small
cumulative errors that kill you we've
got to treat these stuff seriously we
can't just be crossing our fingers and
hoping that what we do is correct I
think that it's a fairly common in
software development we start off a
project to me think I know what I use is
will run let's go away and build it to
have a team of six for eight months and
build that and then you go in the users
don't want to it's I know what caused
this book i'm going to fix that thing
that I know is the cause of that Berg
and you fix that thing and it doesn't
fix anything well I know I know what's
going to make my software scalable I've
got a great idea for this architecture
going to go and build that and oh it's
not a scalable always thought it worth
we need to work in smaller ways you need
to work in small chunks try them out
figure out what works figure out what
doesn't measure get feedback and learn
from it so this I've already mentioned
this I think this is what every
organization that creates software is
looking for we want to be able to have
an idea we want to be able to get that
idea into the hands of our users and we
want to figure out what I users make of
the ideas and I think that if we do
anything in our software technology
approach process practices that isn't
focused on doing that we're probably
wasting time this is the core of this is
what we are all input in this room this
is what all of us are employed to do in
one capacity or another so I think a
good starting point is that we work to
optimize that we work to optimize that
cycle to allow us to have lots of ideas
and evaluate which ideas work and which
ones don't one of the things that gives
us power to do that is the idea of cycle
time cycle time is the idea if you
imagine the smallest possible change to
your production system and what it would
take for that change to make it through
your normal processes and the first
cycle time I show you here these are
both projects that I worked on the first
one they had a slight a time of 103 days
if you've got a slacker time of 103 days
you don't have any feedback that's the
problem the second one this project was
roughly 10 to 15 times more complex than
the first one in terms of its scope it
had a psycho time of 57 minutes we could
make any change to our production system
fully evaluated in 57 minutes and if our
sister our continuous delivery system
said it was good we were happy to
release it into production we were in
production for 13 days and 13 months and
five days before the first book was I
was identified by a user of that system
what I'm talking about is really this
it's about trying to establish feedback
loops it's about trying to establish
opportunities for learning that's
another attribute of what science is
really about so we want to have ideas
get them into the hands of users and we
want to learn from what I users make of
it we want to write test reviews
test-driven development right at SC fail
write some code to make it pass refactor
it commits move on to the next one and
you've got these columns interlocking
feedback loops so at the outside we got
these stories experiments in production
we use customer feedback a be testing
monitoring to kind of learn from that to
establish your feedback in between user
acceptance testing and continuous
delivery infrastructure to learn from
kind of user focused functional testing
youtube or specifications for the
behavior of the system and on the inside
of the loop we use kind of test-driven
development and the continuous
integration infrastructure to learn from
that and all of these things that you
know you've got these different levels
of feedback some I think I believe that
I can make a reasonably compelling
argument for continuous delivery as a
rational sensible approach to overcome
some of those fallibilities that we all
share as a species in a few know in a
few minutes I think I can I think I can
make that case the problem is is that
you've got to be good at an awful lot of
things you've got to treat me seriously
you've got to this is a difficult
problem and any for anybody that sells
your tools or consultancy us books or
anything that tries to make it easy
software engineering for dummies or
whatever else it's not for dummies this
is genuinely hard stuff we should if
we're not thinking hard we're not doing
it right if we're not thinking hard
we're not we're missing the things that
will come and bite us there's more
dimensions to that the feedback doesn't
exist just in the technical domain it's
about the way that teams work it's about
establishing feedback loops in teams
using retrospectives to learn and adapt
and modify our processes using using
story feedback in in terms we do
developing stories and checking that the
things that we're building are the right
programming to get feedback on our
design choices as we move forward these
things give us powerful insight into the
understanding when I've had a few beers
and I'm feeling slightly more more
expensive than I usually a.m. I'm tended
to talk about I think we might be on the
verge of defining what software
engineering really looks like I think
this is a real this is this is a this is
a real application of science to our
problems and the good news is that it
works there's data in that shows that
organizations that practice these kinds
of approaches do better than those that
so my my take-home message is to think
about this be experimental this should
be the philosophy that infects our
industry this you should be where we're
looking to move our industry to start
thinking about this we don't want to
jump to conclusions we don't want to
start work based on guesses we do want
to do things we don't want to do things
because we've always done them that way
we don't want to be afraid of
experiments failing because those are
the best experiments we don't want to
assume experts know the answer if you
think I'm talking crap great go into the
experiment come back to me with the data
and I will change my mind do question
everything I think part of the skeptical
mind of assuming that you know the
answer might be wrong is a good starting
point make your first response to any
idea how can I test that whether it's a
technical challenge or a process
challenge if somebody stands up in a
retrospective and say I think our
retrospectives are going on too long I
said well okay well what could we try
well we could try this is the hypothesis
we could try this okay well how would we
know whether that had worked or not well
how retrospectives would be shorter well
you know and measure it and say what the
duration of the experiment is say okay
let's do this for one iteration and if I
retrospectives have been consistently
better for one iteration will adopt that
change and if they're not will discard
it thinking in this way should infect
the way in which we approach every
problem that faces us professionally you
want to work iterative least hope we can
learn and adapt so you want to make
changes to whatever we're doing in small
chunks because those are the lower risk
ones and we want to think about
falsifiability the skeptical mind
scientific method reproducibility peer
review I've used all of these techniques
in the software development practice
that I've employed for the last few
years and it makes a dramatic difference
in the quality of the outcome I'm going
to leave you with with with my heroes
thoughts again because I think these are
these are probably deeper than they seem
on the surface science is the belief in
the ignorance of experts the first
principle that you must not for yourself
and you're the easiest person to feel
and it doesn't matter how intelligent
you are if you guess and that guest
can't be bat backed by experimental
right we are one minute overtime and I
think I know what you're thinking I said
that there were 3 root 3 laws and I've
only talked about two of them but I hope
that this presentation has nevertheless
demonstrated all three which are and
remember I'm not trying to start a
people are crap stuff is more
complicated than you think and I think
all stuffs interesting if you look at it
thank you very much Dave you have one
question here um don't you think science
is also crappy because the people
interpreting the results are also crappy
absolutely soaked so scientists are
people too and so are also crap but but
the but science protects us from those
people I was in the philosophy I agreed
with almost everything that the guy that
was talking about the philosophy stuff
this morning was saying except it was
soccer nets science not philosophy I'm
talking about imprint the scientific
method i'm talking about the empirical
approach the four steps science has an
institution can be crap because it's run
by people we've got we have to work
deliberately hard we have to really make
an effort to try and approach things in
a more rational way science has a lot of
Defense's built in so they've got the
peer review thing built in and basically
you know a generation later somebody can
come along and debunk your ideas and
they and they will be debunked and I you
know I don't think we have those
structures in place I don't think we do
I also think that this there are simpler
lighter ways lighter weight ways in
which we can do some that one of the
wonderful advantages that we have
oversight you know over hard science is
that our experimental platforms are
largely virtual we can make up our own
at universities we can you know it you
know it's in one way it's a wonderful
idea to imagine being a site a
professional scientist and then you look
what they do day-to-day titrating stuff
or playing with Petry dishes or
something like that there's a lot of
drudgery there people people spend their
entire careers looking at the the
gametes of snails or something like that
you know oh I want more diversity than
that I can create a virtual universe
inside my software and try anything out
that I want i can i can run millions of
experiments in a few seconds that's
that's a powerful thing that's a
powerful thing to have there's there was
a gentleman at the back that raised his
hand early in the presentation
when you were measuring the reaction
time when Andy Andy movie was serving
what was your start point that the clock
when ticking it's at the moment he hits
the ball before that well it's so I was
just always I was just the points that
we to lie treats your eye so it depends
what you think matters in terms of
responding to the serve I think what
professional sportsman do is that they
interpret the body language and to get
them ahead of the game there's a
brilliant film of Cristiano Ronaldo
volleying balls taken from a corner and
they turn the lights out earlier and
earlier until the point at which they
turn the lights out just before the guy
that's crossing from the corner kicks
the ball and he still volley in the dark
total darkness he still volleys the
balls and put it into the net so they
train themselves which is another part
of this one of the things that I didn't
talk about is that you can move ideas
from system one thinking to system to
thinking by deliberate practice and
that's what professional sportsmen
really do they don't spend the 300
milliseconds thinking okay thank you