Should Computer Science Education Cover More Than Coding? Source: Mark H
President Obama wants kids to learn to code.
So much so, he’s pledged billions of dollars to teach them.
“Now we have to make sure all our kids are equipped for the jobs of the future—which means not just being able to work with computers, but developing the analytical and coding skills to power our innovation economy,” he said in his radio address on Jan. 30.
And adults are looking to learn, too. Coding academies, or “boot camps,” are cropping up across the country, promising to teach students to code in a few months or even a few weeks.
But computers are not just about coding. There’s also a lot of theory—and science—behind technology. And those theoretical concepts form the basis of much of computer science education in colleges and universities.
Lisa Singh, an associate professor at Georgetown University, stands behind that theoretical approach.
“We now need to train everybody to understand the basics of computer science,” she says, “and I don’t equate it to just coding. I equate it to principles of thinking.”
There are ways of approaching problems, for example, or of structuring data, that help students program more effectively and more thoughtfully.
If coding boot camps may downplay the theory, though, Singh admits that many university classes are heavy on it.
At Georgetown, classes in cybersecurity or data structures train computer science majors how to use mathematical proofs to solve problems and to understand the limitations of their solutions.
Singh doesn’t think that non-majors need to cover all of these concepts. But there’s a certain way of approaching computers, something she calls “algorithmic thinking,” that she thinks every student should learn. She wants to teach them to break problems down into a series of steps, an approach that requires some theoretical knowledge.
At the end of their education, she thinks students should know, “what the heck is an algorithm and why do I care about an algorithm,” she says.
| }
|