How do I love thee? Let me count the ways

How do I love thee? Let me count the ways. I love thee to the depth and breadth and height My soul can reach, when feeling out of sight For the ends of Being and ideal Grace. I love thee to the level of every day’s Most quiet need, by sun and candle-light. I love thee freely, as men strive for Right; I love thee purely, as they turn from Praise. I love thee with a passion put to use In my old griefs, and with my childhood’s faith. I love thee with a love I seemed to lose With my lost saints, I love thee with the breath, Smiles, tears, of all my life! and, if God choose, I shall but love thee better after death. – Elizabeth Barrett Browning

What is it about programming? What is that thing that keeps me coming back for more? Why do I spend countless lonely hours tapping away at my keyboard into the small hours of the morning?

One word: Creativity!

I love programming! I absolutely love the solving of problems and the technical challenge of putting thought into code. I love the whole process of dreaming up architecture to elegantly deal with the problem at hand. I love the minutiae of GUI design and the ordering of chaos when a program is correctly structured. Code is art, in fact I consider it a craft. A craft that you have to pour your mind into (body and soul are usually not required), something you can sculpt and carve until it meets your requirements. Something you have to personally take charge off and reign in until it does your bidding. Most of all, it’s something you do lovingly.

As you can guess, i’m in love with programming in any language. This is mainly because i’m a very creative person and I feel lost if i’m not working on a project of some sort. I feel there is always something trying to escape from me, something creative that I need to share with the world, something that people will use and enjoy.

I need to create ‘stuff’ and in today’s world, that ‘stuff’ is software!

It wasn’t always the case though. I have worked full time as a graphic artist since leaving school so I have always been creative in one form or another but programming is something I got into as soon as I wrote my first Hello World program over ten years ago. This is the piece if code responsible:

Not very impressive but a catalyst in recruiting me to the ranks of developers throughout the world. A simple example of dictating to a computer what to do and an example of individualism, stamping my authority on the silicon chip I made do my bidding!

Not only do I love programming but I love delivering the finished product. The overriding feeling of satisfaction when completing a project is immense and seeing people use and enjoy your software is awesome compensation for the long hours spent. Something you have created and given (or sold) to a user that makes his or her life easier is part of the payoff that exists in such a craft. As if you had created a comfy chair for someone who needed a well earned rest. It’s awesome to fill those needs for people and to feel you have done a good job.

Another appealing aspect for me is the fact that you will never finish learning about programming. They’re are just too many languages, too many platforms and too many paradigms. It’s a never ending intellectual adventure, a fun puzzle that can never be wholly solved, something to be poured over and studied from now until eternity. …Ah, pure bliss!

A long winded and strange post I know, but I just felt this uncontrollable urge to express myself!