I apologize in advance for the somewhat technical nature of this post. I really did try to make it as accessible as possible.
For those of you who don’t know, I am a web programmer by trade. If you’re interested, I work with HTML, CSS, JavaScript (mostly in jQuery, but sometimes in mootools too), PHP, and SQL. If you’re not interested, I hope you at least got a sense of how technical the trade is. Moreover, you may be a PC, or you may be a Mac, but I’m a Linux (Roland must hate me right now).
As a programmer, I do the majority of my development on the WordPress platform. If you didn’t already know, that’s what this site is built on. My name here is Romulus because I am the one who set up and configured the site, and the one who keeps it up to date and running smoothly (as much as possible). Suffice it to say that I love working with WordPress.
Now, on to my actual subject. If you follow that link I posted above, you will see in the footer the following:
Code is Poetry
Now I want to be clear: as somebody who has extensive experience with both, code is NOT poetry. I know that very few, if any, of you needed me to tell you that, but it needed to be stated regardless. To say that code is poetry shows a lack of knowledge of what either code is, or poetry is, or both (given the sophistication of the code—you’ll just have to trust me—I’m inclined to believe it’s simply ignorance of what poetry is).
However. This does not mean the claim is not without any value. While I absolutely deny that code is poetry, I do assert that, in many respects, code is poetic. I’ll try to explain why I think this.
Let me begin with the very basics. Both poetry and code are composed, in a sense. Almost no script is ever drafted once and never touched again, just as poets very seldom publish first drafts (Keats and Wordsworth are the only ones that come to mind). Many poets even republished revisions of older poetry (Auden and Wordsworth both come to mind).
Furthermore, while there are (almost) no actual rules about this, programmers generally adhere to rather rigid aesthetic conventions of “well-formed” code. These aesthetic formal guidelines do nothing to improve the code (and in some cases even slow it down), but they make the code more beautiful and readable (programmers tend to hate messy code).
Another way in which I believe code to be poetic is in their attitudes towards and treatments of syntax. All scripting languages have a syntax, and like poetry, programmers are constantly finding creative ways to push the limits of the language, with one big difference—programmers don’t have the option of ignoring syntax rules when they’re inconvenient. It should be noted that I think this makes code less “poetic”.
Now, these things are fairly superficial, and by themselves make code poetic only in the same way that Twilight could be said to be prosaic. However, the true insight in the claim that “Code is Poetry” comes in the form of a recognition which the Anglo-Saxons saw very well: Poet as Maker (in fact, the Anglo-Saxon word for poet, schop, means “maker”). The poet takes nothing but a language and makes something new out of it. For my part, there is something very beautiful in a script well-written. Something in the order, attention to detail, and conservation of words is sublime (in the Wordsworthian sense). And there’s a lot to be said for crafting something from one’s own imagination and seeing the completed project come together to be something greater than the sum of its parts.
I want to move away from my treatment of programming now and abstract a bit. Aristotle, in the Nicomachean Ethics, talks about different kinds of activities, namely Theoria, Praxis, and Pragmatis. Pragmatis is something done for the sake of something else, Theoria is something done for its own sake, and Praxis is a blend. Here’s a quick demonstration: a $10 chair from Ikea is cheap and made to be merely something to sit on; that’s Pragmatis. A hand-made chair from the Amish is sill something to sit on, but it is also valuable for its own sake – as a craft, as a work of art; that’s Praxis. Finally, contemplation of chair-ness is a good to itself; that’s Theoria.
Incidentally, this distinction is where Heidegger screwed up. He had no concept of Praxis.
Now I have to say, this idea of “Code is Poetry” seems to me to be a prime example of Praxis at work. It is clearly done for the sake of something else. That much is indisputable. But it’s also done for the sake of the beauty of the code. I’m going to have to coin a term: Praxic, an adjectival form of Praxis. I’ve worked with Pragmatic programming and with Praxic programming, and the difference is one of Quality (think 10 categories). Pragmatic programmers are only concerned with churning out as much crappy code as they can. The emphasis is on functionality, which tends to produce poorly written, buggy, and inflexible code. Praxic programmers, however, release their programming when it’s ready (that’s actually the answer to the question “when is the next version of WordPress coming out?” It comes out when it’s ready). The emphasis is on the project as a whole. This tends to create more useful, finely tuned and flexible programming.
This difference seems to point back to the idea of something being worth doing well if it’s worth doing at all. So it seems that Praxic actions elevate the Pragmatic counterpart on a categorical level. Praxis adds value to the object which cannot be measured in the object’s purpose. At this level, a subjective quality becomes noticeable. Different programmers have different ideas of what a “well-formed” function declaration looks like, but as long as it does not cause errors, there is no correct or incorrect way to do this. It’s simply a matter of preference.
You might be in the realm of Praxis when you start making arbitrary decisions about the means which don’t “benefit” the end. You know you’re there when those arbitrary decisions carry the same weight as the actual means to the end.
So what is so great about this blending of Theoria and Pragmatis? Well, we’ve already seen that it elevates the means and the end. Moreover, Praxis elevates the agent. Praxis elevates the merely practical to something closer to the theoretical. By participating in this activity, the agent is not just a craftsman, but an artisan. There’s something artistic added. One of the terms sometimes applied to programmers is “code monkey” (yes, Erasmus, I like fritos, tab, and mountain dew). The WordPress community uses the term “code poet”.
Aristotle and Socrates both tell us that contemplation is the highest activity in which humans can engage. Praxis takes decidedly non-contemplative actions and adds something of a higher order to them. It would be nice to be a professional philosopher, getting paid for contemplation; but as we all know, that doesn’t happen. We need to get jobs, often in a profession. Praxis is the remedy for this state of affairs. It affords us an opportunity to humanize an otherwise mundane and demeaning activity; to give our professional activities meaning. This doesn’t apply across the board, but is especially pertinent in trades like computer sciences, manufacturing, or something involving accounting, to name the first few that come to mind.
Praxis is the practical man’s Theoria.
One final addendum: I composed this entire post over several morning and evening commutes on my Droid Eris using the WordPress application. Since Fabius and Horatius both have (or will shortly have) iPhones, I hope they will download and use the same app. Then maybe we can get the frequency or posts back up.

June 29th, 2010 at 12:20 pm
Thank you, Romulus. I’ve never thought of programming as poetry, but there is definitely an ‘artistic’ quality to the composition of clear, efficient code. I would like to add computational/applied math to your list of trades that need praxis to be satisfying.
On that note, you’ve inspired me to get back to work.
July 19th, 2010 at 12:46 pm
Sorry it took me so long to get to this, with the semester winding down I finally have a bit of time.
I actually groaned, as in out loud, when you started mentioning your love for WordPress.
Your point about Praxis as an remedy for the malaise of the American worker is compelling. I’ve been wondering lately about the possibility of integrating a concern for Praxis into the modern economy. I mean, what would that look like? Would there have to be sacrifices in terms of productivity? Would it involve structural changes in terms of the modern relationship between managers and employees? Would it require the return of a guild system for certain industries or occupations?
I suppose we’ll have to wait for the return of Fawkes to help answer questions like that.
The only part of your very fine piece I would disagree with was this sentence:
“Praxis is the practical man’s Theoria.”
I think you would agree that even the Theorist needs Praxis. The cultivation of virtue is impossible without Praxis, and everyone needs virtue.
July 19th, 2010 at 8:09 pm
Yes, I figured the lead-in involving the particulars of my trade might get a few groans, but it is also the best way (I believe) to drive home my actual reflections, having given you intellectual types something palpable to groan at (out loud or inwardly).
That’s a fascinating speculation about re-integrating Praxis into the modern economy. One can certainly see hints of it already happening, what with such examples as Google’s purportedly heavenly benefits and work environment (although this does not do much to remedy the source of the malaise—the mundane nature of the work itself).
I do not think that productivity would need to be sacrificed, but I think that it would happen nonetheless. The American psyche is too split in the false dichotomy of ‘work and play’ to transition smoothly into such a praxic model. I attribute my facility of transition to the fact that programming started as a hobby and became a career.
The question presents many problems from an employer’s perspective. The praxic employee is certainly the better quality worker, but for many reasons, is not always the most desirable, in our culture. I’m afraid praxis must enter the economy the hard way: at the base of the pyramid; and it must trickle up. There’ll be a few areas where it’s allowed to trickle down, but not many. I imagine mostly small businesses and startups will be able to incorporate praxis into their business models most successfully. What do you think?
I agree with your point about the Theorist needing Praxis, but I may not have made my disdain of the Theorist clear enough (that’s right, Roland and Erasmus). It’s mostly personal preference, but I would cut my throat if I were a theorist (although I would never advocate that anyone do such a thing. There. We’re not liable anymore). Praxis is the only way for me.
Also, there was a small pun in that last sentence that you disagreed with. Or at least a play on words. I don’t think it was supposed to be funny. I don’t know.