At 17, I stood at a crossroads. After years of being “well-rounded,” the idea of majoring in one subject was new to me. I chose my major practically, settling on computer science, perhaps one of the most misunderstood disciplines. Two years ago, I knew little of what I was getting myself into.
I look back on the decision wonderstruck. I did not know how to program. I was no math whiz. I didn’t particularly want to stare at a computer screen for hours. The odds were against me. So why did I choose it? Practicality. At the time, my physical mobility was very limited. I needed to be able to work from home, if necessary, and needed a career that wouldn’t require prolonged physical activity. I spent most of my time on the computer anyway, so I thought, “I might as well get paid to do this.” I chose computer science for all the wrong reasons.
I signed up for an independent computer science course my final year of high school to prove to myself I hadn’t gone mad. I adapted to my circumstances and set time aside each day to wrap my head around the programming assignments. It was tolerable, and I quickly progressed through the course, quite honestly, to be finished with it.
My health improved the tail end of my senior year in high school, and when I entered college later that fall, the physical constraints of my past no longer played a role in the path I took. Yet, I stuck with the major. I knew about how indecisive I could be. If I let myself choose another major, I’d lie in bed at night thinking how I could cram classes into my four years, trying to get as many degrees as possible. I would stick with one thing this time around.
As a freshman computer scientist, I daily questioned my competence. Most of the time, I didn’t know what I was doing. My classmates remember me as the kid who asked remedial programming questions. I regularly deleted my projects after growing frustrated, so I could start on a clean slate. I told myself, “It will get better.”
As I progressed through the curriculum, my brain began to rewire itself. In the evenings when I’d walk back to my dorm, code would appear on the walls, and existence became an infinite loop. I awoke. I went to class. I came home. Repeat. I saw humans as programmable objects, each with their own properties. My fingers, ears, nose, eyes, and mouth became sensors, fed with information from the external world. I perceived my body as a giant function that would take as inputs what it saw, heard, smelled, ate or touched; behavior was the output.
In front of the computer, I morphed into a sorcerer, using bizarre lines of code to instruct my army of machines that rose against all things evil and unjust, eliminating all the problems of the world, as I sat atop Shelby sipping iced tea watching my minions do my bidding.
I can’t deny my embarrassing delusions, but I can deny the stereotypes I came in with. Computer science is not about building computers and writing programs, just as biology is not about building microscopes and examining specimens. In fact, programming is my least favorite aspect of CS. We are problem solvers; programming is only the tool we only use to get there. We optimize a recipe, or algorithm, that tells computers the best way to solve a problem.
Now, when I confront a problem, a computer is rarely in front of me. I take out a clean sheet of paper, outlining the process and design of the program I plan to write. I’ve come to love what I do, regretting none of the frustrating nights I felt like chunking my laptop.
As I much as I dislike coding, I’ve stuck with my major for one reason: I like designing programs. I’m no programmer, but I am a computer scientist.
Tarif Haque is a Crimson White columnist and a sophomore majoring in computer science.