Derek Acosta is a junior at Cristo Rey New York High School, an innovative school in Harlem where students work to finance their education. He has good grades and wants to study computer science in college. He knows this because he has tried it in high school. Derek participates in a course taught at Cristo Rey by ScriptEd volunteers. During the year long course, his second programming course at Cristo Rey, he learned the basics of web design and introductory programming. "I liked the class but I now know how hard programming is... I have a real respect for programmers."
Unfortunately, Derek's story is rare. Nationwide there are 3.3 million seniors in high school but in 2012 only 26, 000 took the AP Computer Science Test. Wouldn't it be great if students could try programming while in high school? Why aren't more high schools teaching computer science? The problem lies in three fallacies.
"Computer programming is vocational training"
People who learn about our involvement with ScriptEd often ask me if we teach it to train the students for jobs. This is a relevant question because our students work to finance their education but it misses the point. You learn about computer programming to understand whether you have an aptitude for this kind of work and to develop an appreciation for programming concepts. In this sense, programming is more akin to an Arts class or a music class. Just taking the class does not mean you need to pursue a career in the subject. I know from experience that it is difficult to find programming internships for high school students. The mind-training required in the class and the assignments will help the students in any endeavor they pursue.
"It is hard to find qualified teachers"
ScriptEd has developed a viable model where they get experts currently working as programmers to teach a defined curriculum. These teachers know the technical terms and concepts but also know how programming works in practice. ScriptEd's approach taps into a community-focused mindset inherent in the tech industry. It affords tech company employees an opportunity to contribute in a way that showcases their expertise.
"Technology is changing so fast, anything we teach them will be outdated in a few years"
This is the biggest fallacy of all. When you learn computer programming you learn how to check your work for details, how to apply logic and how to persist at a task. You also learn how to ask a good question, often in written form. Finally you learn how to collaborate because much programming today is accomplished in teams. These timeless skills and learning behaviors will endure far longer than any programming language.
There is a lot of debate about whether we as a nation need more STEM-skilled professionals. One interesting statistic that is largely being overlooked is that the majority of STEM majors leave the professions after just a few years. Yet, according to a recent Georgetown University study, over a lifetime STEM majors experience lower unemployment and higher wages in any profession they undertake. This suggests to me that, in a world that is becoming increasingly complex, the skills taught in classes like computer programming develop students in ways that help them over the long term. Isn't that what high school is all about?
December 9-15 is Computer Science Education Week. On December 11, ScriptEd will host an Hour of Code event at Harlem Village Academies High School in New York City. On December 14, ScriptEd's students will put their programming skills to the test in ScriptEd's December Hackathon.