“Code is Poetry”
And I for one cannot understand a word of what Tennyson or Wordsworth or Shelley wrote.
Recently I completed an online course on Coursera : Programming for Everybody (Python) by Charles Severance from the University of Michigan (Umich)
As a part of the same we were asked to write a peer reviewed essay on Is Programming easy/ hard for everyone ? Can anyone or everyone code ? Or is it just some super-nerdy geeks ?
I reproduce below the original. Might be an intresting read for few. Might appear not to make sense at all to others . Enjoy !
When I first read the topic of our essay I was utterly dumbfounded. For me programming comes naturally. Thus there began a series of aggressive arguments in my mind against the topic, at the corner of my mind it also cropped up maybe I should drop the course.
But then I left my system went sat in a park and watched the world increase its entropy around me and tried to understand, why Dr. Chuck (A person whom I really like and have immense respect for) would set us this essay.
It took me more than a week much of it spent sleepless to come up with the structured thought process to such a bizarre (?) question.
Is Programming really that hard ?
And the answer is simple, we are all masters of our own universe. Something being hard is a purely perspective argument.
I am an Indian and we have a saying here, “All the fingers are not equal”
It is just the way humans are made. We are a very diverse race and the diversity is in our brain. If you study the Neural Network of the brain, our brain literally grows in the direction we will it too. That is suppose I, since birth (and as per my genetic hereditary default framework) have a strong frontal lobe then there appears to be a denser network of synapses and neural connections with respect to cognitive processes. Simply stated I am better at thinking, working out logics, understanding mnemonics, solving problems etc.
Similarly if we compare it to suppose a sportsperson, he has better developed reflexes and basically his brain is much better wired than mine to do physical stuff.
Programming is not hard. But it is perceived so by certain individuals. I in no way have a superiority complex or am trying to say that only a select group can program. Anyone can program. Anyone can play football. But no miracle can make me beat Messi. Yes if I do practice day and night put in rigorous hard work and have a passion for the same I might just get really good at it.
This initial phase of hard labour, focussed problem solving mechanisms is what people term as ‘hard’.
The duration of this initial phase depend on the amount of relay networks present in your cerebellum cortex on the specific subject.
But once we are past this initial hurdle one can always flourish.
I started this essay with the quote “Code is Poetry”. That is the phrase created by WordPress. I came across it in my early days when I was learning web development, php, CMS etc. Basically what they are trying to say is – “Dude, even if you know nothing about computers, but you are good at, say, writing poems… publishing your poems – i.e. blogging using wordpress, will be a breeze.
The double meaning sets a context. It implies: our code is beautifully crafted, and our design is so great and concise, since we are passionate about our code, as one is passionate about writing a poems. In essence, it is a concise, maybe even a poetic (not to mention an ambitious) SLA plus a bonus Mission Statement, all wrapped in a single catchphrase.
What I meant by putting it as the opening line was : Code is poetry. Just like poems to some it comes naturally, some have to wrap their head around the verse to even comprehend the poet. For some it is hard, for others it is easy. It all depends on how you as an individual perceive your surroundings.
It is easier for me to write a program for returning a specific query based on an apache server but I may never really understand what Robert Frost meant by The Road Not Taken …..
Also read Introduction to Programming (PART – 1) and Introduction to Programming (PART – 2)