Upper School Computer Science teacher Kimberly Jans asks her class to stand up from their computers and form a line. “We’re going to learn how to quicksort,” she says. Pointing to Maryam Husain, she tells the students to line up to one side of the junior if they are taller or the other side if they are shorter. The students do so and thus demonstrate a simplified sorting algorithm used in computer programming.
While the lesson is slightly rudimentary in the complex world of programming, it’s preparing students to speak a language that is increasingly becoming part of everyday parlance. “One of the goals for our department,” says Jans, “is to give every student a chance to take a programming class. It’s a skill that will serve them well in the future.”
In order to achieve that goal, the technology department at Colorado Academy has implemented three introductory classes in Computer Science this year—“Introduction to Interactive Programming with Python,” “Introduction to Programming with Greenfoot and Robotics,” and “Introduction to Programming with Processing,” taught by Tech Director Jared Katzman, and Upper School Math teachers Charity Smith and Chris Marchetti. These classes join the current AP Computer Science classes and Advanced Topics class taught by Jans.
Designed as a launching point for students interested in taking more advanced Computer Science classes, the courses teach the basic building blocks of a programming language through game building, graphics and interactive applications. According to Jans, “once you’ve learned one computer language, it’s relatively easy to learn a second one—it’s easy to see how they have pieces in common.”
But programming in and of itself isn’t necessarily “easy.” It involves learning new syntax, as well as mastering logic and problem solving. Or as Jans puts it, it can be like learning the “complex workings of your car.”
“You know how to drive it,” she says, “but many people don’t know how it works. Once you know how it works, you see what’s happening, and you can make the technology work for you.”
“Coding has become so relevant. It’s a skill that people across many industries can benefit from because, once understood, it can enable people to solve complex problems unreachable without the use of a computer.”
And that’s what’s behind the push to teach programming in schools, a trend so ubiquitous it’s showing up in education movements across the globe like “Hour of Code,” a one-hour introduction designed to demystify computer science and show that anybody can learn the basics.
“Coding has become so relevant,” says Jans. “It’s a skill that people across many industries can benefit from because, once understood, it can enable people to solve complex problems unreachable without the use of a computer.”
The Computer Science teacher, now in her 14th year at CA, tells the story of a former student who is learning a programming language in a college Biology class.
“For those doing research, coding allows them to write software that can help solve the problems in that field,” she says. “There isn’t a job that you do anymore that doesn’t involve computers, and someone has to program those computers.
In the past, that “someone” has been predominately male—a truth Jans attributes to a social stigma surrounding false assumptions in our culture that coding is “anti social” or “nerdy.”
But that’s not the case in the intro courses, which have enrolled more than 50 students including a record number of females. It’s also not the case in Jans’ current Advanced Computer Science course as the students organize themselves according to height around Husain, who takes some time after class to explain why she became interested in programming in the first place.
“For me, it’s a lot about seeing patterns, because obviously to write code you need to figure out the algorithms for how things work, to break it down, step by step,” says Husain. “You have to be able to pick things apart and reorganize them again. It’s helped me become more organized.”
The junior says she knows she’ll use the power and potential of programming in the future.
“Computers are so widespread,” she says, “I definitely think we should start moving toward everybody having a solid understanding of how these things work.”