Op-Ed: Methodologies aren’t all bad, Gavin King
Earlier this week, Ceylon lead developer Gavin King posted on the project’s official blog with a post titled ‘The Methodology Luddite Manifesto’, in which he triumphantly proclaims how little time he has for “certified scum masters or other such expensive accoutrements”. (The post appears to have disappeared from the blog’s homepage, though it’s still available for now.)
I'm a proud methodology hater. As soon as you guys start talking about process, about how to build software, my eyes glaze over. I can't prove it, but I at least hypothesize that the practical usefulness of a methodology is inversely correlated to how detailed and prescriptive it is. Therefore the most useful methodology is the simplest, least prescriptive one. That would be the null methodology, simply stated as:
Please stop wasting valuable electrons with your silly amateur philosophizing and go and do some real work!
By the end of the blog post, King makes it so clear that he doesn’t have any more time to waste on discussion of methodologies that he abandons prose and switches to bullet points to “boil it down to some dumb shit that would like almost fit in twitter if it were three times as dumb and brief”.
King’s sentiments are far from original. As an anonymous
commenter adds below the post, back in March 2011 Zed Shaw wrote an
equally foul-mouthed (but considerably more light-hearted) blog post extolling
the virtues of a new methodology: “Programming, Motherfucker”. The
joke was so good that it even went on to become a t-shirt
And, yes, while there’s something to be said about reducing bureaucracy and simply getting the work done, King and Shaw are missing the point. These methodologies aren’t designed for lone coders working on their pet projects, but for commercial teams, to simply “go and do some real work” would result in a complete mess.
Not to mention that many of these methodologies are designed to ensure customers are fully satisfied with the resulting product; King, on the other hand, appears to dismiss this notion, writing: “Your users are begging for bells and whistles and optional semicolons. Tell them you're really busy [and] never find the time.”
To his credit, King is doing some interesting work with Ceylon, which could well turn out to be a viable JVM language. To think that his situation - working with a tight-knit team on a language without a specific customer or deadline - applies to everyone, however, is hopelessly misguided.