In another blog I sponsor, there is an ongoing discussion concerning the failure of colleges to adequately prepare students for IT jobs. One theme that has emerged is our failure to focus on problem prevention and problem solving. In the world of software development, this is a key aspect of software development. In order to develop secure software systems, we must imaging from the start all possible opportunities for breaches and misuse and then design to prevent these problems as much as possible. Similarly in database design, we need to focus on they types of errors, common or otherwise, that can result in errors often difficulty to diagnose without problem solving training. Rather than merely focusing on “how to” do things correctly, I believe we need to place far more emphasis on understanding scenarios that that cause efforts or other faults. I am now going to include problem prevention and resolution in all of my course objectives.