Computer Languages: Students Need to Speak Them
Technology has changed our lives and society in innumerable ways. Computers and the software that makes them work are the common denominators of a global world. America has given birth to and enjoyed the economic benefits of the personal-computer revolution, and so it stands to reason that its schools would be in the forefront of computer-science education. Regrettably and inexplicably, this is not the case. While there is a common feeling among educators and parents that understanding how to use computers is essential, there is widespread ambivalence about the need to teach students computer languages. Educators believe that by introducing computer methods into instruction, we will leave students unskilled in the basics.
In art class, kids learn fun and engaging skills at the beginning, working their way to advanced techniques as their skills and interests deepen. In math class, students are drilled in mind-numbing methods for calculating numeric values by hand, for years before they learn how to solve algebraic problems. Forcing kids to learn long multiplication and division as a prerequisite to algebraic problem-solving is like teaching art students to mix paint before they are allowed to draw pictures.
In math class, students plug away at the same old arithmetic chores, despite the fact that the calculator was invented half a century ago and is in constant use by everyone (including the students themselves) in the form of a cellphone. Bulldozers are used to dig holes hundreds of times faster than workers with shovels; our kids are standing right next to a math bulldozer eager to fire it up and get to work. Our educational system hands them a shovel and tells them to dig holes the old-fashioned way. I believe that it is time to re-examine what we mean by the basics of math.
Innovative schools now use computers to drill students on hand calculation, calling it "computer-based learning." Ironically, students practice their hand calculations using a computer that can work flawlessly billions of times faster than they can. The software that controls the computers is never discussed, and students are never told how they might use the computer to avoid hand calculations and explore the more interesting parts of mathematics. The basics of math are when to add, subtract, multiply, and divide, not how.
Like many other skills that were once considered basic but are no longer taught in school, paper-and-pencil machinations are a thing of the past in the real world. There is no demand for "flesh-and-blood computers," but our schools are churning out highly trained human calculators by the millions. At the same time, the modern workplace demands workers fluent in computer languages, but computer science is not taught routinely in our schools. And when it is, it is only as an advanced topic. First, spend years learning how to compute by hand, then forget all about that and learn how to use a computer to do real work.
Instead, we should teach computer languages early on. Computer languages allow students to transform ideas into action. Here is a simple rule that a math teacher might describe to her students:
If the number is greater than 9, carry the 10's place; otherwise add the number to the bottom row.
The students might transcribe this rule into a computer language in the following way:
if (number > 9)
carry += number / 10;
bottom += number;
The computer-language version is succinct, but as you can see, it is much like English boiled down to its bare essence. Writing a rule in a computer language is the same thing as writing an essay about how the rule should be carried out in every detail. Once written this way, the rule can be executed on any computer and made available on the Internet. Sergey Brin and Larry Page did just that, and the result was Google, an example of the type of company that will dominate the 21st-century economy and employ the next generation of graduates.
The human-as-calculating-machine era is over, now that computers have freed us from this toil. The technique continues to be taught in school because we fear that unless students calculate the numbers by hand, they will not understand their meaning. Nothing could be further from the truth. No conceptual enlightenment is gained by repeating calculations for a series of throwaway textbook examples. Forcing students to carry out hand computations not only obscures the original mathematical concepts, but distances the students from the beauty of mathematics. Worst of all, students will never use these manual techniques outside the classroom.
Educators see problem-solving as a performance art, learned and practiced for presentation by the student on a standardized test. We are training a group of minstrels to memorize music they hear and play it back by heart, never learning how to read or write the notes. What our society needs are literate composers writing and agonizing over the score and leaving their work for the world to enjoy and augment. It is imperative that we reassess our negative attitude toward the same technology that we nurture in our high-tech industries. Teaching students a computer language is in no way skipping the basics. It is the new basics for the 21st century.
Vol. 31, Issue 21, Page 29Published in Print: February 22, 2012, as Computer Languages: Students Need to Speak Them