Monday, January 21, 2013

What is a programmer?

Definition of a Programmer:

pro·gram·mer [proh-gram-er] noun
1. a person who writes computer programs; a person who programs a device, especially a computer.

I was thinking on this topic as I was creating my google blog, and trying to come up with a title.  Rambling I think will become obvious as I continue to post here, but Programmer was something I was less sure of.

At first I felt it was a bit conceited to call myself a programmer.  What excellent software had I produced?  The answer is currently none.  I am still a noob, and have a very long way to go.  I am learning, at what I feel is a quick pace, but I am still far from producing the good stuff, polished pieces of software that behave well and deliver a desired experience.

I considered what dabbling I have done in creative writing, and some of the personal epiphanies that resulted from those lines of thought.

One of those is the consideration that there are essentially three stages of fiction creation.  There is dreaming, writing, and publishing.  Almost every one on earth dreams.  What wonders of entertainment would exist if the writing stage could be skipped, if the fantastical day dreams could be directly communicated effortlessly at will to our fellow human?

Then there is writing, and that is the hardest part.  Well, at least in the age of digital distribution and the internet.  Publishing is essentially as easy as setting up a webpage and providing a download link, assuming you don't require a large audience or monetary compensation.  Regressing from the digress however,  is that the act of creation can be surprisingly difficult.

It's not a single iteration either!  Oh no, particularly regarding writing and programming, it takes many passes to produce a work that is pleasing to a consumer.  Amongst those with master skills, this is still an inevitable truth (or so I am told).  It is just not possible to get it right the first time, and that can be incredibly frustrating.

The point I am trying to get to however, is that the ratio of dreamers to writers is quite high.  I suppose thats why stories are valued so much, as the impetus to actually get the writing done is present in only a fraction of the people who have dreamed up interesting stories to tell.

But then there is also publishing, and I think it would be fair to say that someone who publishes written works should be considered an author in addition to being a writer and a dreamer.  An author is then, essentially, someone who finishes what they start, someone who goes through all the stages of polishing and refining the product of their imagination into something others can enjoy.

What I derived from all this, was that a programmer is not necessarily someone who creates finished products.  In this, they are kin to the definition of writer that I implied above.  They have moved beyond the imagining to the doing.

In this sense, I feel comfortable calling myself a programmer.  I am doing what I am capable of, even if for now my skills are not great.

I wonder if there is a kin to the definition of author I used above?  I am thinking that there is not, because for the most part the creation of interactive software is the result of many different people, all playing a role.  I suppose the closest word that I can think of is studio.  A studio tends to produce final, polished (to varying degrees) works intended for release and enjoyment by the audience.

That kind of leaves the lone programmer in a strange situation though.  There are several examples of excellent games created mostly by a single individual.  I guess one-man-studio covers that?

The other takeaway that I received from all this is that the two most important attributes for moving from being a programmer/writer to an author/studio, is patience and determination.

Sure, lots of other attributes are useful, but without those two I'm not convinced it could be done at all.

So while I am a programmer, learning and growing with a deliberate conscious effort, my aspiration is ultimately to be a studio (at least the one-man version).  This is a goal I try to keep in my mind's eye at all times.

No comments:

Post a Comment