Southside High Teacher Tom Rogers: Why We Need to Promote High School AP Computer Science—Part I
I had an e-mail conversation with a computer science professor the other day about the sad state of high school Advanced Placement (AP) Computer Science participation in South Carolina. Only 214 students took the AP Computer Science exam in 2011. My classes alone accounted for over 10% of the total.
Considering that the state requires a year of computer science to graduate from high school and that AP courses boost student grade point averages, not to mention make students look good on their college applications, I'm puzzled that the state's most successful students are settling for classes like keyboarding and Microsoft apps. It's not like there are only 214 motivated students in the state; in 2011, over 18 times more students took the AP Calculus Exam.
My university professor friend explained to me that the higher rate of AP Calculus participation can be explained by the fact that college math, science, and engineering majors are all required to take calculus while only electrical engineering and computer science majors are required to take computer science courses. But, wait a minute, add up all existing mathematician, scientist, statistician, and engineering jobs, throw in physicians and surgeons and the professional level computer related jobs exceed the total by about 40% (see http://www.intuitor.com/student/ComputerMathJobDegrees.htm ).
These days, there's hardly a business, or for that matter even job, in America that doesn't involve some form of interaction with computer software. Wouldn't we want students to have some basic knowledge about how this software is created? Isn't the idea behind general education requirements to give students the broad foundation of knowledge they might need to function in society? And, in the 21st century hasn't the ability to use computer software for more than just word-processing become a requirement (see https://www.computerbasedmath.org/ )?
Even the complicated math, including calculus, done by mathematicians, scientists, and engineers is likely to be done on a sophisticated piece of software like Mathematica--software that’s essentially a high level computer programming language. The fact that many types of college majors do not require computer science should be a strong reason in itself for encouraging college bound high school students to take AP Computer Science: the high school AP course may be the only college level computer science course a college graduate gets.
My professor friend further explained that AP Statistics is increasingly popular because statistics is required by almost all college majors. I liked this, since I also teach AP Statistics. However, because I teach it, I know the College Board specifically wants AP Statistics students to be exposed to the use of statistics software packages. In the real world, most statistical analysis is done with software that, again, often resembles a high level computer programming language. In fact, statisticians have their own computer programming language called R.
I suspect the main reason more college bound high school students don’t take AP Computer Science is because, at most schools, it simply isn't offered. Computers have only been available to K-12 education for about 30 years and are only now becoming common place. It's no wonder that our education system does not yet fully reflect 21st century job market realities. Admittedly, the solutions are complex, but absent demand, not much is going to change. As a first step, parents of college bound students and the students themselves need to be requesting AP Computer Science and be asking why not, if they can't get it.