In these rapidly changing times, programming experience is becoming increasingly important for a growing number of jobs. Despite this, computer programming is not a required course at the secondary level, and therefore, many students graduate high school with little to no programming experience. In order to better prepare students for one of the fastest growing fields, I have researched effective methods of teaching computer programming. Drawing from this research and my own personal experiences as a student studying computer science, I have developed a unit curriculum for an introductory level computer programming class.