Created
May 23, 2017 20:12
-
-
Save dotemacs/816831827ee7c6645ef57c852dbd6ee3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Transcription of David Nolan's talk "Idée Fixe" | |
given at GOTO Chicago on 16th May 2017 | |
Taken from here: | |
https://www.youtube.com/watch?v=lzXHMy4ewtM | |
[Music] | |
if you're in any domain where | |
problem-solving is extremely important | |
like software then you're acutely aware | |
of this story about to tell about fixing | |
software bugs which is that you sit down | |
to fix a software bug and you're like oh | |
this going to take me 15 minutes and | |
then an hour later you haven't figured | |
it out two hours later you haven't | |
figured it out four hours you're like | |
why this seems like you know you have | |
you have this notion of where the | |
problem might be but somehow it's not | |
working | |
it may be eight hours pass and finally | |
you throw your hands out there like I | |
got to talk to somebody else about this | |
problem you walk over to your colleague | |
Steph can you tap them on the shoulder | |
like just you know give me one minute | |
let me just describe what I'm seeing you | |
start describing the problem maybe they | |
maybe they even like say something like | |
ask you a question and then like a bolt | |
of lightning right it just hits you why | |
didn't you see it | |
why couldn't you see it and it really | |
wasn't completely your fault right | |
there's something about ideas fixed | |
ideas which actively obscure our ability | |
to assess alternatives and you know | |
often you could usually the way to | |
escape and we know this is to have to | |
either step outside yourself describe | |
the problem yourself or to just get | |
another opinion but I don't really want | |
to talk this talk isn't about the fixed | |
idea at the level individual it's really | |
the problem of the fixed idea on the | |
software industry at large for a culture | |
that sort of prides itself in innovation | |
and invention there's a surprising | |
amount of fixed ideas a kind of rat's | |
nest a fixed ideas and I have some you | |
know you know armchair theories about | |
why that's the case and we'll talk about | |
that and also talk a bit about how one | |
might I mean I don't know if there's a | |
solution to the problem a fixed idea but | |
I think there's a way a self-awareness | |
we can have to know that we're actually | |
inside a web the fixed ideas and to keep | |
ourselves open so that when the | |
alternative presents itself we are ready | |
to it | |
and make real progress so a little bit | |
quickly about myself I'm a software | |
developer cognate ex cognate ex is a | |
software consultancy a part of the | |
reason why I'm so fascinated about the | |
fixed idea is that caught at cognate X | |
we we basically built the company on non | |
mainstream technologies list functional | |
programming and we convinced companies | |
to use this stuff right I think the last | |
time we check about 15 of the fortune 50 | |
are one of our clients and we people pay | |
us to write lists and so how do we do | |
this right so we have to actively | |
convince people to dismantle whatever | |
sort of fixed notions they have about | |
how software development happens and | |
convince them that we have a a better | |
way one of this probably the fundamental | |
beliefs that we have a cognate text is | |
that there's a lot of incidental | |
complexity in the software industry I | |
mean you know definitely I'm not going | |
to talk about things at level of | |
business but certainly at the level of | |
managing the development process and the | |
development process itself there are | |
many fixed ideas and you know a lot of | |
our job is simply breaking those down | |
and showing people that there's a | |
different way one of the things we do a | |
cognitive effect and besides consulting | |
we also maintain you know a suite of | |
technologies that we use when we solve | |
problems the CTO is Ricky Ricky created | |
the programming language closure if you | |
haven't seen any of these talks or if | |
you don't anything about closure it's | |
okay I highly recommend it he's | |
definitely one of the definitely one of | |
the brilliant minds working in software | |
and he doesn't an incredible job | |
breaking down a lot of these fixed ideas | |
so closure is a functional list of | |
targets the JVM there's a cool neat | |
thing that rich did here right which is | |
that you know the calculus for choosing | |
technologies is rapidly changing it's | |
totally different from how it was when | |
you know this was the thing and they | |
were actively teaching it at MIT right | |
these days we want to solve problems | |
that are way harder and a lot of the | |
things that you decider you know there's | |
a certain set of libraries you want to | |
use and all this stuff so when Richard | |
key set out to create a new programming | |
language he's specifically | |
that not going to do a new interpreter a | |
new runtime a new compiler the JVM | |
exists it's huge it's not going anywhere | |
no matter how many posts people run in | |
hacker news the Java is dead it hasn't | |
happened yet it's not going to happen | |
the same is true for JavaScript | |
JavaScript simply isn't going anywhere | |
web browser is not going anywhere this | |
stuff is only getting more important if | |
you're following mobile development you | |
know you're probably aware that adoption | |
of react native is surging because to | |
date it's the only sort of like | |
reasonably excuse me efficient solution | |
for tackling sort of the heterogeneous | |
nature of the mobile landscape but | |
clojurescript is our answer there I'm | |
the lead developer of closure script I | |
work on the closure script compiler | |
which takes closure compiled to | |
JavaScript and the output that we | |
generated optimized for the Google | |
closure compiler which you may not have | |
heard of it's definitely it's probably | |
the best JavaScript of JavaScript | |
optimizing the piler in the world and we | |
directly generate output that | |
specialized for that the other thing | |
that we do at cognate X is we have a | |
product called a tonic so this is route | |
what this is actually I think one of the | |
most interesting things we mostly | |
consult but see tonic is super cool | |
because there's you know even even if | |
you talk to like a functional programmer | |
that's making an industry whether | |
they're using Oh camel or using Erlang | |
or Haskell you know there's system | |
bottoms out in an up you know update | |
in-place database whether that's post | |
press or or you know my sequel whatever | |
right so they have this beautiful world | |
everything's functional it's that | |
there's business one global mutable | |
variable in their system which they | |
can't fix and so rich Hickey I think | |
about four years ago he had this idea | |
what if we got rid of update in place | |
databases what if we kept all the | |
properties we liked about post Koretz | |
and acid style databases and we simply | |
made it not be update in place and so we | |
took a lot of the theory around purely | |
functional data structures and sort of | |
the optimized version that he did for | |
closure and said | |
let's do this on disk let's have | |
thousand way trees over key value stores | |
and we can have a very efficient | |
relational immutable database and what | |
happens like what happens to your system | |
if you no longer have an update in place | |
database right what's going to happen | |
suddenly all these things that you | |
thought were hard or not worth doing now | |
become sort of trivial activities a lot | |
of the clients that interested in our | |
technology have been wanting to have a | |
database we're auditing this customers | |
profile what last year | |
I want to I want to run a query in the | |
database this person's profile on what | |
the profile looked like last year | |
against some facts that we know today so | |
doing queries across time on doing very | |
sophisticated auditing things without | |
having to build a lot of custom | |
infrastructure around logs or whatever | |
have you | |
satanic just give this to you for free | |
so client said you know that makes it if | |
it can convince them to get rid of their | |
fixed idea about update and place | |
databases people see that there's all | |
these types of things they can do that | |
they again they'd never ever considered | |
as a possibility I'm not going to say | |
anything more about cognitive X if any | |
of these things interest you you can | |
come find me we have a website check it | |
out there's a lot of cool stuff to see | |
so where does the what you know my | |
theory about why the fixed idea is so | |
problematic in the tech industry sort of | |
stems from a very pessimistic talk that | |
CP snow gave in 1959 at Cambridge in | |
fact I would say my talk is a as an | |
update on his talk my talk again is not | |
going to end on necessarily happy note | |
so that's why you know the beers there | |
you can go join your cause in the beer | |
afterwards but CP snow he he was a | |
scientist and an author and so he was | |
acutely aware of the value of the Arts | |
and the value of the sciences and he | |
really lived with lamenting the growing | |
rift between art and science in the 20th | |
century that these two cultures which | |
historically one which they weren't that | |
different in spirit you know science is | |
looking for some objective truth right | |
in the universe that's out there | |
art is looking for some truth in the | |
subjective reality of the human | |
experience right so they're both | |
investigative disciplines and their | |
methodologies just happened to be a | |
little bit different but what he was | |
saying was that he was witnessing this | |
riff and in fact it was there was a | |
growing disinterest it's not outright | |
antagonism between these two things | |
whenever you criticize what's happening | |
you make people angry so a lot of | |
scientists were angry that he brought | |
this up the idea said you know it's not | |
happening or they're like who gives a | |
shit and I don't think that attitudes a | |
good one and it's not and it's something | |
that I think that you see in definitely | |
in many corners of the tech industry I | |
myself feel sensitive this to my | |
background is not in computer science I | |
don't have a computer science degree I | |
just happen to hack on computers when I | |
was young and then when I often got a | |
film degree and somehow loop back into | |
computers because computers are cool and | |
I like them and I found I found working | |
with them very rewarding but I witnessed | |
this divide firsthand in the American | |
education system and again I'm going to | |
rail a bit on that but I'm sure you can | |
find this problem in education system in | |
the world and one problem is that as the | |
u.s. moves to a system in which they | |
were more concerned about results right | |
what is the result like how do we how do | |
we want to find whether school is | |
working or not and the culture which is | |
obsessed with metrics and quantification | |
then you know you were going to do is | |
that you were going to focus on the math | |
and sciences and we're going to be | |
focusing on you know what is just the | |
result but coming out of a particular | |
school and this has an effect on the | |
education system and on the experience | |
of individual when I was a teenager in | |
Texas my experience was that not not one | |
time in my entire life | |
all the time I was a nice girl for | |
failures were there ever a time that | |
another advanced placement student in | |
any of my math science classes or the | |
ever safety in our class so I live in | |
our class for four years every people my | |
across our classes were either | |
quote-unquote regular students or quote | |
unquote remedial student so with the | |
three months are seeing about that is | |
that there's an absolute metric either | |
neither your either your maintain in | |
math and sciences either you know your | |
your your maintaining a 4.0 4.0 GPA and | |
go to the best schools or not right it's | |
just that this is that close hard and | |
simple but if you're doing art you know | |
why does the funny thing art is just | |
objective we already sort of notice and | |
so if you get into our to get into | |
drawing you quickly discover most of | |
your drawings aren't any good they're | |
just not any good and and the MDM and | |
the packs enjoyment you make a lot of | |
crappy drawings and once in a blue moon | |
we make a good one every now and then | |
you make a good one and that keeps you | |
in third right so we're very different | |
attitude towards failure if you if you | |
get into you guys then if you are sort | |
of in the - Sciences arts and sciences | |
and with really weird right what's weird | |
is that if you stay in the exercise you | |
excel in a really great popular class | |
where the best screw the pen gives the | |
real world but there are no right | |
answers there no right answers remember | |
why we're nobody | |
the Socceroos gurus the punches the crap | |
that was a really explained you country | |
could we come to a conference and be | |
like they were doing this crap kind of | |
cure you should really so so there's a | |
river disconnect or disconnect between | |
reality and the way that we train people | |
to get into the software industry so I | |
think I think there's certainly a | |
problem there we'll talk a bit more | |
about that in a second but there's also | |
a problem which in that I think you know | |
science is beautiful but there's a sort | |
of a positivist positivism it's a | |
science and it's natural right science | |
is constantly discovering things it's | |
really incredible I changed my sides a | |
bit today to make it like a | |
geographically relevant this is a image | |
of the Chicago World's Fair 1896 | |
I think 42 countries are present many | |
many new tech startups where they're | |
showing off their new things I think | |
this is the first time anybody ever saw | |
Oh like a escalator or sliding walkway I | |
guess lots of new inching electronic | |
devices I think Tesla was there with the | |
presentation but really exciting right | |
the Industrial Revolution but this is | |
sort of you know the problem is that | |
okay that's cool there is a youth tow | |
peon thing in science but it always has | |
to be counterbalanced by the reality of | |
the cost of that thing right people only | |
think I mean it's easy to get caught up | |
in the dream and forget those all those | |
are dark side so 10 years later somebody | |
wrote about the the dark effects of the | |
Industrial Revolution in Chicago and | |
that was Upton Sinclair when you write | |
about the jungle right this was written | |
ten years after the World's Fair and it | |
was about the horrible conditions which | |
immigrants work in the industrial sort | |
of meat processing district in Chicago | |
which actually led to a whole slew of | |
regular regulatory changes around food | |
processing and I think this I think is | |
extremely important as good as it may | |
feel everything is actually not awesome | |
that there are a lot of downsides to any | |
choices that we make and we'll get to | |
that more in a bit but | |
you know so how do we how do we maintain | |
a balance of perspective this is | |
actually harder than it sounds so Alan | |
Kay sort of the Godfather of Audrey | |
computing and a bunch of other cool | |
things this readeth many great quotes I | |
like this one a change in perspective is | |
worth 80 IQ points and I think it's | |
worth way more than that but the change | |
the change in your perspective is | |
incredibly difficult and I don't have an | |
easy answer to this problem he gave a | |
talk called I think a couple years ago | |
called | |
the future doesn't have to be | |
incremental he's talking about | |
innovation versus invention but he has | |
this slide that we're really stuck with | |
me which is that you know we're wired a | |
certain way right humans are wired | |
around fixed ideas the fact of the | |
matter is 80 percent of us me standing | |
in front stage I'm included in this 80 | |
percent of us you know we get our ideas | |
by a social validation right if somebody | |
tells me something I'm not even going to | |
think about it right if somebody says | |
this is good and I should do it and | |
somebody else is is good I should do it | |
and something else is it I mean like | |
well I guess I have to do it right what | |
when I adopt the idea is awesome because | |
other people | |
validate the idea they vet it and I sort | |
of take that idea on through a social | |
process without actually necessarily | |
doing my own investigation to the same | |
um this has power right because I don't | |
have to reinvent the universe to get | |
something done right there is power and | |
value to to the way that humans work in | |
this way but there's of course the dark | |
side I mean you could say all the | |
terrible things that have happened in | |
society right the wars and the horrible | |
things and you know how long it took to | |
realize that equal rights is a good idea | |
I mean it was because 80% of the | |
population we're totally fine with it | |
not being that way right it's just the | |
way that we are so this is something to | |
be aware of like you know that we we in | |
the tech industry we fit this equation | |
exactly the same way there is no | |
difference between how the rest of the | |
world works and how we work our bias is | |
to you know whatever 80% of other | |
developers say that's probably what | |
we're going to do but I'm interested in | |
you know can it you know what what are | |
the | |
one of the ways and processes in which | |
we can at least if there's a good | |
positive change that we can make how can | |
we shift how can we shift people to the | |
lower right quadrant of this diagram | |
right I think there's a way and a lot of | |
that is learning to keep our our minds | |
open you can do this sort of it so you | |
can start an individual level like if | |
you do math and science if you're | |
probably familiar with this book how to | |
solve that's really great I mean one of | |
the best things the first thing is first | |
you have to understand the problem Alan | |
Kay has a great quip about this too | |
which is that you know if you go through | |
the math and science and you're in | |
computer science you're probably a | |
pretty good problem solver right we're | |
actually I think we know how to make | |
problem solvers how to how to get good | |
problem solvers but he points out that | |
we're not that good at finding you know | |
teaching people how to look for problems | |
right how do we find problems meaning | |
often the problems are right in front of | |
our faces but we can't see them again | |
because some fixed idea is obstructing | |
that a different book about how to solve | |
a certain type of problem which I highly | |
recommend if you've never looked at it | |
is there's a book by Betty Edwards | |
called drawing on the right side of the | |
brain when I was starting out learning | |
how to draw or teaching myself to draw | |
somebody recommend this book and I read | |
and I really loved it and what's | |
fascinating about this book is that | |
people have this fixed ideal IQ often | |
they're like like in this room you | |
probably many of you got computer | |
science degrees and you probably would | |
say if somebody said I just not good at | |
math I don't have a talent for math | |
you'd go well yeah there maybe there is | |
a thing called talent some people get it | |
really quick but you'd probably say | |
anybody can learn math there's nothing | |
special about it maybe we should use a | |
different teaching methodology with you | |
but there's no innate thing that | |
prevents people from learning | |
mathematics and you know Betty Edwards | |
did the same thing for drawing right you | |
know a lot of people say this they say | |
this like I just don't have a knack for | |
drawing I don't have a talent for | |
drawing and in this book she shows this | |
drawing of Stravinsky by Pablo Picasso | |
and she asked her students to draw it | |
somebody who'd not | |
dribble drawing they don't feel caught | |
in a drawing and of course they look at | |
this and what they'll do is they'll draw | |
a circle for the face and withdrawal | |
circles for the eyes they'll go outline | |
for the mouth and they'll draw a | |
rectangle for the body and a rectangle | |
for the arm recognized and they'll be | |
like ah see | |
I'm terrible and then she'll ask them to | |
do something very simple she'll say take | |
the drawing turn it upside down and | |
don't try to see anything at all | |
whatever lines you see just draw the | |
line and then she even asked you to do | |
even more simple exercise divide the | |
drawing into 16 squares or equal sides | |
only draw the lines you know for each | |
individual square and without fail | |
almost anybody can do this pass because | |
it's trivial and then she says turn the | |
drawing right-side up it more or less | |
looks like Picasso's original drawing so | |
what is the problem what was the problem | |
the problem was your mind you have a | |
fixed idea about already your mind has a | |
programmed idea about oh I have to draw | |
a circle for a face right that is | |
already in your mind your brain | |
intercepts it and you're just going to | |
draw a circle when really all you had to | |
do was turn to paint off for a second | |
just think about what your eye sees and | |
when your hands are that it's mostly | |
about motor coordination most artists | |
they just they have the neck that they | |
had was I'm gonna you know I'm going to | |
remove my mind from interpreting what | |
I'm seeing and I'm going to just see it | |
as it is and draw it as it is and yes it | |
takes a certain amount of leaps but she | |
points out that it's not special right | |
it's not a special quality right is | |
something that can be taught there's | |
another great book about drawing by | |
nicolay DS and he has another amazing | |
point which is that you know you see | |
these people they say they can't draw | |
what does this you know sailor or place | |
a person plays golf and then what you do | |
say okay there's an object that they | |
know and you say well draw me a sailboat | |
and you tell this is a sailor and they | |
can draw it perfectly | |
all the portrait proportions will be | |
correct if you ask a person who plays | |
golf jongmyo golf club all | |
proportions will be correct and nick | |
lady says well the reason is because you | |
think that drawing is only about seeing | |
and drawing is actually about all of | |
your senses all right you need to engage | |
all of your senses and that's how you | |
that's when you know you can draw a | |
thing my point about this will come back | |
I often think that that the answer for | |
our problems is often right in front of | |
our faces it's right in front of our | |
faces if we simply pay attention to it | |
actually pay attention to it there's | |
another person who has a great point | |
about this just to drive at home just a | |
little bit more enough I'll point out an | |
example from science I think somebody | |
sort of knew this innately there's a | |
book called La Vie modem flaw at the | |
French book by this author George Perec | |
Donald Knuth said this is the greatest | |
French novel of the 20th century so you | |
should go read it but georges perec had | |
this idea he had this idea of the inn | |
for ordinary and his and this idea | |
pervades his novel and it's going back | |
to what I said how artists try to | |
perceive the world right things that are | |
there they try to see at see it as it | |
really is and not what the what your | |
mind may want to interpret it as through | |
fixed ideas force yourself to write down | |
what is of no interest what is most | |
obvious most common most colorless make | |
an inventory of your pockets of your bag | |
question your teaspoons and you might | |
think that's ridiculous | |
why why why would you do this this seems | |
pointless ordinary things is there any | |
truth to completely ordinary things and | |
yeah this is this is from surely must be | |
joking mr. Feinman | |
this is from his um sort of memoirs I | |
guess and there's a story of how he had | |
fallen out of love with physics because | |
you know his great talent had been | |
mostly spent for the early part of his | |
career building the atomic bomb so great | |
talent spent you know creating new ways | |
to kill lots of people at one time so | |
one can imagine he lost his interest in | |
physics is his deep interest in physics | |
but he comes back to it and he talks | |
about how he came back to it how he was | |
able to regain his love and he tells his | |
story about watching a student in the | |
cornell university cafeteria he watched | |
the students through all | |
places the air and he saw that it | |
wobbled and that the Insignia is | |
spinning around and that there was a | |
relationship between the wobble on the | |
spinning around it's like you know I | |
used to look at water coming out of a | |
faucet and that was exciting I would sit | |
down and write the equations for that it | |
was likely he took that as inspiration | |
he started writing down what he thought | |
the relationship between the wobble and | |
the spinning the Insignia and a | |
colleague came by and said what the hell | |
are you doing | |
he's like I'm trying to understand the | |
wobble of plates and the person was like | |
what possible use could that be | |
and of course Richard Feynman it turns | |
out that had deep implications for | |
physics and you it kicked off the | |
research that got him the Nobel Prize in | |
Physics it started by observing place | |
wobbling I think we you know people have | |
this notion that great ideas come from | |
you know great things but the greatest | |
ideas are actually often right there | |
it's in the most ordinary location and | |
that was sort of the philosophy sub half | |
of the talk and now I want to talk about | |
something concrete something that I | |
experienced directly so I was able I was | |
lucky enough to experience oh you can | |
change 80% of people's minds and if | |
you're paying attention yourself and you | |
know some prepping has been put in place | |
to allow it to happen so I'm going to | |
talk specifically about you my | |
experiences you I work so if you're | |
interested you work you do front-end | |
stuff you're you're you're excited about | |
it then you're probably aware of Xerox | |
PARC and the work that was done around | |
the sort of small talk and the Alto and | |
all the software they built around small | |
talk but you know this project similar | |
to the Fineman thing ah | |
Alan Kay's goal his goal was not to | |
reinvent computing or to create | |
objective programming languages or you | |
know do all that stuff | |
his goal was I want to make a dynamic | |
medium for children right | |
you wanted to make a computer that a | |
child can understand and that's what | |
kicked off the personal computing | |
revolution then Apple comes along and | |
says ok wow this is all this stuff this | |
technology that you made that was | |
supposedly just for kids this is going | |
to change everything and we're going to | |
do a different thing we're going to | |
figure out how can we take hardware that | |
cost eighty five thousand dollars and | |
people can't pay for that we're going to | |
figure out it stick into this tiny box | |
that we can sell for a couple thousand | |
dollars alright so this is a great | |
moment in computing wind right there are | |
no fixed ideas yet right Xerox PARC | |
they're doing their thing they're just | |
experimenting Apple comes along and says | |
oh my god they have all this stuff oh we | |
can't recreate everything they did like | |
you know there's all this virtual | |
machine technology all this dynamic | |
compilation we're going to focus on the | |
interactivity and the GUI and the you | |
know the bitmap screen and stick to that | |
and make this a thing you know the | |
future of computing and that's that's | |
that time that was an amazing time I | |
love that time I love reading books | |
about that time it's really cool but | |
what's fascinating is how quickly we go | |
from you know really thinking about what | |
matters right Xerox PARC really think | |
about matters Apple seeing their | |
research distilling what really matters | |
if you want to make a product high level | |
version of this research right to a | |
whole bunch of fixed ideas on computing | |
industry so when I came into doing | |
professional software development 20 | |
years later people were doing things the | |
same way as they were 25 years ago | |
so the first Xerox PARC memo on | |
model-view-controller as a pattern for | |
doing UI development was a memo right so | |
I did it and I took it as like you know | |
gospel truth MVC you I have to be the | |
way you do it because if you went to a | |
bookstore and you looked at UI UI stuff | |
would be shelf whole shelves I'm doing | |
design have to do it this way it's the | |
only way and then you know you do it for | |
five years they're like okay I get it I | |
get it it's useful | |
it works there are things I don't like I | |
see that it's easy to make a mess maybe | |
people thought about this and you go | |
back and you're like what did they say | |
when they created this and you find out | |
it was a memo there was not tablets that | |
came down the mountain somebody wrote an | |
interdepartmental memo and that was just | |
like hey this is kind of cool this is | |
probably not that good we'll fix it | |
later | |
and somehow 20 years later I'm stuck | |
with that memo right how did how did | |
this happen right it's this sort of | |
predilection for fixed ideas and some of | |
this I think is part of this is just | |
like you know we want to be right you | |
know this is a challenge right you're in | |
a business you got to make money you | |
want to be right you're an engineer you | |
want to deliver a result you want to be | |
right but we have to always balance that | |
with the fact that like there is no | |
right right there's no right there's no | |
there's no formula there's no proof | |
that's ever going to tell you what the | |
right way to the uiui program is it's | |
not going to exist it's never going to | |
exist so a funny thing happened about | |
three years ago a technology called | |
react appeared it's a much derision | |
because Facebook came on to its stage | |
and they said we solved your problem and | |
they showed a bunch of XML literals and | |
JavaScript files of people were like you | |
know it gave them the finger so it sort | |
of laying any language for about six | |
months nobody really really cared about | |
it I also was like add that seems a bit | |
weird but a good friend of mine Brandon | |
Bloom like took a closer look I said | |
actually there's some interesting stuff | |
here you should sit down and talk to | |
somebody about this like talk to | |
somebody has developed it and you know | |
screw all the market speak on the page | |
figure out what this thing actually is | |
so I was at the New York Times at the | |
time he arranged a meeting with me and | |
him we had coffee I spent about an hour | |
because I had been doing UI NBC | |
programming long enough to know know | |
what I didn't like | |
I was excited about functional | |
approaches being an alternative and so | |
react seems functional they had an | |
Augmented veneer and I was like is there | |
truly a functional mindset in the design | |
of the system and over coffee I came to | |
the conclusion yes there was it turned | |
out the original creator was a standard | |
ml okay | |
Kamel person in you know they were doing | |
NBC at Facebook doing backbone and they | |
sort of hated the spaghetti massive | |
state they'd constructed and so they did | |
react as a four-month prototype that | |
turned out that this idea had legs and | |
it was at least as fast as the backbone | |
thing even though it sounded crazy so he | |
had already gone through that I talked | |
to one of the other developers and I | |
said okay if that's what they went | |
through then maybe they're on to | |
something and then I went home and I | |
messed around with it and I wrote this | |
blog post called the future of | |
JavaScript MVC frameworks and this was | |
the most popular blog post I'd ever read | |
like 10 times more proper than all the | |
posts combined I think they were like | |
600 uploads on Hacker News like 150,000 | |
page reads like complete page reads in | |
like a week and this sort of kicked off | |
in many ways the sort of the | |
reassessment of react what was funny is | |
that I wrote this for the closure script | |
community right because I was doing | |
closure script on the side and I was | |
like we need a functional solution to | |
the UI problem functional programming we | |
like it but if we can't solve the UI | |
problem I mean what real benefit are we | |
getting from our approach and it turned | |
out I made a naive demo and | |
clojurescript | |
and I showed that the naive demo and | |
closure script is faster than the naive | |
demo in JavaScript with react and it's | |
faster than of course you know the | |
typical backbone type thing and now fast | |
forward three years later react has | |
Eclipse ember angular I mean everything | |
it clips everything so this is one of | |
those rare instances where you see a sea | |
change right so the JavaScript developer | |
that's sitting down to write a react app | |
they are they are a functional | |
programmer right when I wrote this blog | |
post I said all this dividing up your | |
state into all these objects in your in | |
your UI that's a bunch of bullshit put | |
it into one single thing you when you | |
write web services what do you do you | |
have all these web services they all | |
talk to one thing the global database | |
why should you have a different design | |
pattern just because you're programming | |
me while it doesn't make any sense | |
me maybe you read about in a book and | |
somebody thought that made sense but I | |
say no it doesn't make any sense none of | |
your other systems look like that what | |
if you just did your UI is the same way | |
you do all your the system six months | |
people thought this was too crazy but | |
within another six months Redux became | |
the de facto way to do react apps Redux | |
is a single atom app State design over | |
react so that's interesting that's food | |
for thought | |
breaking through the occasional time you | |
can break through fix ideas so I'm just | |
going to end this I have a just few more | |
slides but before I move on | |
one thing that was introduced | |
interesting to me about this is that | |
just because something is good doesn't | |
mean okay you found a good thing you | |
remove all critical thought what was | |
fascinating to me was that within two | |
years of Reax introduction people went | |
from reactor school to being reactive | |
the only way right the cargo cult thing | |
starts so quickly and I was invited to | |
the very first Facebook conference and I | |
pointed out that actually react as great | |
as it is did throughout the baby with | |
the bathwater with respect to some | |
interesting features that are possible | |
in traditional and bdc designs that are | |
not possible in react or really annoying | |
to do in react so hopefully people don't | |
just keep on keep on this trend right | |
react is not the end react is just the | |
beginning of yet some other improved | |
things and hopefully where I'm stuck on | |
this for another 30 years so I want to | |
end on a final point about the fixed | |
idea which I think has deeper | |
repercussions if you take what I said | |
earlier about the problem of the fixed | |
idea and the fact that fixed ideas are | |
very prevalent in our industry then it | |
should give you pause because there | |
we're moving into a certain kind of new | |
future which this is more of a problem | |
than is today I think it's already a | |
huge problem it'll be even more of at | |
home so if I'd shown this talk about a | |
year and a half ago you wouldn't even | |
know what this is what I'm showing you | |
right here unless you're from China | |
Korea Japan and even then you might not | |
know these are two old Korean men in the | |
park playing this game called go it's | |
about four thousand years | |
chances are you now know about it | |
because of this company probably never | |
heard of called Google they had a | |
company a sub company called deep mind | |
that's doing a lot of experimentation | |
into deep learning and reinforcement | |
learning and they had a very interesting | |
project called alphago which was secret | |
for about a year | |
as long maybe two years and then they | |
tried it on a professional and they | |
realized that they had something big | |
people have thought this moment was | |
about twenty years further out they | |
didn't think it was as close but gup-d | |
might not they were very close because | |
of the good result against a Chinese | |
professional and they decided to do the | |
match of the century | |
basically the NGO equivalent of deep | |
mind sorry deep blue cats progress was | |
deep blue and so as a undergo my mom's | |
Korean I kind of go as a child I didn't | |
have plans like 15 years ago so I'm an | |
amateur player I like it it's fun and so | |
I was able to follow along basically | |
what's going on | |
with the help of the commentary of | |
professional commentators what was | |
really cool so this is the cool part | |
about this AI stuff what was really cool | |
is that if there's a bright side to this | |
to the AI thing and I don't not talking | |
about general I mean like the type of AI | |
systems that we're probably going to | |
build next year or the year after that I | |
actually am currently on a cognate at a | |
AI consulting thing this has some | |
interesting points for the type of | |
system you might build which is that the | |
professional commentators while they | |
were watching the alphago games they | |
were constantly surprised by its moves | |
because alphago played moves that humans | |
wouldn't play because even after 4000 | |
years of optimization people had | |
developed very fixed ideas of what the | |
right move was there's all these | |
proverbs that have been passed down | |
passed down passed down about how you | |
should do a thing and alphago because of | |
the way it was trained it didn't have | |
these biases it didn't have these fixed | |
ideas and in fact it more or less kicked | |
off immediately kicked off a revolution | |
in the professional community about | |
patterns so many patterns that people | |
would have never considered before they | |
now take very seriously | |
I highlight this game because this was | |
the game the only game that he said Oh | |
won and he played moves 78 and this is | |
where alphago made a mistake because | |
alphago said there was only a 1 in | |
10,000 chance that this move would be | |
played so you would use the probability | |
to figure out should we examine the | |
variations for this move because it had | |
a finite amount of time to consider | |
things so it would give more weight to | |
things which looked more likely so it | |
didn't look at this and it made the | |
wrong move and he said Oh went on to win | |
the commentators were like you know that | |
you know they said this was like the | |
divine move and go there's this notion | |
of the move that you get to play once in | |
a lifetime that changes the flow of the | |
game and actually this is a good chance | |
that this is the last time a human | |
professional will ever be able to beat a | |
system like alphago so this was a divine | |
move this move a move this good probably | |
won't ever be played ever again not | |
between a human and a computer | |
technically what's fascinating is | |
technically this move doesn't work after | |
extensive analysis humans have | |
determined that this move shouldn't have | |
work it's just that alphago didn't look | |
at it it didn't look at it it didn't see | |
it as a viable alternative right so the | |
new version of alphago that's going to | |
be presented next month and wujin in | |
China playing against the top players | |
and the Chinese players in the world it | |
has a new algorithm an adversarial | |
algorithm in which that if alphago has a | |
few moves chat it says are very low | |
probability there's an anti alphago that | |
will double-check | |
they'll double-check that work yeah | |
right but this goes back this goes back | |
goes back when I said in the very | |
beginning when you're looking at bugs | |
right this notion of you need an | |
alternative opinion right diversity of | |
viewpoints is not it's not a nice thing | |
to have it's an imperative right how can | |
you know that you're making the right | |
thing if you don't have a counterbalance | |
so while this is a great story and I | |
think deep mind is very they're very | |
rigorous and their approach and I think | |
their choices are based on both research | |
and insight the thing that we should be | |
afraid of | |
is that most of us might not have that | |
level of insight right most of us will | |
probably will not do the right thing and | |
the systems that we build will simply be | |
a mirror of all the bad fixed ideas that | |
we have and we're simply going to put | |
those bad fixed ideas into the systems | |
that we build so this is a future that I | |
think we should be a keen ly afraid of | |
so again I you know not a happy note but | |
I hope that you have your arms is a bit | |
more critical more of a critical eye | |
change is important but in order to have | |
change you have to have an open mind and | |
you have to be able to to believe that | |
you know another world is possible | |
right but the world that we currently | |
live in with respect to how software | |
development is done is not the only one | |
and surely there are better ones that's | |
all I have is you have any questions or | |
interesting things to talk to me about | |
hit me up over a beer thank you | |
[Applause] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment