By Aryeh Firfer
Every year, high paying jobs at big tech firms lure many naïve YU students into choosing computer science as their major. Ahead of these students are long hours of staring at their screen, desperately scouring their code for errors, in hopes that they will be able to show their teacher something that works when their assignments are due. Caught between malfunctioning code and tight due dates, many such students find it impossible to keep up with the demands of their professors and choose another major. After such an experience, it would be easy to see computer language as a brain-power consuming monster, while overlooking its similarities to common language.
In a sense, writing a script for a computer is like writing a piece of literature. Both scripts and literary articles use some form of language to accomplish a purpose: be it to portray an argument to an audience or to create a functioning program. To do so, these scripts and literary articles must introduce the appropriate objects and link them together with the correct logic, while structuring said logic in a way which is intuitive to read. There is, however, no single way to structure your paragraphs of text or code, enabling people to develop styles which are unique to them.
Although words are the flesh and blood of any form of text, they need to be structured properly to gain their functionality. If you are writing works like novels or articles, your text will technically still work if this rule is ignored; though because scripts written in coding languages will inevitably be run, they need to strictly adhere to their principles of grammar. It may be annoying when a script you’ve put hours into refuses to run because of a missing semicolon, but from the computer’s perspective, your line has no solid definition, and would therefore need further clarification.
Unlike with written languages, each word in a script will always be interpreted for exactly what it means. One minor mistake in a program can cause the entire thing to function improperly.
Finding and correcting small imperfections in programs is largely considered the most tedious part of programming, but it is what perfects the program’s logic, and is ultimately what pushes it to completion.
An essential part of a convincing piece of literature is to have a point which you want to express and to express it strongly. This point is commonly called a thesis. In common language, your thesis would be the bottom line of your writing. In the context of programming, your thesis is your desired output.
The most satisfying feeling obtainable in the field of computer science is that of completing a program. After hours, days, or even weeks of your computer misinterpreting your scripts and mocking your use of syntax, you’ve finally created something that functions properly.
The result, however, extends beyond the program’s output. Before a program’s output can reach your screen, the computer running it must read its grammatically correct source file, process it logically, and interpret it in a manner which is similar to how a human would read a book or an article. Just as a piece of literature will elegantly express thought and emotion to the reader, a program will express its output to the computer’s screen. To the average observer, your program can be seen as another mundane object, but when you can see a program for what it truly is, you can experience its full beauty as a work of art.