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,"
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
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
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
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
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
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.
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?”
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
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
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
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.
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
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
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
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
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
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
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
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
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
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