gorithms. Programming predisposes us to the “about” side of computing. We are more used to speaking about the principles and ideas of our field than about how individuals experience them. Descriptions of computational methods can be dull and lifeless compared to war stories from professionals who design and use them.
What follows are six voices of computing professionals. I added a seventh, non-professional voice, which I call the Last Voice. It is last not only because it appears at the end of this column, but because it may be the last voice consulted by young people before deciding against computing as a major.
All these voices are already within you. Except the last, just let them speak.
I love programming. I know a lot of languages and can make computers really hum. I do my best work when no one bosses me around—that’s when I am at my most creative. You know, programming is the most fundamental part of computer science. No computer can run without a program. I enable everything else in computing. I have written some history-changing programs. Just think about the software in the Apollo missions—I helped get us to the moon. Think of all those multiplayer virtual reality games—I give a lot of people immense pleasure learning important skills and shooting each other up. I get you safely across the country by helping the air traffic controllers. I get you your food by helping to route the trains and trucks. I gave you your word processor, spreadsheet, PowerPoint applications, and even a few friendly hearted Easter
Eggs. I attacked the Internet with a worm in 1988 and then helped stop the worm and catch the perp. I do a lot of things for you. I know that sometimes you look down at programmers and sometimes you think of us as the computer science equivalent of hamburg-er-flippers. But we deserve your respect and admiration.
I love using computers. I’m not a computer scientist, and I don’t want to be. I just love using the stuff computer scientists make. Awesome! I get some really spiffy things done with your tools even though I am an amateur. Most of the time, your stuff does not bankrupt me, waste my time, or kill me. My cell phone, instant messages, Web, Internet, Google Earth, Microsoft Office, i Tunes, iPod, and the ACM Digital Library. It just goes on and on. I am so grateful to have all this computer stuff. My wants and needs determine what computer scientists can sell, so they often listen to me very carefully. Without
those wants and needs, in fact, I’d be a nobody.
the computational thinker I love problem solving. Not just any old problem solving, but problem solving using algorithms. I love finding ways to apply algorithms I know to solve problems that folks didn’t realize could be solved. It’s such a powerful way to solve problems. All you have to do is think algorithms and—poof!—solutions appear. Sometimes I implement those solutions myself, and sometimes I let my friends the programmers do that. I’ve helped biologists search DNA databases, meteorologists forecast weather, petrologists find oil, oceanographers track ocean currents, linguists teach languages, and tax collectors insert spreadsheet algorithms into the law. Every so often somebody asks if I am a computational scientist. I answer no— while I think about how algorithms can help scientists, I don’t do their science for them. I’m all about thought. One of my greatest successes is to get politicians to think that through their laws they are programmers of national social systems. I’ve got economists thinking they can program the economy with the right policies. Perhaps my greatest triumph is to get people everywhere to think their brains are computers and that everything they do and say is simply an output.
I love mathematics. I know mathematics sounds pretty abstract to a lot of people. It’s not for everyone. We’ve long been recognized as the language of physics. Now we’ve got the addition-
ILLUSTRATION BY JOEL CASTILLO
References:
Archives