Wednesday, August 5, 2009


Ask a few dozen people who have the same job as me how they classify their job and you'll get a wide variety of answers: it's a science, it's an art, it's engineering, it's applied mathematics, and so on.  I've known this for a while, but what I've realized is that it's something that is probably nearly universal across careers.  People want to classify their job in a way that makes them feel more special, or that makes their job sound like something that they'd rather do than what they're actually doing.  Fast food cooks want to call themselves "burger artists" or something like that.  Secretaries want to call themselves "administrative professionals."  And depending on my mood, I want to call myself a "scientist" or an "engineer" or an "architect" or an "artist."

Certainly my career as a code monkey has aspects of all of those things.  I form hypotheses, prove and disprove them through experimentation, and work with theoretical subjects, so I'm a scientist.  I design things to be organized yet functional, so I'm an architect.  I design things to be beautiful and elegant, in that sort of way that only people of the same career path as you understand and everyone else thinks you're insane, like when a motorcycle enthusiast says how "beautiful" their bike's engine sounds, while everyone else plugs their ears.  So I'm an artist too.  Sometimes I get to be really creative, and I feel like an artist.  And sometimes I have to do tedious, methodical crap.  Really, I think that sometimes I'm just jealous of some of those people.

To me, it's easier to accept that artists are doing something I can't do.  Everyone knows how to draw.  Everyone has tried to draw.  Most people aren't good at it.  Many people are not that good at it even after a lot of practice.  There's an obvious element of talent, combined with a universal famliarity with the task, and that makes it easy for me to comprehend that pencil-and-pen graphic artists are people who have a very specific talent that I don't have.  My talents simply do not include creating beautiful things with a a pencil.  I don't feel that, even given unlimited time, I would be good enough at it.  In contrast, I often feel that given unlimited time, nearly anyone could learn to do what I do.  It might take them decades, and even after that time they might not be very fast at it and they might make more mistakes, but they could build software.  It wouldn't have that artistic touch and innate skill that I (like to think that I) have, but they could produce software that would basically do what they wanted.  I think that's the difference that sometimes irks me.  Poorly-produced software that took a very long time to build by someone who was not talented at it would still do roughly what it was meant to.  But visual artwork produced by someone without the talent doesn't serve its purposes to delight the senses and provoke the mind and soul.  As much artistry as there is in building software, there's still that utilitarian aspect of things that separates it from painting watercolors or sculpting statues.


Louise said...

Coming from an artistic background, I find that even in the artistic areas there are people who don't do anything above and beyond what others can do - and yet these people are also called artist. Look at most modern art. A vast majority of it is just paint thrown at canvas, urine in a jar, or a single black line on a field of white. My son can do what these people do - and they are making thousands, even millions for it. Hell - just walk around Microsoft campas - you can see that kind of art all over the place.

Just be happy you don't have the kind of job a trained monkey could do!

Andy M said...

I disagree. People are good at certain things, which we naturally gravitate towards and eventually (for most of us, anyway) those become careers. Just as you could make poor art if you tried really hard, an artist could make poor software if he/she tried really hard. Either way, neither is as good as a "professional" in that respective area could do.

People who are not programmers usually do not have minds that can think like a programmer. You neglect to consider that, but I think you should give yourself more credit in this area. The opposite example would be visualizing what to paint on a canvas, which I at least know that I am personally incapable of.

I would argue that no matter how much training you give someone, they will not be able to create software as complex as what you work on each day unless their brain is wired right. Not everyone thinks like us.

Mahmoud said...

I think this post covers very succinctly my own opinion on the topic. It falls a bit short here and there, but let's all just agree that describing artistry would require a treatise. Also, this post supports my opinion on why photography is not really an art. I have a draft of that post saved somewhere.

However, I will venture to point out that Andy is making assumptions about how one must think to lay claim to a certain title. Both programming and art can encompass a wide variety of thought states and patterns; you'd be hard pressed to find a typical case.

g said...

When I'm programming, I think of myself as a translator. I listen to what it is humans want, and I tell the computer how to make that happen.

Generally I work on front-end things, so the cycle comes full-circle when I engineer the computer program to then convey that information back to another human.

Andy M said...

I'm not saying that you MUST think a certain way to work well in a particular field; only that it usually helps if your mind works in a certain way. Certainly, you can do an adequate job of anything if you try, but usually it is only those whose thought patterns correspond to a given field that rise to the top in that field. I also think a contingency exists for those who don't think in the "established" way in their given field: if they excel, it will be because they "broke the mold," changing that field forever.