Yesterday I just read a very interesting article about The Programmer’s Price. It’s mainly about how an entertainment agency has shifted from recruiting artists into recruiting programmers as their talents. Although artists and programmers seems unrelated at all, this agency maintains its talent management business model. That is, acting as a programmer’s manager, and handle all the business contracts and legal paperworks on behalf of the programmer. So the programmer who usually doesn’t understand or like much about business can just focus on their profession as a programmer.
And I, am absolutely agree with the reading and dare to say that a programmer is an artist after all. Or, at least, can be compared to an artist. After my own experience working in this industry, I could tell you 5 reasons why programmer is an artist. Be it a songwriter, scriptwriter, painter, or a sculpture.
1. Programmers are given a blank screen and a set of tools.
What does a painter start drawing with? Yes, a blank canvas. Then, using a pencil, brush, oil paint, water color, or other tools, the painter’s creativity has turned that blank canvas into a masterpiece of art.
A programmer starts making an application from a blank file. Then, using an IDE, framework, and libraries they turned nothing into Facebook you use everyday. Therefore, each piece of a program is an art.
See the definition of “art” by Meriam-Webster’s dictionary:
art noun ˈärt something that is created with imagination and skill and that is beautiful or that expresses important ideas or feelings
Programs are made from ideas. How can an ATM hand you over money with a touch of a button? “I have no idea.” Then some programmers have expressed their idea on the ATM itself.
How about feelings? Hey, programmers have feelings too. See lots of feelings which were expressed by programmers on their codes at Stack Overflow.
2. Imagination is the key to create a masterpiece.
The hardest thing to do is when you are asked to make something from nothing. Yes, the process of creation requires big imagination and is very tiring. It’s no wonder if you see songwriter, novelist, painter, and programmer as well, being stuck at their desk zoning out for hours. Sometimes it becomes a problem when programmers work in an office and being supervised with somebody who is not IT savvy.
My own experience, I could take 5 hours thinking on how to solve a problem and spend 5 minutes for the actual coding. Why can’t I cut the 5 hours and just start coding straightaway? Try it by yourself. How can you code when you don’t know what to code? So, knowing what to code is crucial. And imagination is your friend.
3. Programmers are often forced to work with limited tools.
Back in late 1980s, programmers, especially game programmers, were forced to create great games on 16-bit Sega Genesis with just 4MB ROM size. Yet, even with the limitations they could make stunning games for that time. In drawing, some artists could create 3D graphics with just a paper and a pencil. Just google “3D pencil drawings” for some cool drawings. Again, imagination is your friend.
4. Work of arts are often undervalued (or overvalued).
The real value of a great piece of art usually can only be seen by people from the same profession. Meanwhile ordinary people may not be able to differentiate the value of a great work and an so-so one.
Did you know Affandi? He’s a maestro in visual arts. Here’s one of his creation, titled “Flowers”
Oh wait, I can draw flowers too! It’s a piece o’ cake.
See, both are the same “Flowers” drawing. So, let’s say if the first drawing were sold, why would I spend hundreds or thousands of bucks for a drawing? By the time I write this, somebody might have been angry “How dare you compare a masterpiece with that doodle!?” 🙂 Yes, that’s right, my “Flowers” doodle doesn’t even worth $1. So it is very wrong to compare those two drawings above.
But this commonly happens in IT fields. Two programs with similar “features” are compared each other. Just because two e-commerce programs can handle paypal payments, stock handling, and user groups, doesn’t mean both worth the same value. How about code readability, maintainability, code documentation, performance, and stuffs not seen from user’s perspective.
And this is what happens, at least in Indonesia. If I could ask high schooler to draw flowers for me for $1, then Affandi should be able to sell me his flowers drawing for $1 too! Or other way around. If his flowers drawing worth $2000, then I would sell my flowers doodle for $2000 too. Sounds ridiculous, doesn’t it?
Back in 2007, there was a valentine event at my high school. There I got news that to hire a national singer or a band to perform 5-6 songs for an hour costs more than $5000. Some others are higher, and some others are lower than that.
On the other hand, from the article I mentioned on the beginning of this writing, a rock star developer (as what they called for an expert) costs hundreds of dollars per hour while programmers commonly found at freelancing websites costs only around $20.
5. The key for mastery is daily practice.
Ask any great artist you know what is the secret of their expertise, whether they do regular practice or not. The most possible answer is yes. Without regular practice, they wouldn’t be able to achieve what they are now. There is no instant way to master an instrument, acting, story writing, etc.
The same goes to programming. Moreover, IT trends are always evolving. Web 2.0 was a trending technology a few years ago. But now, mobile apps are the star. Without daily practice and updates in the relevant field, don’t expect a programmer to come up with exceptional programs.