October 17th, 2004

classic beard


November is National Novel Writing Month, sort of a "group therapy for creative people" where people commit to writing 175-page (50,000 word) novels, from scratch, in one month; they've run for several years, and last year 3500 of the 25000 participants actually finished novels (one of whom has, a few rewrites later, not only been published, but won an award for her work.)

A recent thread on one of the scheme-loonies lists brought up the point that coding is like thinking but doing it rigorously enough to take notes; an unrelated discussion of writing talked about deeply imagining a world, and then writing it all down. Other thoughts on the use of code to communicate with other coders (rather than merely computers) swirled around that - and if, in an expressive language (like scheme or python) a line or statement is approximately a sentence (there are pieces of code where statements are more like paragraphs; like Kafka, they are extraordinarily difficult for the reader, and not a widespread approach) we can simply consider the "novel" to be the equivalent of roughly 6000 lines of code.

Is this comparison fair? If so, only by accident. At first glance, I'm not sure what, in the abstract, writing 6000 lines of code in a month really means. Mark Pilgrim's feedparser, eikeon's rdflib, and one of my larger document shuffling subsystems at work are all around half that, and they all have a lot more time in them -- though I suspect they all have in common a big up-front burst followed by a bunch of smaller changes. I've written about 7000 lines of personal code in my python-learning efforts over the last year, another 9000 in QA support code - so writing 6000 in one month would be a bit of a sprint, but not insane, at first glance.

NaNoWriMo is at least partly about giving oneself explicit daily pressure, to help get one's stride, to get the words *out* instead of continuing to meditate on them. Arguably, it's an explicit "bias towards execution". Perhaps the equivalent for software works too, thus, NaCoWriMo...

This all assumes you have something interesting to code; so what do you do with it once November is done (aside from, well, using it)? Well, you'd then have two weeks to prepare a submission for CodeCon, which is certainly quite the audience...

Now to come up with a project. And a reason to think I'd be able to pull it off while going through an end-of-release crunch at work :-)
  • Current Mood
    lightly addled
  • Tags