“Approximately 90% of high schools in the U.S. do not teach computer programming in the classroom. The average salary for a computer programmer is about $80,000 with enough job market need to stay viable for the foreseeable future. This article by Ian Quillen at MindShift lists the valuable skills and attitudes explored through the study of computer programming. ”
If your local school system offers computer science courses, chances are those courses are electives that won’t count toward core science or mathematics credit. The implicit message is that, while those skills may prove important for some students’ futures, they aren’t as transferable to a wide range of occupations as, say, Algebra 2 or Biology.
But students like Sam Blazes and Wilfried Hounyo, two winners in the 2012 National STEM Video Game Challenge, say they see their passion for computer programming is potentially leading them into a wide range of future professions.
“There’s no specific place you can plan on going because there are so many different things you can do with programming,” Blazes told an audience during a panel discussion at The Atlanticmagazine’s Technologies in Education Forum earlier this month. “You can do pretty much anything with it that you can program.”
That’s because computer programming is a study of languages more than of technology or mechanics. And command of those languages allows programmers to control the functionality of anything that is driven by a computer.
For example, Blazes and Hounyo, both now high school students in the Washington, D.C. area, each won acclaim for helping to design educational video games. But they both said they initiallyembraced programming through school robotics clubs, where students not only build robots, but work to write code that can control robots’ movements and reactions. And as Blazes pointed out, the same skills could also be used for a wide range of career purposes, such as constructing meteorological simulations, making financial predictions, or creating personalized online learning curricula.
Yet in most secondary educational settings, programming is treated as a primarily technological pursuit with a far narrower potential application. One reason may be a simple lack of community exposure, said U.S. Sen. Amy Klobuchar (D-Minn.) in a separate conversation at the May 15 event.
“It’s really easy in a town like Rochester, Minn., where you can see you can get a two-year degree (in computer science) and you can get a job at IBM or (the) Mayo” Clinic nearby,” said Klobuchar, referencing one industrial town in her state where there is widespread need for employees with programming ability. “They see a connection. That doesn’t happen all the time with inner city kids or kids in small towns.”
“It’s something that I can sort of do and have fun and work on, and I can feel a sort of sense of accomplishment when I start working on stuff and even finish something.”
Blazes and Hounyo say they have experienced a range of academic and extra-curricular benefits as a result of their pursuit of programming:
1. SUBJECT MASTERY
A primary use of programming is to lead a user through the acquisition of knowledge, whether it’s through a traditional lesson or an educational game like those created by Blazes and Hounyo. To lead a user through a range of possible options requires a coder to understand all those options and their implications. Blazes, for example, had to master the basic principals of genetics before creating his game, while Hounyo’s team had to learn about the principals of electricity.
2. SYSTEMS THINKING
Whether writing code to lead a player through a game or a robot up a pyramid, the programming process requires an understanding of how possible inputs and outcomes effect one another. Further, as students move from their first programming language to others, they also learn what organizational elements are universal and what elements may be specific to a particular coding language.
“They’re all sort of the same grammatical structures, and there are sort of different dialects, key words, or quirks to them that you sort of have to learn,” Blazes said of the coding languages he’s learned.
Most programming projects are multiple-person efforts because the pursuit lends itself well to specialization. For example, if a group of students are creating an educational game, one may have a firmer grasp of the subject matter, while another may be the head coder, and the third may be the visual artist. Some students are actually drawn into programming because of collaborative environments.
“I joined my school robotics team, and we did an awesome first season, and I got hooked to robotics ever since,” Hounyo said. “There are students and mentors working together, and they program the robot to do different tasks, from basic to higher levels.”
Both Blazes and Hounyo pursued programming out of their own interest, and suggested not all of their school classmates would be engaged by a formal computer programming education. But they also said the constructive nature of programming allows students who are passionate about it to harness that interest and take it as far as they might dare.
“Programming is fun to me,” Blazes said. “It’s something that I can sort of do and have fun and work on, and I can feel a sort of sense of accomplishment when I start working on stuff and even finish something.”