Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What can we learn with JavaScript Fatigue? - Fr...

What can we learn with JavaScript Fatigue? - FrontEnd United

This talk has been presented at FrontEnd United, in Utrecht - The Netherlands on 02/06/2018.

Lucas Fernandes da Costa

June 02, 2018
Tweet

More Decks by Lucas Fernandes da Costa

Other Decks in Technology

Transcript

  1. 2 PAGE NUMBER What can we learn with JavaScript Fatigue?

    github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M
  2. PAGE NUMBER REALITIES OF YOUR INDUSTRY 101 8 LUCASFCOSTA.COM Software

    solves business problems Don't Call Yourself A Programmer, And Other Career Advice - Patrick McKenzie
  3. REALITIES OF YOUR INDUSTRY 101 PAGE NUMBER LUCASFCOSTA.COM 9 You

    are not paid to write code The less code you write, the better
  4. 16 PAGE NUMBER 64% 36% Coding Design Some Experience With

    Automated Aids To The Design Of Large-Scale Reliable Software - 1975 Occurrence of Errors REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM
  5. PAGE NUMBER LUCASFCOSTA.COM 17 REALITIES OF YOUR INDUSTRY 101 In

    the NASA Apollo project about 73% of all errors were design errors. HAMILTON, M., AND ZELDIN, S. "Higher order software--a methodology for defining software,"
  6. 18 PAGE NUMBER “ Louis Srygley Without requirements or design,

    programming is the art of adding bugs to an empty text file. REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM
  7. PAGE NUMBER LUCASFCOSTA.COM 19 REALITIES OF YOUR INDUSTRY 101 Good

    design adds value faster than it adds cost. Thomas C. Gale
  8. PAGE NUMBER 21 JS Fatigue happens when people use tools

    they don't need to solve problems they don't have. REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM
  9. PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 Donald Knuth

    “ 22 "Premature optimisation is the root of all evil"
  10. PAGE NUMBER LUCASFCOSTA.COM 23 REALITIES OF YOUR INDUSTRY 101 The

    purpose of software engineering is to control complexity, not to create it. Pamela Zave
  11. PAGE NUMBER 24 REALITIES OF YOUR INDUSTRY 101 The greatest

    performance improvement of all is when a system goes from not-working to working John Ousterhout
  12. PAGE NUMBER 29 As the number of options increases, the

    costs, in time and effort, of gathering the information needed to make a good choice also increases Barry Schwartz REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM
  13. PAGE NUMBER LUCASFCOSTA.COM 31 REALITIES OF YOUR INDUSTRY 101 Creative

    Slides Presentation Your willpower is like a muscle Judges would make more favorable decisions after those breaks. After a lunch break the rates of favorable decisions immediately jumps to 65% again. Dotted lines represent food breaks In the morning we started with 65% of favorable decisions and at the end of the day this rate steadily drops to zero. As time goes by, less favorable decisions occur James Clear Image by James Clear
  14. PAGE NUMBER 32 We might not be JavaScript fatigued maybe

    we’re just decision fatigued REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM
  15. PAGE NUMBER “ 44 Abstractions are necessary to reduce the

    cognitive load of how things work so you can focus on creating. Eric Clemmons LUCASFCOSTA.COM JAVASCRIPT
  16. PAGE NUMBER 50 So much complexity in software comes from

    trying to make one thing do two things. Ryan Singer
  17. M A R K 0 3 P R E S

    E N T A T I O N PAGE NUMBER 52 Our tools are not new LUCASFCOSTA.COM
  18. PAGE NUMBER 56 These things are not new grunt npm

    webpack LUCASFCOSTA.COM JAVASCRIPT
  19. PAGE NUMBER LUCASFCOSTA.COM 60 REALITIES OF YOUR INDUSTRY 101 Every

    great developer you know got there by solving problems they were unqualified to solve until they actually did it. Patrick McKenzie
  20. PAGE NUMBER LUCASFCOSTA.COM 62 HOW TO DEAL WITH IT don’t

    be too attached to a single technology
  21. PAGE NUMBER LUCASFCOSTA.COM 65 HOW TO DEAL WITH IT A

    technical recruiter, having discovered that the ways of Unix hackers were strange to him, sought an audience with Master Foo to learn more about the Way.
  22. PAGE NUMBER LUCASFCOSTA.COM 66 HOW TO DEAL WITH IT The

    recruiter said:
 “I have observed that Unix hackers scowl or become annoyed when I ask them how many years of experience they have in a new programming language. Why is this so?”
  23. PAGE NUMBER LUCASFCOSTA.COM 67 HOW TO DEAL WITH IT Master

    Foo stood, and began to pace across the office floor. The recruiter was puzzled, and asked “What are you doing?”
  24. PAGE NUMBER LUCASFCOSTA.COM 68 HOW TO DEAL WITH IT “I

    am learning to walk,” replied Master Foo.
  25. PAGE NUMBER LUCASFCOSTA.COM 69 HOW TO DEAL WITH IT “I

    saw you walk through that door” the recruiter exclaimed “and you are not stumbling over your own feet. Obviously you already know how to walk.”
  26. PAGE NUMBER LUCASFCOSTA.COM 70 HOW TO DEAL WITH IT “Yes,

    but this floor is new to me.” replied Master Foo. Upon hearing this, the recruiter was enlightened. http://www.catb.org/esr/writings/unix-koans/recruiter.html
  27. PAGE NUMBER LUCASFCOSTA.COM 72 HOW TO DEAL WITH IT What

    I cannot create I do not understand. Richard Feynman
  28. PAGE NUMBER 77 First you learn the value of abstraction,

    then you learn the cost of abstraction, then you're ready to engineer Kent Beck LUCASFCOSTA.COM JAVASCRIPT
  29. PAGE NUMBER LUCASFCOSTA.COM 78 HOW TO DEAL WITH IT do

    things that don’t scale Paul Graham
  30. 79 PAGE NUMBER What am I? Programmer or Software Developer?

    Software Architect? Software Engineer? HOW TO DEAL WITH IT
  31. PAGE NUMBER 82 This is Barcelona as seen from the

    sky. LUCASFCOSTA.COM HOW TO DEAL WITH IT
  32. 85 PAGE NUMBER We can break things We spend more

    time designing and thinking than building We can build as many times as we want We can always change things Our build time is compile time. HOW TO DEAL WITH IT
  33. PAGE NUMBER 86 LET IT GROW ADAPT AS NEEDED Be

    a town planner. LUCASFCOSTA.COM HOW TO DEAL WITH IT
  34. PAGE NUMBER LUCASFCOSTA.COM HOW TO DEAL WITH IT “ 87

    Abstractions only work well in the right context, and the right context develops as the system develops. Sam Koblenski
  35. PAGE NUMBER LUCASFCOSTA.COM 90 HOW TO DEAL WITH IT Be

    curious. Read widely. Try new things. What people call intelligence just boils down to curiosity. Aaron Swartz
  36. PAGE NUMBER LUCASFCOSTA.COM 92 solve problems thank you L U

    C A S F C O S T A . C O M github: lucasfcosta twitter: lfernandescosta
  37. 93 PAGE NUMBER Related Material/References THANK YOU! • Don't Call

    Yourself A Programmer, And Other Career Advice (Highly Recommended)
 Patrick McKenzie
 http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-programmer/ • The Cost of Abstraction
 Sam Koblenski
 http://sam-koblenski.blogspot.com/2014/07/the-cost-of-abstraction.html • The Deep Roots of Javascript Fatigue
 Calvin French-Owen
 https://segment.com/blog/the-deep-roots-of-js-fatigue/ • JavaScript Fatigue
 Eric Clemmons
 https://medium.com/@ericclemmons/javascript-fatigue-48d4011b6fc4 • JavaScript Fatigue Fatigue - Dr. Axel Rauschmayer
 http://2ality.com/2016/02/js-fatigue-fatigue.html • JavaScript Fatigue, AMP, and Paths.js - JS Party Episode #3
 https://changelog.com/jsparty/3 Building Microservices (Book)
 Sam Newman