Learning how to debug
There are a lot of smart programmers coming out of college. You learn a lot of great and important things about computer science and how to be a good programmer. However one thing I think more junior developers (and even us senior) ones can always learn more about is debugging. What debugging you say? Everyone knows how to debug man, just set a break point and step through the code. Well believe it or not but a time will come when you don't have complete access or control over the code you're relying on. So debugging is a lot more then just being able stop code execution. Because of this I recommend everyone read the following blog: Using winDBG winDBG is a debugging tool that allows you to debug windows based applications (even .net ones). It's quite powerful and while not easy to use can allow you to track down exceptions/crashes/hangs in your code. I'm just starting with it myself and the learning curve is huge but I have already learned several new technique...