“The Infamous Paul Hilfinger” frequently receives UCBMFET recognition for the overwhelming difficulty of his computer science projects. This last week, as a CS 61B student at UC Berkeley, I have had the privilege of being “Hil-fingered” by a project requiring students to build their own SQL database.
While I can’t say I have made much of a dent on the assignment, a combination of sleep deprivation, Red Bull and my first shifts at The Daily Californian have led me to a theory more intriguing than the Illuminati: Copy editors make excellent coders.
Computer programming, like English, is an intricate language with a complex set of rules dictating what can and can’t be coded. For every Daily Cal copy editor scrutinizing an article over one more grammatical error, there’s a quality assurance director in San Jose trying to find the incorrect variable name rendering a program inept.
In computer science, what we call syntax errors are effectively grammatical mistakes in the use of a programming language. When writing an 1,800-line Java file, however, simple mistakes such as a missing semicolon or a misspelled function name go from pains in the ass to hair-pulling dilemmas.
Debugging is quite possibly the most difficult aspect of completing any programming project. Anyone can type a bunch of variables and functions onto a page and print “Hello World.” The difficult part is figuring out if the code is broken and, if so, how to fix it.
If you’ve ever completed a road trip and realized that you don’t consciously remember actually driving, you’ve just experienced “highway hypnosis.” The effect of reading through an entire program for mistakes is a lot like highway hypnosis, but thinking just enough to stay on the road simply isn’t going to fix your code. Every line requires as much mental power as the next one and the one after that.
Although I’ve only been a copy editor for a few weeks, I can already tell that the skills I’m picking up are enhancing my ability to read and debug code. Even though paying attention to grammar in articles is somewhat easier than in code, repetition is slowly building up my mental stamina, and the process of finding errors in my database project is definitely less arduous than it would have been a month and a half ago. Copy editing has also provided me with a sharper sense of what to look for and increased my reading speed, which is important in trying to complete projects in great time, or should I say, Big O(1).
I’ve recently noticed a trend of recruiters asking me how my work at the Daily Cal plays even remotely into my interest in computer science. Hopefully, the emphasis on a skillset will resonate as strongly with others as it did with me.