An interesting thing I have realized while having a conversation with a friend of mine over dinner last night was that some do not recognize that software development can be regarded as a form of art that requires your heart and soul. If you're an entry level dude stuck in some corporate IT department or some software sweat shop with a list of bugs to fix everyday you may not think that... You may even be the type who thinks computer programming is grudge work and would like to "move up the ladder" and become a manager or a director.
As far as I'm concerned, having had the fortunate opportunity to be doing what I do right now, I have been provided with a quite a bit of creative freedom as to how I can express my ideas into the softwares that I develop. The bigger the project gets, the more design goes into it, and that design process really requires you to put your heart and soul into it. It's about expression of ideas in various different ways. It's about creating something out of nothing and eventually presenting it. It's about nurturing a newly born baby and then letting it out into the world just as you think it's ready to take on its own life; it's truly a wonderful feeling. I don't think great software products come out of pure engineering. Sure, engineering may be a part of it, but in order for the product to be something that makes a difference in people's lives, it has to evolve on its own with the complex interaction among people who put their heart and soul into it. When you see such a product, your mind can relate to it like it does with any other form of art.
The key, in my opinion, is the people. It's not the programming tools, it's not the algorithms, and no it's not even the money. Like Steve once had told me, it's Zen. When people with passion so great come together to work on something, be it a software project, a song, an album, a choreography, a mechanical device, or what not... their heart and soul is bound to be reflected in the end product.. and I think that's just simply beautiful.
There's always a combination of art and science. When you paint, what you paint is art, but what you paint on or with is a product of science. When you choreograph a routine, the routine is art, but the physics of the movement is science. No, I don't feel any pressure to make sure that people recognize software development as art. I could really care less what others think of this subject matter. I'm just adding to your library of opinions that there's at least one person in the world who thinks in this manner. Open your mind and always try to see the side of the world that you haven't seen yet. It is simply amazing to see how much things I can learn everyday when I do. Enjoy life; it's a privillege to be breathing right now. ;)
|