Code & Poetry: Interview with Pablo Diaz-Gutierrez
Here in San Francisco, they say that code is poetry and that not being able to code in the Bay Area is like not speaking Spanish in LA. Maybe we're not a town full of techies and artists, but more basically, a town full of writers, just as I've always suspected.
I wanted to know exactly what coding has in common with the kinds of writing I teach, stuff like writing novels, dissertations, and marketing material. Lucky for me, I know Pablo Diaz-Gutierrez. Pablo both blogs and develops code in his role as Technical Co-Founder of Appfluence, makers of Priority Matrix, a simple and effective management software for busy people. He says that the company's goal is "to help people think through everything they have to do and choose to do the most important tasks first, to avoid being buried in the clutter." Sounds like a good mission for writers!
Pablo and I talked about code, process, and sexy cars for the interview below. We also talked about time management for writers: that interview will appear soon on the Appfluence Blog.
Kristy Lin Billuni: So let's talk about these two kinds of writing: programming and blogging. Do you find you use the same skills for blogging and programming?
Pablo Diaz-Gutierrez: Well, I am the same person doing both jobs, so it's natural that I apply similar principles to both, whether I am aware of it or not. For example, I like to think in terms of form vs content. As I see it, in writing as well as in coding, form is a necessary part of both kinds of expression, but working on improving it beyond a certain point only brings diminishing returns. When coding, you have to ensure that the program is correct, so it can be read by a computer to perform its job, and also it has to be clear enough so that another programmer can understand it. Nothing is more frustrating than reading over someone else's ugly, convoluted code. There's a saying that goes something like "write your code as if it's going to be inherited by a deranged psychopath that knows where you live." I stand by that. But in the end, what really matters is that your code produces the expected result, just like when I write for our blog, I want to make sure that the message gets to the reader, so content is king.
KLB: So form becomes vital because form is what makes the content approachable. Can you say more about that? How do you know when code is "good enough?" or when a blog post is ready to publish?
PDG: That's a really good question. Perhaps because I am a better programmer than I am a writer, I agonize over this while coding much more than while blogging. Unfortunately, in a startup, things change so fast, and need to be done so quickly, that very often the only way to finish the job is by consciously cutting corners and doing things that you're not happy with. This usually leads to incurring so-called technical debt: bad decisions taken in the name of urgency that you have to pay back in the future plus interest. Programmers spend most of their time not writing new code but adapting and modifying the existing one, so when you take shortcuts, you have to be aware that they don't come for free.
KLB: That sounds a lot like the writing skills I teach novelists and bloggers. The real work comes in the editing phase. So code really is like poetry!
PDG: Well, programmers love haiku, even if (like me) we're not good at writing it. Same thing with limericks. I think it is because they're short, playful, and structured, so you can focus on content over form and be playful with words without necessarily being a good poet.
KLB: I'll argue that a short, playful, structured poem qualifies as good. How does the coding process compare to what you do when you write for the Appfluence blog?
PDG: I follow a similar process: I start sketching out the central idea, splitting into its main points and how they tie to each other, and then I write a first draft. After that, it is an arduous process of incrementally improving bit by bit until I'm not too embarrassed to show someone. I like a book called On Writing Well, as it offers a lot of great tips to assist in this process. Coming from a technical background, I value conciseness, so my favorite trick is to see if you can drop parts of a sentence without losing the meaning, and if so, trimming that part.
KLB: That sounds familiar. The best lessons in editing focus on reducing words, redundancies, and over-dressed content.
PDG: Right. There is beauty in function, even if beauty is not the goal. For example, I instinctively find boxy cars ugly, because I can't stop thinking about how unnecessarily inefficient they are because of the added aerodynamic drag. The same is true for coding, where less is more and form is important only to the point that a) the program is computer-readable and b) other programmers can easily understand it.
KLB: So clean code and engaging blog posts are like sexy cars?
PDG: Exactly. Sleek, aerodynamic, and fast moving!
Learn to write sleek, sexy blog posts and marketing material in a free Private Session with The Sexy Grammarian. In Private Sessions, Kristy Lin Billuni, aka The Sexy G, discusses process with writers and brainstorms ideas for moving the work forward. You always leave with homework and inspiration, and she’s goal-oriented in her approach.