The Real Rules of Programming Lecture

February 26, 2010

This past Tuesday, I had the chance to go and talk to PLU's senior Computer Science Class. I was given the chance to talk about "anything technical", so I wanted to talk about what it's like in the programming world after graduation. Bjarne Stroustrup's recent column on What Should We Teach New Software Developers? Why? was an interesting read and provided a starting point to talk about the transition from college to the "Industry".

I introduced Dave's 1st Law of Programming -- "A technically perfect system that doesn't work is no good.", as well as 5 "Rules" for post-graduate work:

  • Everything you know is wrong
  • You're always responsible
  • Normalize until it's right, then optimize until it works
  • All of programming is design
  • To better understand software, you must understand people

I also talked about some things that we can from those rules

  • Be smart
  • Be faster, better, & stronger
  • Your code sucks, but that's ok
  • Evaluate, explore, and test other people's code and applications

I also introduced Dave's 2nd Law of Programming -- "Make it foolproof, and someone will make a better fool."

View the entire presentation (with jQuery slide/presentation goodness)

I want to give a special thank you to Drs Wolff and Hauser for allowing me to come and talk to their students.