Computer Art: Not a Thing

I don’t for a second give any merit to the idea that computer science is an art.

It might be a testament to the arrogance of programmers that this idea exists. The other two categories mentioned in the prompt are almost inarguably the two perfect terms to pigeonhole the field of computer science. Do we really hold ourselves in such high esteem that we need to try to call ourselves artists as well?

There’s no denying that there can be beauty and elegance in code, and that being a standout in this field requires skill, practice, and intuition. But beauty and elegance does not necessitate artistry.

Of the other two categories, I think it’s important to appreciate the duality of the computer science field. There’s the theoretical side, where we study what can and can’t be calculated and prove things with math and don’t even really need a computer at all. There’s also the practical side, where we write if-statements and make apps and use funny words like Hadoop and segfault. If you were to ask me to answer this prompt in one sentence, I would say that computer science is a two-headed beast of engineering and science, and I would differentiate between them with the examples above (among other things).

Beyond that, I think there needs to be some clarification on what engineering really is, especially in the context of the articles posted in this week’s reading.

apollo-13-houbolt

When I hear the word ‘engineering’, I immediately think of NASA. More specifically, 1960s, Apollo 11, space race NASA. These guys were on a whole other level of engineer, designing astonishingly advanced systems and components fueled by a literal desire to leave the planet (and potentially by drugs, these are engineers in the ’60s). Rocketry and ballistics sciences hadn’t been around too long: a few centuries for sure, but not anywhere near the level of what NASA was doing. They were problem-solving on an absolutely unprecedented scale with billions of people watching and very little room for error.

That is what, in my mind, exemplifies engineering. Smart people looking at problems, figuring out a way to solve them, and then actually making the whole thing work. I can understand the sentiment of articles like “Programmers: Stop Calling Yourselves Engineers“, that say things like:

When it comes to skyscrapers and bridges and power plants and elevators and the like, engineering has been, and will continue to be, managed partly by professional standards, and partly by regulation around the expertise and duties of engineers. But fifty years’ worth of attempts to turn software development into a legitimate engineering practice have failed.

But I disagree with them. Fifty years’ worth of attempts is enough to write off software development as illegitimate? In the scope of human existence, 50 years is simply not enough time. I highly doubt that the “professional standards” of  “legitimate engineering practices” sprang up overnight, or even in 50 years. And forgive us for taking some time to work out the kinks. We’re transmitting billions of bits of information around the planet at speeds that would shock the guys who built the aqueducts in ancient Rome right out of their togas. It might take a while to settle on the best way to do things. If anything, the diversity implied by a lack of standards and regulation serves as a reminder that our capacity as software engineers is ever-increasing.

As a whole, I think software development is an engineering discipline, with a separate section altogether for computer scientists (which is naturally a science). Don’t get me wrong, I love art. I would love to be considered an artist, and I would love to be so assured of the importance of my work that I can consider it art. But if I’m choosing one or the other, which in the context of this post I am, I’ll choose engineering every time. You can keep your books and your poems, and you can even keep your bridges and tunnels. Art is great for life on Earth. Engineering got us to the moon!

Computer Art: Not a Thing

Leave a comment