Chapter 7. Why Is It So Hard to Learn to Program?
Most of the topics in this book—the best ways to develop software, the costs of developing software, what communications facilitate programming—revolve in some way around programmers. But it’s hard even to become a programmer in the first place. Few people try to enter the field, and even fewer succeed. In this chapter, we ask why it’s so hard to learn to program.
Whether we need to develop more programmers at this moment is a point of dispute. The United States Bureau of Labor Statistics recently predicted an enormous demand for computing professionals. According to the November 2008 report [Association 2008], the demand for “IT Professionals” from 2006–2016 will be twice the growth rate of the rest of the workforce. The updated estimate of November 2009 said: “‘Computer and mathematical’ occupations are the fastest growing occupational cluster within the fastest growing major occupational group” [Consortium 2010]. But what does “IT Professional” mean? A “computer and mathematical” occupation? The experience of many newly unemployed IT workers, especially during the current downturn, suggests that maybe there are too many programmers in the United States today [Rampell 2010].
Although it may not be clear whether we need more programmers, it is clear that many start down the path of programming and fail early. Rumors of high failure rates in introductory computing courses (typically referred to as “CS1” in reference to ...