When I sat through years of high-school English spent mining Shakespeare for obscure sexual metaphors, I never thought I'd find myself saying this - so let it be recorded here for posterity:

I'm actually enjoying Creative Writing.

What gives?

  • Creative Writing is active education, by contrast with the passive "I'm going to talk at you for a couple of hours, mmmkay?" model usually foisted on otherwise highly interested students.
  • If you're one of the 2.5 or so stalwarts who have followed my blog through its previous incarnations here and here, you know that I wrote In Silico as part of NaNoWriMo. (If you didn't follow my blog back then: I made the 50k word mark, so there.)
  • It's not programming. I mean, I love programming, but I already spend the majority of my waking hours on it.

Yesterday's Creative Writing class consisted of our first poetry workshop session, wherein we read and critiqued poems written by our fellow classmates. Critique is difficult to get right, and is not synonymous with criticism; good critique should point out obvious flaws, but it should also aid the recipient in identifying and building upon what works. Furthermore, the critique reflects the experience of the critic; it is hopefully not a stretch to suggest that one's capacity for precision and insight is directly correlated with said experience. This was made obvious by the remarks of comparatively more literate members of the class, who were able to identify linguistic shortcomings, appreciate highly effective devices, and suggest alternate interpretations with much greater ease than my poor CS-addled brain could ever hope to.

This advice could be applied equally well to the code review process. A bad review process is typically one-sided; the reviewer imposes their every preference on the hapless reviewee, who unquestioningly and silently does their master's bidding. A better review process is two-sided. The reviewee feels free to respond, to push back where they disagree; the review process becomes more conversational. The best review process, I'll argue, is many-sided - much like the workshop session in Creative Writing, it admits critique from all corners. More importantly, it allows reviewers to critique each other, to agree with common praises or misgivings, to debate contentious points. The reviewee is not left out of this process; rather, they are freely invited to defend choices made, much like the reviewee in the two-sided review. In short: the best review process is meta-critique.