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

What can possibly Go wrong?

What can possibly Go wrong?

Developing software is a lot of fun, especially when we don’t have to deal with all the uncertainties of life. Hardware failures, software bugs, mischievous users (or users in general) providing bad input - there are a million things that can go wrong within our beautiful products. In this talk, we are exploring how to deal with those problems efficiently while keeping our code clean. The focus will be on Golang and Python; however, we will also touch on other languages (e.g. Java).

Avatar for Kiril Vuchkov

Kiril Vuchkov

November 07, 2019

Other Decks in Programming

Transcript

  1. If a client cannot do anything to recover from the

    exception, make it an unchecked exception. https://docs.oracle.com/javase/tutorial/essential/exceptions/runtime.html
  2. Why … did it happen What … happened? Where …

    in the code did it happen? The 6 W’s Who … was affected? When … did it happen? How … to fix it?
  3. Error values in Go aren’t special, they are just values

    like any other, and so you have the entire language at your disposal. Rob Pike @ Gophercon 2014
  4. Conclusion ➔ Part of the code ➔ Part of the

    design ➔ Part of the domain