Last year, the World Economic Forum published “New Vision for Education,” which outlined six foundational literacies that every student should know in order to thrive. One of those literacies is identified as Information and Communications Technology, which includes computer programming.
The federal government is encouraging states to teach computer programming with the recently announced Computer Science for All initiative. Texas and Arkansas already have requirements to offer computer science in high school. And cities such as New York, San Francisco and Chicago are requiring computer science be taught at the local level.
Plus, in a recent Gallup poll sponsored by Google, nine in 10 parents surveyed say that offering opportunities to learn computer science is a good use of resources, and just as many parents want their child to learn more computer science in the future.
Language is a method of communicating that has structure, syntax, rules and conventions. Computer programming easily meets this definition. Computer programming may not be human-to-human communication, but it does provide a way for humans to communicate with machines in a structured way. Computer programming is not a spoken language, but neither is American Sign Language nor Latin in most cases.
Is computer programming a foreign language, though? That’s where it gets tricky. If foreign means “geographically outside of one’s country” – and this is likely the definition that most people think about when foreign language is mentioned in education – then no, computer programming is not a foreign world language. But then again, neither is American Sign Language, and that is generally accepted to be a foreign language in U.S. schools.
If foreign means strange and unfamiliar, then indeed, computer programming may be strange and unfamiliar for some students and would therefore be considered a foreign language.
My recommendation is to give high school students the choice for their graduation requirement. Let them choose a traditional foreign world language such as Spanish, or a computer programming language such as Java, to fulfill their graduation requirement. Just like we let them choose art, band, choir, dance or theater to satisfy a graduation requirement.
The education system resists change, and for the adults in the system there are emotional connections with the current graduation requirements, so we need to be careful about the words we use. That’s why in Texas the high school graduation requirement is not for a foreign language, but rather for a “language other than English,” and in Oklahoma it is for “foreign language or computer technology.”
Let’s stop the debate about how we label computer programming and focus on how we enable more students to learn this valuable skill. And who knows, in a generation or two, technology and globalization may make communicating around the world effortless.
Hal Speed is the founder and chair of the Texas Alliance for Computer Science Education (TACSE) and can be reached on Twitter @HalSpeed.