Coursera Course Robust Programming Basic Principles Style of programming Handle bad input Detect internal errors Fragile Code Paranoia Stupidity Dangerous implements (across calls) Can’t happen