A paean to programming
A Google search for something entirely unrelated led me to a very old issue of the Daily Nexus, the student newspaper of the University of California, Santa Barbara, where I was teaching back then. Apparently (I had forgotten all about it of course) I was piqued by a student’s letter to the editor, where he complained of having to sit all day hacking at a terminal just because he had been told to study computer science if to get a high-paying job. I felt compelled to write a response (published on 24 April 1984 under the editor-provided title “Monster”) affirming that CSis not all about money.
My letter appears below, copy-pasted in full. The nice thing about it is that I would write it an exactly the same way today. The scary thing about it is that I would write in exactly the same way today! Well, actually, let me qualify that: I would replace “which” by “that” in the second paragraph, and in the penultimate one I would not separate the verb “convey” from its complement. So it is good to know that in forty-one years minus one day I have learned at least two things.
From: UCSB Daily Nexus, 24 April 1984, page 3, available here.
Monster
Editor, Daily Nexus:
In a letter published in the April 17 Nexus, Paul Dechant complains that he must sit “night after night” in the terminal room instead of devoting his time to more gratifying occupations. I checked my lists: he is not in any of my classes. Good; nobody likes to feel like a monster…
The part of his letter that worries me more, however, is the question which he asks: “Is this the price I must pay for a decent grade in a major which promises a healthy salary?” I appreciate Dechant’s frankness, and I have no doubt that it reflects a common view of what majoring in Computer Science is all about, but still, I find this definition bothering. Is it really so that the only argument for choosing a scientific or engineering major is the prospect of making big bucks? How sad! There is so much more to it.
How about intellectual challenges? I may have some ground to speak about this, since as a student I was what in the U.S. would be called a double major, and got degrees both in science and the humanities. I can testify that the choice between the two is not a matter of greed alone; the borderline between “vocational” and “educational” is not that clear. There is cultural value in science, too! The sheer excitement of entering a new scientific field like computer science, where so much remains to be discovered, is my view of a good enough motivation. By the way, one of the challenges that people in my field (software engineering) are tackling has something to do with Mr. Dechant’s frustration: does programming have to be such a trauma? Can we find a way to deal with problems so that people don’t have to sit “night after night” to get their programs running? In fact, some of our teaching is already concerned with this. It’s called programming methodology and I am sure it can help.
Now think about what computers really are: one of the most fabulous kind of machines ever devised by mankind, but different from all the machines invented before in that they can solve not just one problem, but any problem which is presented to them, provided the problem and the solution technique can be described in complete detaiI. A computer is thus more of a “meta-machine,” and computer science is really the science of problem-solving. How do we master this power and put it to good use? Doesn’t this present some challenges worthy of devoting part of your life to them? I think it does and I hope some of my teaching is able to convey, however imperfectly, this excitement.
There is nothing wrong in considering the potential financial rewards when choosing a major. I would hate to think, however, that all our students are sitting there just because they or their parents have read in Time or Fortune magazine that one may get rich by going into software.
Bertrand Meyer
Visiting Professor
Computer Science Department