SlideShare a Scribd company logo
1 of 35
Download to read offline
Sacrificing the golden calf of coding…
Chris Heilmann (@codepo8) April 2018
Big mouth strikes
again…
twitter.com/codepo8/status/922380136531537921
What’s wrong with
coding?
twitter.com/stephstad/status/994340133733253120
What’s wrong with
coding?
twitter.com/JBalloonist/status/994957763154411520
nothing
null
undefined
“”
[]
false
NaN
What’s wrong with
coding?
I am worried about
the perception of
coding…
▪ Worry: automation will take away
human jobs
▪ Misconception: this is a bad thing,
not a sensible evolutionary step
towards a better society
▪ Knee-jerk reaction: everybody
needs to learn to code.
I am worried about
the perception of
coding…
▪ Huge misconception: everybody
who learns to code will have a
great, fulfilling job.
▪ Danger: people who just learned to
code will immediately build
products
▪ Arrogant assumption: what we call
coding now can never be
automated.
The “coder” of
today is the
astronaut of the 50s
The “coder” of
today is the
astronaut of the 50s
The “coder” of
today is the
astronaut of the 50s
An astronaut with
job security and no
physical demands…
▪ It is great that we have so much
enthusiasm for coding
▪ It is less exciting that it isn’t about
creating things and finding
solutions, but landing a job
▪ It is questionable if the need we
have now for coders will stay in the
very near future
▪ We’re not exempt of automation
▪ Maybe our work is following similar
paths that any other work does
<3 enthusiasm for
our work
Florian Ziegler flickr.com/photos/damndirty/41263240134
Act One:
Coding
Curiosity
When everything is
new, happiness
ensues
A smorgasbord of
offerings…
▪ Communication channels (Twitter,
Slack, Mastodon, IRC)
▪ Events/Meetups
▪ Video recordings of events
▪ Online training resources (Khan
Academy, Skillshare, Pluralsight,
Lynda.com…)
▪ Live and collaborative coding
environments (Twitch etc…)
▪ Open and extensible development
environments that teach good code
while you use them.
Peer pressure to
keep things light
and easy
▪ It is frowned upon to point out
problems to newcomers
▪ We don’t want to hear about
problems of the past that don’t
apply today
▪ A lot of best practices of the past
work towards a world of longevity
▪ But we’re OK to use and discard
software products like physical ones
We are not
“independent”
coders…
▪ It is tempting to repeat things the
community says to fit in.
▪ It is easy to apply what is touted as
great without considering the
effects – as you don’t know them.
▪ You create a lot in a short amount
of time with abstractions you have
no clue about.
▪ We have a high dependency on
tools and resources
▪ Shortcuts are tempting and feel like
innovation
Florian Ziegler flickr.com/photos/damndirty/40153024740/
Act Two:
Coding
Realities
Coding in
production
environments…
▪ End users are slow to upgrade and
do random things.
▪ Your code is an attack vector for
the bad guys
▪ There is no truth in “we will fix it
later, let’s just finish this sprint” - yet
it is very common
Coding in
production
environments…
▪ Legacy code is no myth – it is a
time-sink nobody wants to take on
▪ Innovation happens often only on
the sly – asking for forgiveness is
easier than asking for permission
▪ Nothing acts like your local
machine or the perfect setup of the
teaching environment
Being a coder isn’t
all about your
coding skills
▪ It is not uncommon to be praised
for things you consider terrible
▪ Your enthusiasm can be a bad
guide when it comes to giving time
estimates
▪ Being a magical, fast problem
solver can put you on the spot
when things go wrong
▪ Being able to fix issues way down
the line will be a very important
thing – we build vulnerable systems
Photo by Florian Ziegler flickr.com/photos/damndirty/40153024740/
Andreas Dantz flickr.com/photos/szene/40193567250
Act Three:
Focusing on
outcomes
Code as craft (or
even art) is 3.62%
of what we do…
Software is a part of
day-to-day life and
needs fast delivery
Reusing components
creates predictable
outcomes
▪ Instead of knowing how to code
from scratch, it will become
increasingly important to know
what components to use
▪ Reusing code, frameworks and
libraries allows us to fix
performance, security and
compatibility issues in a central spot
▪ If we’re honest, this has happened
in production a long time ago and
a lot less innovative than we’d like it
to be.
From coder to
engineer
▪ Fast-paced products with a short
lifetime are easier to deliver when
you use already existing
components
▪ This means your skillset isn’t as
much about the underlying code,
but about what is good to use
▪ Vetting and creating reusable
components and solutions are skills
that will allow for secure and fast
turnaround
▪ This is less exciting than being a
“code warrior” or “ninja unicorn”
It may be the warriors
who get the glory. But
it's the engineers who
build societies.
– Steve Jobs
It may be the warriors
who get the glory. But
it's the engineers who
build societies.
– B'elanna Torres
Getting help from
machines…
autodraw.com
Getting help from
machines…
quickdraw.withgoogle.com
We built an initial prototype using about a dozen hand-drawn
components as training data, open source machine learning
algorithms, and a small amount of intermediary code to render
components from our design system into the browser. We were
pleasantly surprised with the result:
blog.floydhub.com/turning-design-mockups-into-code-with-deep-learning/
We built an initial prototype using about a dozen hand-drawn
components as training data, open source machine learning
algorithms, and a small amount of intermediary code to render
components from our design system into the browser. We were
pleasantly surprised with the result:
airbnb.design/sketching-interfaces
I look forward to
machines doing
repetitive code
▪ Maybe this is a good time to realise
that the CLI isn’t in 2018 what
should demand our attention
▪ Maybe it is time we concentrate on
delivering maintainable, secure
products that pay attention to our
end user’s privacy
▪ Maybe we need a different outlet
for our ego and realise that we
deliver services to the world, not
replace it.
▪ There is no Earth B and we can’t
fork humankind.
This is a good time
to be a great
example…
▪ We’re not in a good spot when it
comes to work/life separation
▪ There is a lot of demand to be like
us – as there are jobs for us
▪ It is up to us to build a healthy,
friendly and rewarding work
environment for future generations
and sideways job starters
▪ Our products aren’t niche any
more, life now depends on them
Thanks!
Chris Heilmann
Christianheilmann.com
Developer-evangelism.com
@codepo8

More Related Content

What's hot

Agile Career Development from the trenches - XP 2013 Vienna
Agile Career Development from the trenches  -  XP 2013 ViennaAgile Career Development from the trenches  -  XP 2013 Vienna
Agile Career Development from the trenches - XP 2013 ViennaIonel Condor
 
Refactoring (the brain) for developers
Refactoring (the brain) for developers Refactoring (the brain) for developers
Refactoring (the brain) for developers Ionel Condor
 
'10 Great but now Overlooked Tools' by Graham Thomas
'10 Great but now Overlooked Tools' by Graham Thomas'10 Great but now Overlooked Tools' by Graham Thomas
'10 Great but now Overlooked Tools' by Graham ThomasTEST Huddle
 
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012TEST Huddle
 
DevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsDevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsBen Hall
 
What Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignWhat Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignBen Hall
 
Learning to think "The Designer Way"
Learning to think "The Designer Way"Learning to think "The Designer Way"
Learning to think "The Designer Way"Ben Hall
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentMatt Stine
 
Open Hack Taiwan 2012 - Hacking 101
Open Hack Taiwan 2012 - Hacking 101Open Hack Taiwan 2012 - Hacking 101
Open Hack Taiwan 2012 - Hacking 101sriramiyer2007
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceRaj Lal
 

What's hot (13)

Agile Career Development from the trenches - XP 2013 Vienna
Agile Career Development from the trenches  -  XP 2013 ViennaAgile Career Development from the trenches  -  XP 2013 Vienna
Agile Career Development from the trenches - XP 2013 Vienna
 
Refactoring (the brain) for developers
Refactoring (the brain) for developers Refactoring (the brain) for developers
Refactoring (the brain) for developers
 
'10 Great but now Overlooked Tools' by Graham Thomas
'10 Great but now Overlooked Tools' by Graham Thomas'10 Great but now Overlooked Tools' by Graham Thomas
'10 Great but now Overlooked Tools' by Graham Thomas
 
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012
Graham Thomas - 10 Great but Now Overlooked Tools - EuroSTAR 2012
 
DevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsDevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable Products
 
Optimized for what
Optimized for whatOptimized for what
Optimized for what
 
The gordian knot
The gordian knotThe gordian knot
The gordian knot
 
What lies beneath
What lies beneathWhat lies beneath
What lies beneath
 
What Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignWhat Developers Need To Know About Visual Design
What Developers Need To Know About Visual Design
 
Learning to think "The Designer Way"
Learning to think "The Designer Way"Learning to think "The Designer Way"
Learning to think "The Designer Way"
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software Development
 
Open Hack Taiwan 2012 - Hacking 101
Open Hack Taiwan 2012 - Hacking 101Open Hack Taiwan 2012 - Hacking 101
Open Hack Taiwan 2012 - Hacking 101
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experience
 

Similar to Killing the golden calf of coding - We are Developers keynote

Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
Reasons to be cheerful - Fronteers 2010
Reasons to be cheerful - Fronteers 2010Reasons to be cheerful - Fronteers 2010
Reasons to be cheerful - Fronteers 2010Christian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
Big guns for small guys (reloaded)
Big guns for small guys (reloaded)Big guns for small guys (reloaded)
Big guns for small guys (reloaded)Jorge López-Lago
 
Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Wojciech Seliga
 
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Codemotion
 
Progressing JavaScript and Apps the Web way…
 Progressing JavaScript and Apps the Web way…  Progressing JavaScript and Apps the Web way…
Progressing JavaScript and Apps the Web way… Christian Heilmann
 
Supercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformSupercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformXebiaLabs
 
Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Wojciech Seliga
 
10 bezcennych lekcji dla software developera stającego się szefem firmy
10 bezcennych lekcji dla software developera stającego się szefem firmy10 bezcennych lekcji dla software developera stającego się szefem firmy
10 bezcennych lekcji dla software developera stającego się szefem firmyWojciech Seliga
 
Traversing hyper driven developpement to do great technical choices and make ...
Traversing hyper driven developpement to do great technical choices and make ...Traversing hyper driven developpement to do great technical choices and make ...
Traversing hyper driven developpement to do great technical choices and make ...Quentin Adam
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloChristian Heilmann
 
The cyber security hype cycle is upon us
The cyber security hype cycle is upon usThe cyber security hype cycle is upon us
The cyber security hype cycle is upon usJonathan Sinclair
 
From 🤦 to 🐿️
From 🤦 to 🐿️From 🤦 to 🐿️
From 🤦 to 🐿️Ori Pekelman
 
I, project manager, The rise of artificial intelligence in the world of proje...
I, project manager, The rise of artificial intelligence in the world of proje...I, project manager, The rise of artificial intelligence in the world of proje...
I, project manager, The rise of artificial intelligence in the world of proje...PMILebanonChapter
 
Building real things for real people 2009
Building real things for real people 2009Building real things for real people 2009
Building real things for real people 2009Justin Ferrell
 
Avram ODonovan Blogtalk2008
Avram ODonovan Blogtalk2008Avram ODonovan Blogtalk2008
Avram ODonovan Blogtalk2008coniecto
 
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent CerveauTheFamily
 

Similar to Killing the golden calf of coding - We are Developers keynote (20)

Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Reasons to be cheerful - Fronteers 2010
Reasons to be cheerful - Fronteers 2010Reasons to be cheerful - Fronteers 2010
Reasons to be cheerful - Fronteers 2010
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Big guns for small guys (reloaded)
Big guns for small guys (reloaded)Big guns for small guys (reloaded)
Big guns for small guys (reloaded)
 
Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...
 
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
 
Progressing JavaScript and Apps the Web way…
 Progressing JavaScript and Apps the Web way…  Progressing JavaScript and Apps the Web way…
Progressing JavaScript and Apps the Web way…
 
Supercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformSupercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps Platform
 
Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...
 
10 bezcennych lekcji dla software developera stającego się szefem firmy
10 bezcennych lekcji dla software developera stającego się szefem firmy10 bezcennych lekcji dla software developera stającego się szefem firmy
10 bezcennych lekcji dla software developera stającego się szefem firmy
 
Traversing hyper driven developpement to do great technical choices and make ...
Traversing hyper driven developpement to do great technical choices and make ...Traversing hyper driven developpement to do great technical choices and make ...
Traversing hyper driven developpement to do great technical choices and make ...
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
The cyber security hype cycle is upon us
The cyber security hype cycle is upon usThe cyber security hype cycle is upon us
The cyber security hype cycle is upon us
 
From 🤦 to 🐿️
From 🤦 to 🐿️From 🤦 to 🐿️
From 🤦 to 🐿️
 
I, project manager, The rise of artificial intelligence in the world of proje...
I, project manager, The rise of artificial intelligence in the world of proje...I, project manager, The rise of artificial intelligence in the world of proje...
I, project manager, The rise of artificial intelligence in the world of proje...
 
Building real things for real people 2009
Building real things for real people 2009Building real things for real people 2009
Building real things for real people 2009
 
Hinting at a better web
Hinting at a better webHinting at a better web
Hinting at a better web
 
Binary crosswords
Binary crosswordsBinary crosswords
Binary crosswords
 
Avram ODonovan Blogtalk2008
Avram ODonovan Blogtalk2008Avram ODonovan Blogtalk2008
Avram ODonovan Blogtalk2008
 
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
 

More from Christian Heilmann

Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Christian Heilmann
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilegeChristian Heilmann
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandChristian Heilmann
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilegeChristian Heilmann
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerChristian Heilmann
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachChristian Heilmann
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsChristian Heilmann
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansChristian Heilmann
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Christian Heilmann
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlChristian Heilmann
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Christian Heilmann
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)Christian Heilmann
 
Breaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfBreaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfChristian Heilmann
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Christian Heilmann
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftChristian Heilmann
 
The Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for HumansThe Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for HumansChristian Heilmann
 
The Progressive Web and its New Challenges - Confoo Montréal 2017
The Progressive Web and its New Challenges - Confoo Montréal 2017The Progressive Web and its New Challenges - Confoo Montréal 2017
The Progressive Web and its New Challenges - Confoo Montréal 2017Christian Heilmann
 

More from Christian Heilmann (20)

Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilege
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays Finland
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilege
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developer
 
Taking the P out of PWA
Taking the P out of PWATaking the P out of PWA
Taking the P out of PWA
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReach
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worlds
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humans
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. Control
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)
 
Breaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfBreaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconf
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and Microsoft
 
Supercharging Public Speaking
Supercharging Public SpeakingSupercharging Public Speaking
Supercharging Public Speaking
 
The Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for HumansThe Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for Humans
 
The Progressive Web and its New Challenges - Confoo Montréal 2017
The Progressive Web and its New Challenges - Confoo Montréal 2017The Progressive Web and its New Challenges - Confoo Montréal 2017
The Progressive Web and its New Challenges - Confoo Montréal 2017
 

Recently uploaded

Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)cama23
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 

Recently uploaded (20)

Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 

Killing the golden calf of coding - We are Developers keynote

  • 1. Sacrificing the golden calf of coding… Chris Heilmann (@codepo8) April 2018
  • 6. I am worried about the perception of coding… ▪ Worry: automation will take away human jobs ▪ Misconception: this is a bad thing, not a sensible evolutionary step towards a better society ▪ Knee-jerk reaction: everybody needs to learn to code.
  • 7. I am worried about the perception of coding… ▪ Huge misconception: everybody who learns to code will have a great, fulfilling job. ▪ Danger: people who just learned to code will immediately build products ▪ Arrogant assumption: what we call coding now can never be automated.
  • 8. The “coder” of today is the astronaut of the 50s
  • 9. The “coder” of today is the astronaut of the 50s
  • 10. The “coder” of today is the astronaut of the 50s
  • 11. An astronaut with job security and no physical demands…
  • 12. ▪ It is great that we have so much enthusiasm for coding ▪ It is less exciting that it isn’t about creating things and finding solutions, but landing a job ▪ It is questionable if the need we have now for coders will stay in the very near future ▪ We’re not exempt of automation ▪ Maybe our work is following similar paths that any other work does <3 enthusiasm for our work
  • 14. When everything is new, happiness ensues
  • 15. A smorgasbord of offerings… ▪ Communication channels (Twitter, Slack, Mastodon, IRC) ▪ Events/Meetups ▪ Video recordings of events ▪ Online training resources (Khan Academy, Skillshare, Pluralsight, Lynda.com…) ▪ Live and collaborative coding environments (Twitch etc…) ▪ Open and extensible development environments that teach good code while you use them.
  • 16. Peer pressure to keep things light and easy ▪ It is frowned upon to point out problems to newcomers ▪ We don’t want to hear about problems of the past that don’t apply today ▪ A lot of best practices of the past work towards a world of longevity ▪ But we’re OK to use and discard software products like physical ones
  • 17. We are not “independent” coders… ▪ It is tempting to repeat things the community says to fit in. ▪ It is easy to apply what is touted as great without considering the effects – as you don’t know them. ▪ You create a lot in a short amount of time with abstractions you have no clue about. ▪ We have a high dependency on tools and resources ▪ Shortcuts are tempting and feel like innovation
  • 19. Coding in production environments… ▪ End users are slow to upgrade and do random things. ▪ Your code is an attack vector for the bad guys ▪ There is no truth in “we will fix it later, let’s just finish this sprint” - yet it is very common
  • 20. Coding in production environments… ▪ Legacy code is no myth – it is a time-sink nobody wants to take on ▪ Innovation happens often only on the sly – asking for forgiveness is easier than asking for permission ▪ Nothing acts like your local machine or the perfect setup of the teaching environment
  • 21. Being a coder isn’t all about your coding skills ▪ It is not uncommon to be praised for things you consider terrible ▪ Your enthusiasm can be a bad guide when it comes to giving time estimates ▪ Being a magical, fast problem solver can put you on the spot when things go wrong ▪ Being able to fix issues way down the line will be a very important thing – we build vulnerable systems
  • 22. Photo by Florian Ziegler flickr.com/photos/damndirty/40153024740/ Andreas Dantz flickr.com/photos/szene/40193567250 Act Three: Focusing on outcomes
  • 23. Code as craft (or even art) is 3.62% of what we do…
  • 24. Software is a part of day-to-day life and needs fast delivery
  • 25. Reusing components creates predictable outcomes ▪ Instead of knowing how to code from scratch, it will become increasingly important to know what components to use ▪ Reusing code, frameworks and libraries allows us to fix performance, security and compatibility issues in a central spot ▪ If we’re honest, this has happened in production a long time ago and a lot less innovative than we’d like it to be.
  • 26. From coder to engineer ▪ Fast-paced products with a short lifetime are easier to deliver when you use already existing components ▪ This means your skillset isn’t as much about the underlying code, but about what is good to use ▪ Vetting and creating reusable components and solutions are skills that will allow for secure and fast turnaround ▪ This is less exciting than being a “code warrior” or “ninja unicorn”
  • 27. It may be the warriors who get the glory. But it's the engineers who build societies. – Steve Jobs
  • 28. It may be the warriors who get the glory. But it's the engineers who build societies. – B'elanna Torres
  • 31. We built an initial prototype using about a dozen hand-drawn components as training data, open source machine learning algorithms, and a small amount of intermediary code to render components from our design system into the browser. We were pleasantly surprised with the result: blog.floydhub.com/turning-design-mockups-into-code-with-deep-learning/
  • 32. We built an initial prototype using about a dozen hand-drawn components as training data, open source machine learning algorithms, and a small amount of intermediary code to render components from our design system into the browser. We were pleasantly surprised with the result: airbnb.design/sketching-interfaces
  • 33. I look forward to machines doing repetitive code ▪ Maybe this is a good time to realise that the CLI isn’t in 2018 what should demand our attention ▪ Maybe it is time we concentrate on delivering maintainable, secure products that pay attention to our end user’s privacy ▪ Maybe we need a different outlet for our ego and realise that we deliver services to the world, not replace it. ▪ There is no Earth B and we can’t fork humankind.
  • 34. This is a good time to be a great example… ▪ We’re not in a good spot when it comes to work/life separation ▪ There is a lot of demand to be like us – as there are jobs for us ▪ It is up to us to build a healthy, friendly and rewarding work environment for future generations and sideways job starters ▪ Our products aren’t niche any more, life now depends on them