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

Temporarily Unbroken: Learning about Failure Be...

Avatar for Mike Sullivan Mike Sullivan
September 07, 2019

Temporarily Unbroken: Learning about Failure Before it Happens

"Every glass is temporarily unbroken" and all software has issues. Teams need to value engaging deeply with the how the tools and systems we build can fail, how to reduce the likelihood of that failure, and to make it more manageable when it does fail.

This talk introduces the "Temporarily Unbroken" mindset, how it can be used to transform the way we talk about the things we build, build them better, and support ourselves in the future.

Avatar for Mike Sullivan

Mike Sullivan

September 07, 2019

Other Decks in Technology

Transcript

  1. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 (?:(?:\"|'|\]|\}|\\|\d|(?:nan|

    Infinity|true|false|null| undefined|symbol|math)|\`|\-|\ +)+[)]*;?((?:\s|-|~|!|{}|\|\|| \+)*.*(?:.*=.*))) 3
  2. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 The

    real value of tests is not that they detect bugs in the code, but that they detect inadequacies in the methods, concentration, and skills of those who design and produce the code. - Tony Hoare 11
  3. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 So

    simple that there are obviously no deficiencies So complicated that there are no obvious deficiencies 15
  4. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 18

    More or less complex? Is it worth it? Least complex solution?
  5. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 module.exports

    = ________; function ________ (str, len, ch) { str = String(str); var i = -1; if (!ch && ch !== 0) ch = ' '; len = len - str.length; while (++i < len) { str = ch + str; } return str; } module.exports = leftpad; function leftpad (str, len, ch) { str = String(str); var i = -1; if (!ch && ch !== 0) ch = ' '; len = len - str.length; while (++i < len) { str = ch + str; } return str; } 23
  6. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 27

    Any fool can write code that a computer can understand. Good programmers write code that humans can understand. - Martin Fowler
  7. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 30

    [T]here should not be any error messages. All messages should contain explanations and offer alternative ways of proceeding from the message itself. - Donald Norman
  8. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 33

    NOTHING IS PERFECT EVERYTHING BREAKS BALANCE COMPLEXITY WITH VALUE REDUCE DEPENDENCIES INCREASE CLARITY
  9. Temporarily Unbroken Mike Sullivan Adulting.Dev | September 7th, 2019 34

    Image Credits Shattered Glass - Max Pixel Sagrada Familia - Mitya Ivanov on Unsplash Change - Ross Findon on Unsplash Value - Nick Youngson Group - Max Pixel Camera - Jeff Hopper on Unsplash Cables - John Barkiple on Unsplash Knot - Alberto Gasco on Unsplash Rocks - Sean Stratton on Unsplash Bridge - Anthony DELANOIX on Unsplash Glasses - David Travis on Unsplash Desert - Giorgio Parravicini on Unsplash