Slide 1

Slide 1 text

1 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

Slide 2

Slide 2 text

2 PAGE NUMBER github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 3

Slide 3 text

PAGE NUMBER 3 github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 4

Slide 4 text

PAGE NUMBER 4 github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 5

Slide 5 text

5 PAGE NUMBER github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 6

Slide 6 text

PAGE NUMBER 6 This talk is not “hardcore” github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 7

Slide 7 text

PAGE NUMBER 7 This talk is not “hardcore” •No data structures github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 8

Slide 8 text

PAGE NUMBER 8 This talk is not “hardcore” •No data structures •No fancy algorithms github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 9

Slide 9 text

PAGE NUMBER 9 This talk is not “hardcore” •No data structures •No fancy algorithms •No math github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M

Slide 10

Slide 10 text

PAGE NUMBER 10 = github: lucasfcosta twitter: lfernandescosta L U C A S F C O S T A . C O M This talk is about making decisions.

Slide 11

Slide 11 text

PAGE NUMBER 11 LUCASFCOSTA.COM

Slide 12

Slide 12 text

PAGE NUMBER 12 Realities of your industry 101

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

REALITIES OF YOUR INDUSTRY 101 PAGE NUMBER LUCASFCOSTA.COM 14 You are not paid to write code The less code you write, the better

Slide 15

Slide 15 text

PAGE NUMBER 15 You’re in the business of unemploying people. Patrick McKenzie REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 16

Slide 16 text

PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 16 Technology is not a goal

Slide 17

Slide 17 text

PAGE NUMBER LUCASFCOSTA.COM 17 REALITIES OF YOUR INDUSTRY 101 versus Revenue Cost All that matters™

Slide 18

Slide 18 text

PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 18

Slide 19

Slide 19 text

PAGE NUMBER 19 Realities of your industry 101 REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 20

Slide 20 text

PAGE NUMBER 20 Realities of your industry 101 REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 21

Slide 21 text

PAGE NUMBER 21 Realities of capitalism 101 REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 22

Slide 22 text

22 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

Slide 23

Slide 23 text

PAGE NUMBER LUCASFCOSTA.COM 23 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,"

Slide 24

Slide 24 text

24 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

Slide 25

Slide 25 text

PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 25 JS These things exist to solve problems.

Slide 26

Slide 26 text

PAGE NUMBER 26 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

Slide 27

Slide 27 text

PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 Donald Knuth “ 27 "Premature optimization is the root of all evil"

Slide 28

Slide 28 text

PAGE NUMBER 28 REALITIES OF YOUR INDUSTRY 101 The greatest performance improvement of all is when a system goes from not-working to working John Ousterhout

Slide 29

Slide 29 text

PAGE NUMBER 29 Fancy algorithms are slow when n is small and n is usually small. Rob Pike REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 30

Slide 30 text

PAGE NUMBER LUCASFCOSTA.COM REALITIES OF YOUR INDUSTRY 101 30 Remember this?

Slide 31

Slide 31 text

PAGE NUMBER LUCASFCOSTA.COM 31 REALITIES OF YOUR INDUSTRY 101 analysis paralysis

Slide 32

Slide 32 text

PAGE NUMBER LUCASFCOSTA.COM 32 REALITIES OF YOUR INDUSTRY 101 analysis paralysis

Slide 33

Slide 33 text

PAGE NUMBER 33 More choices
 Less satisfaction REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 34

Slide 34 text

PAGE NUMBER 34 As the number of options increases, the costs, in time and effort, of gathering the information needed to make a good choice also increase Barry Schwartz REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 35

Slide 35 text

PAGE NUMBER 35 Have you ever wondered why surprise box subscriptions are so popular nowadays? REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 36

Slide 36 text

PAGE NUMBER 36 Our willpower is limited REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 37

Slide 37 text

PAGE NUMBER LUCASFCOSTA.COM 37 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

Slide 38

Slide 38 text

PAGE NUMBER 38 We might not be JavaScript fatigued maybe we’re just decision fatigued REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 39

Slide 39 text

PAGE NUMBER 39 JavaScript REALITIES OF YOUR INDUSTRY 101 LUCASFCOSTA.COM

Slide 40

Slide 40 text

PAGE NUMBER 40 A bunch of impressive numbers™ LUCASFCOSTA.COM JAVASCRIPT

Slide 41

Slide 41 text

PAGE NUMBER LUCASFCOSTA.COM JAVASCRIPT 41 packages on

Slide 42

Slide 42 text

PAGE NUMBER LUCASFCOSTA.COM JAVASCRIPT 42 520,121 packages on

Slide 43

Slide 43 text

PAGE NUMBER LUCASFCOSTA.COM JAVASCRIPT 43 ~494 packages a day

Slide 44

Slide 44 text

PAGE NUMBER LUCASFCOSTA.COM JAVASCRIPT 44 400 a month Birth Rate in Florianópolis

Slide 45

Slide 45 text

PAGE NUMBER 45 LUCASFCOSTA.COM JAVASCRIPT

Slide 46

Slide 46 text

PAGE NUMBER 46 ? But how did that happen? JAVASCRIPT LUCASFCOSTA.COM

Slide 47

Slide 47 text

JAVASCRIPT PAGE NUMBER 47 The History Of JavaScript LUCASFCOSTA.COM

Slide 48

Slide 48 text

PAGE NUMBER 48 1992 THE JOURNEY BEGINS A company called Nombas started creating a language called C-minus-minus (CMM) 1. As the popularity of Netscape grew, they developed a version that could be embedded into webpages (“Espresso Pages”) 2. Cmm was renamed to ScriptEase JAVASCRIPT LUCASFCOSTA.COM

Slide 49

Slide 49 text

PAGE NUMBER 49 1995 A WILD JAVASCRIPT APPEARED JavaScript was created in 10 days 1. It aimed to handle input validation on the client-save and save round-trips 2. Since then, JavaScript became a must-have 3. JAVASCRIPT LUCASFCOSTA.COM

Slide 50

Slide 50 text

PAGE NUMBER 50 1995 THINGS GET COMPLICATED Microsoft releases Internet Explorer 3.0 with JScript 1. We now have 3 different scripting languages available: 2. ScriptEase JavaScript JScript JAVASCRIPT LUCASFCOSTA.COM

Slide 51

Slide 51 text

PAGE NUMBER 51 1997 FINALLY WE GET A STANDARD A proposal was submitted to ECMA 1. Technical Committee #39 (TC39) was assigned for: 2. Standardization of the general purpose, cross platform, vendor- neutral programming language ECMAScript. JAVASCRIPT LUCASFCOSTA.COM

Slide 52

Slide 52 text

PAGE NUMBER 52 ECMAScript then became the basis for all JavaScript implementations JAVASCRIPT LUCASFCOSTA.COM LUCASFCOSTA.COM

Slide 53

Slide 53 text

PAGE NUMBER 53 ES1 1997 ES2 1998 ES3 1999 ES4 2008 (CANCELLED) ES5 2009 ES6 2015 JAVASCRIPT LUCASFCOSTA.COM

Slide 54

Slide 54 text

PAGE NUMBER JAVASCRIPT 54 14.88% Safari 54.89% Chrome 5.9% Firefox 4% Opera 7.43% UC Browser 3.69% IE Browser Market Share source: http://gs.statcounter.com/browser-market-share LUCASFCOSTA.COM

Slide 55

Slide 55 text

JAVASCRIPT PAGE NUMBER LUCASFCOSTA.COM 55 Transpilers

Slide 56

Slide 56 text

JAVASCRIPT PAGE NUMBER LUCASFCOSTA.COM 56 Module Bundlers

Slide 57

Slide 57 text

JAVASCRIPT PAGE NUMBER LUCASFCOSTA.COM 57 Front-end Frameworks

Slide 58

Slide 58 text

PAGE NUMBER “ 58 Abstractions are necessary to reduce the cognitive load of how things work so you can focus on creating. Eric Clemmons LUCASFCOSTA.COM JAVASCRIPT

Slide 59

Slide 59 text

PAGE NUMBER 59 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

Slide 60

Slide 60 text

PAGE NUMBER 60 The web platform moves too fast LUCASFCOSTA.COM JAVASCRIPT

Slide 61

Slide 61 text

PAGE NUMBER 61 More tools mean more choices LUCASFCOSTA.COM JAVASCRIPT

Slide 62

Slide 62 text

PAGE NUMBER 62 Natural Selection LUCASFCOSTA.COM JAVASCRIPT

Slide 63

Slide 63 text

PAGE NUMBER JAVASCRIPT LUCASFCOSTA.COM 63 Good programmers know what to write. Eric. S. Raymond Great ones know what to rewrite (and reuse).

Slide 64

Slide 64 text

PAGE NUMBER 64 The Unix Philosophy JAVASCRIPT LUCASFCOSTA.COM

Slide 65

Slide 65 text

PAGE NUMBER LUCASFCOSTA.COM 65 JAVASCRIPT Do one thing, and do it well.

Slide 66

Slide 66 text

PAGE NUMBER LUCASFCOSTA.COM 66 Do one thing, and do it well. JAVASCRIPT

Slide 67

Slide 67 text

PAGE NUMBER LUCASFCOSTA.COM 67 JAVASCRIPT Write programs that work together.

Slide 68

Slide 68 text

M A R K 0 3 P R E S E N T A T I O N PAGE NUMBER 68 Our tools are not new LUCASFCOSTA.COM

Slide 69

Slide 69 text

PAGE NUMBER 69 These things are not new LUCASFCOSTA.COM JAVASCRIPT

Slide 70

Slide 70 text

PAGE NUMBER 70 These things are not new LUCASFCOSTA.COM JAVASCRIPT E4X JSX

Slide 71

Slide 71 text

PAGE NUMBER 71 These things are not new LUCASFCOSTA.COM JAVASCRIPT

Slide 72

Slide 72 text

PAGE NUMBER 72 These things are not new grunt npm webpack LUCASFCOSTA.COM JAVASCRIPT

Slide 73

Slide 73 text

PAGE NUMBER 73 These things are not new LUCASFCOSTA.COM JAVASCRIPT Symbian
 WRT

Slide 74

Slide 74 text

PAGE NUMBER 74 How to deal with it

Slide 75

Slide 75 text

PAGE NUMBER LUCASFCOSTA.COM 75 HOW TO DEAL WITH IT you don’t need to know everything

Slide 76

Slide 76 text

PAGE NUMBER LUCASFCOSTA.COM 76 HOW TO DEAL WITH IT don’t be defined by your stack

Slide 77

Slide 77 text

PAGE NUMBER LUCASFCOSTA.COM 77 HOW TO DEAL WITH IT Master Foo & The Recruiter

Slide 78

Slide 78 text

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

Slide 79

Slide 79 text

PAGE NUMBER LUCASFCOSTA.COM 79 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?”

Slide 80

Slide 80 text

PAGE NUMBER LUCASFCOSTA.COM 80 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?”

Slide 81

Slide 81 text

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

Slide 82

Slide 82 text

PAGE NUMBER LUCASFCOSTA.COM 82 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.”

Slide 83

Slide 83 text

PAGE NUMBER LUCASFCOSTA.COM 83 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

Slide 84

Slide 84 text

PAGE NUMBER 84 start from the beginning HTTP CompSci
 Fundamentals HOW TO DEAL WITH IT LUCASFCOSTA.COM

Slide 85

Slide 85 text

PAGE NUMBER LUCASFCOSTA.COM 85 HOW TO DEAL WITH IT don’t be too attached to a single technology

Slide 86

Slide 86 text

PAGE NUMBER LUCASFCOSTA.COM 86 HOW TO DEAL WITH IT dig deep

Slide 87

Slide 87 text

PAGE NUMBER LUCASFCOSTA.COM 87 HOW TO DEAL WITH IT What I cannot create I do not understand. Richard Feynman

Slide 88

Slide 88 text

PAGE NUMBER LUCASFCOSTA.COM 88 HOW TO DEAL WITH IT focus on what matters

Slide 89

Slide 89 text

PAGE NUMBER LUCASFCOSTA.COM 89 HOW TO DEAL WITH IT Parkinson's law of triviality Members of an organization give disproportionate weights to trivial issues.

Slide 90

Slide 90 text

PAGE NUMBER LUCASFCOSTA.COM 90 HOW TO DEAL WITH IT a.k.a. bikeshedding

Slide 91

Slide 91 text

PAGE NUMBER LUCASFCOSTA.COM 91 HOW TO DEAL WITH IT don’t get ahead of yourself

Slide 92

Slide 92 text

PAGE NUMBER LUCASFCOSTA.COM 92 HOW TO DEAL WITH IT do things that don’t scale Paul Graham

Slide 93

Slide 93 text

PAGE NUMBER 93 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 94

Slide 94 text

PAGE NUMBER 94 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT . Create a low volume car, which would necessarily be expensive

Slide 95

Slide 95 text

PAGE NUMBER 95 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT . Create a low volume car, which would necessarily be expensive . Use that money to develop a medium volume car at a lower price

Slide 96

Slide 96 text

PAGE NUMBER 96 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT . Create a low volume car, which would necessarily be expensive . Use that money to develop a medium volume car at a lower price . Use that money to create an affordable, high volume car

Slide 97

Slide 97 text

PAGE NUMBER 97 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT . Create a low volume car, which would necessarily be expensive . Use that money to develop a medium volume car at a lower price . Use that money to create an affordable, high volume car . Provide solar power.

Slide 98

Slide 98 text

PAGE NUMBER 98 The Master Plan Tesla Roadster Tesla Model 3 Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 99

Slide 99 text

PAGE NUMBER 99 The Master Plan Tesla Roadster Tesla Model 3 Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT $ ~110,000 $ ~35,000

Slide 100

Slide 100 text

PAGE NUMBER 100 The Master Plan Tesla Roadster Tesla Model 3 Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT $ ~110,000 $ ~35,000 2,400 units sold 200,000 units reserved

Slide 101

Slide 101 text

PAGE NUMBER 101 The Master Plan Tesla Roadster Tesla Model 3 Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT $ ~110,000 $ ~35,000 2,400 units sold 200,000 units reserved ON ITS FIRST DAY

Slide 102

Slide 102 text

PAGE NUMBER 102 The Master Plan Tesla Roadster Tesla Model 3 Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT $ ~110,000 $ ~35,000 2,400 units sold 200,000 units reserved ON ITS FIRST DAY BEFORE RELEASE

Slide 103

Slide 103 text

PAGE NUMBER 103 The Master Plan Thanks Mr. Elon Musk, you are awesome LUCASFCOSTA.COM HOW TO DEAL WITH IT “Okay, but what about solar power?"

Slide 104

Slide 104 text

PAGE NUMBER LUCASFCOSTA.COM 104 HOW TO DEAL WITH IT Henrik Kniberg

Slide 105

Slide 105 text

PAGE NUMBER LUCASFCOSTA.COM 105 HOW TO DEAL WITH IT Henrik Kniberg

Slide 106

Slide 106 text

PAGE NUMBER LUCASFCOSTA.COM 106 HOW TO DEAL WITH IT Henrik Kniberg meh, that’s cliché

Slide 107

Slide 107 text

PAGE NUMBER LUCASFCOSTA.COM 107 the cathedral the bazaar HOW TO DEAL WITH IT

Slide 108

Slide 108 text

PAGE NUMBER LUCASFCOSTA.COM 108 the cathedral HOW TO DEAL WITH IT • centralized • carefully crafted by individual wizards • no beta or release before its time

Slide 109

Slide 109 text

PAGE NUMBER LUCASFCOSTA.COM 109 HOW TO DEAL WITH IT • centralized • carefully crafted by individual wizards • no beta or release before its time the bazaar • release early and often • delegate everything you can • communicate • listen to feedback

Slide 110

Slide 110 text

PAGE NUMBER 110 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT SIMPLICITY

Slide 111

Slide 111 text

PAGE NUMBER 111 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT • It is more important for the interface to be simple than the implementation. • The design must be simple, both in implementation and interface. Simplicity is the most important consideration in a design. SIMPLICITY

Slide 112

Slide 112 text

PAGE NUMBER 112 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT • It is more important for the interface to be simple than the implementation. • Incorrectness is simply not allowed • The design must be simple, both in implementation and interface. Simplicity is the most important consideration in a design. • It is slightly better to be simple than correct. CORRECTNESS

Slide 113

Slide 113 text

PAGE NUMBER 113 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT • It is more important for the interface to be simple than the implementation. • Incorrectness is simply not allowed • The design must be consistent. A design is allowed to be slightly less simple and less complete to avoid inconsistency. • The design must be simple, both in implementation and interface. Simplicity is the most important consideration in a design. • It is slightly better to be simple than correct. • The design must not be overly inconsistent. Consistency can be sacrificed for simplicity in some cases. CONSISTENCY

Slide 114

Slide 114 text

PAGE NUMBER 114 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT • It is more important for the interface to be simple than the implementation. • Incorrectness is simply not allowed • The design must be consistent. A design is allowed to be slightly less simple and less complete to avoid inconsistency. • The design must cover as many important situations as is practical. Simplicity is not allowed to overly reduce completeness. • The design must be simple, both in implementation and interface. Simplicity is the most important consideration in a design. • It is slightly better to be simple than correct. • The design must not be overly inconsistent. Consistency can be sacrificed for simplicity in some cases. • Completeness can be sacrificed in favor of any other quality. In fact, completeness must be sacrificed whenever implementation simplicity is jeopardized. COMPLETENESS

Slide 115

Slide 115 text

PAGE NUMBER 115 The Right Thing Worse is better LUCASFCOSTA.COM HOW TO DEAL WITH IT Might take forever to build • The design must be simple, both in implementation and interface. Simplicity is the most important consideration in a design. • It is slightly better to be simple than correct. • The design must not be overly inconsistent. Consistency can be sacrificed for simplicity in some cases. • Completeness can be sacrificed in favor of any other quality. In fact, completeness must be sacrificed whenever implementation simplicity is jeopardized. COMPLETENESS

Slide 116

Slide 116 text

116 PAGE NUMBER What am I? Programmer or Software Developer? Software Architect? Software Engineer? HOW TO DEAL WITH IT

Slide 117

Slide 117 text

PAGE NUMBER LUCASFCOSTA.COM 117 engineering software development HOW TO DEAL WITH IT

Slide 118

Slide 118 text

PAGE NUMBER 118 This is Barcelona. LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 119

Slide 119 text

PAGE NUMBER 119 This is Barcelona as seen from the sky. LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 120

Slide 120 text

PAGE NUMBER 120 Be a town planner LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 121

Slide 121 text

PAGE NUMBER 121 Software is flexible. Engineering is not. HOW TO DEAL WITH IT

Slide 122

Slide 122 text

122 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

Slide 123

Slide 123 text

PAGE NUMBER 123 LET IT GROW ADAPT AS NEEDED Be a town planner. LUCASFCOSTA.COM HOW TO DEAL WITH IT

Slide 124

Slide 124 text

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

Slide 125

Slide 125 text

PAGE NUMBER LUCASFCOSTA.COM 125 HOW TO DEAL WITH IT strive to be lazy

Slide 126

Slide 126 text

PAGE NUMBER LUCASFCOSTA.COM 126 HOW TO DEAL WITH IT talk to people

Slide 127

Slide 127 text

PAGE NUMBER LUCASFCOSTA.COM 127 HOW TO DEAL WITH IT Be curious. Read widely. Try new things. What people call intelligence just boils down to curiosity. Aaron Swartz

Slide 128

Slide 128 text

PAGE NUMBER LUCASFCOSTA.COM 128 HOW TO DEAL WITH IT solve problems

Slide 129

Slide 129 text

PAGE NUMBER LUCASFCOSTA.COM 129 solve problems thank you L U C A S F C O S T A . C O M github: lucasfcosta twitter: lfernandescosta

Slide 130

Slide 130 text

130 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