I adore both applications and poems. They are different (legit) ways in which humans can express themselves. Still, opposite to what I can hear and see on the web, they are not identical, nor even the same, and here is why…
I am not going to jump into conclusions, instead I will make sure that there is no Minority report in the following 3 topics.
Poetry starts where dreams end, it extends inner (usually unfulfilled) desires and needs that one may have. You can even say that poetry is about the past. It is an analysis of personal experiences and a way for us to try to understand our own thoughts and life in general.
Code starts as an idea, which is part of future not the past. As a matter of fact ideas tend to create things that will be, instead of reshaping things that have already happend (like poetry does).
Poetry is an extension of the past. Code is an introduction to the future.
See, how code is not poetry. This statement still may be false, so let’s continue.
Poetry is an attempt to rationalize irrational parts of our brain. Romantic fellows like me would like to think that poetry is rooted in the heart, thus it resolves in an emotional message. It can be about love, hate or both at the same time. An important feature of poetry is that the message is usually not clear. A poem is interpreted differently by each person who reads it. Writing poetry sets you free. Lucky people who choose to read are free to understand it how ever they like. There is no strict order in poetry, just thoughts and hidden recommendations…
Code is a strict set of instructions, simple as that. There is nothing as clear as code (even if it is bad as hell, messy or what ever). Computers are actually very stupid. If you give poem to a computer interpreter, you will most probably end up in an infinite loop. Additionally your computer may discard the inputted data as confusing. Writing code is identical to dictatorship. Poor computers must obey. Sad thing is that they experience our rage, when they exactly do the thing that we ordered them.
"Poetry is irrational, as our mind can be. Code is rational, as our mind can be."
Again, Code is not poetry. Yet we are still one step away from perfect (or imperfect 3)…
Poetry doesn’t provide answers. Or at least, finding such thing like an answer in poem is a special case, not a rule. Reading poems actually results in quite opposite scenario. If the title of a poem is a question, then poem itself will rather generate even more questions, than answering the initial one. Writing poetry sure is creative process, still what is created is never part of physical world (no matter how much it can indirectly affect it).
Code does exactly what it is expected to do and it results in what is desired. If a definition for being rational doesn’t exist, this should be used. Code is both question and answer. Additionally it’s outcome is always the same, no matter who executes it. If you think deeper about your daily life you will see that everything is set of instructions.
"Opening door requires moving hand > moving hand requires muscle contraction > muscle contraction requires signal from the brain > signal in the brain requires idea. Poem verse requires idea > idea requires… well, what exactly? Maybe magic."
In the end I would like to experience some of the worlds most famous poems after code review. An I am sure, that opposite to code they would never be better afterwards.
"If you still think that Code is poetry, then you are more of a poet than programmer (which is still awesome)…"