It seems to me that programming is one of the most underappreciated art forms. I’m talking specifically about back-end programming; not front end UI design. A degree for web design is an arts degree. But back-end, logic is not ever really considered artistic by the masses. When I was younger my older brother tried to get me into programming. I always complained and said I didn’t like it and was not interested because it was not creative enough for me. I’d say it was boring and that I had no interest. Then I actually started doing it. I realized that it is a very creative art form. It allows creative and logical minds an outlet to build amazing things. There are a few major downsides though.
People rarely express any gratitude or excitement about what you’ve built. If it works as they expect and they’re happy then they tend to just use it and keep to themselves. They don’t often make it a point to reach out to those that built it and even say thank you. Programmers are so far removed from the Sales and Support side in most companies that they rarely receive any positive feedback at all. The positive feedback comes in through the support teams and makes its way up the chain to the management and administrative teams, but it rarely flows back down to the programmers. People are always very quick to express displeasure though. When something doesn’t work correctly it will often times fall right down on the programmer’s shoulders and that could mean long nights and weekends working to fix a critical bug. So there is very little gratification in being a programmer.
As a programmer it’s difficult to talk to people about my work. Unless you are also a programmer, you just won’t understand. When I start talking about how I used a specific design pattern in my code most people’s eyes will glaze over and they’ll drift away. It’s not a topic that you can really understand unless you have some training in it and have done it before.
Now that I’m thinking about it more I realize that this problem is not only a software engineering issue. It’s most likely inherent to all forms of engineering. Engineering is very creative work. That’s what Engineers do all day is create things. Sometimes they are building things to solve new problems, and other times they are looking at new and more efficient ways to solve old ones. So make sure and thank your engineer friends and family. It’s because of their very creative minds that we have all these cool things that we tend to take for granted on a daily basis.