Try Coding Dear Boy

September 29th, 2009

Several times a week I get an emails like, “Can you explain how Flickr does XYZ? I’m hoping there is a nice packaged solution for this.”

XYZ can be anything from “draw tag maps”, to “click in place editing”, to “scale MySQL”.

And I’m always a little baffled as to what to respond.

Until I realized what was going on.

Laziness Impatience Hubris

This is the dark side of the geek virtue of laziness.

The belief that if one just thinks hard enough, or cleverly enough, that problems will have an “elegant solution”. And by “elegant” we mean a solution that doesn’t involve much code. (elegant, such a tricky word, it can also mean writing tons of code for problems that will likely never manifest) And by “think hard and clever”, a good short cut is probably just be to ask someone.

So I’ve come up with a response that looks something like:

“We generally try do the dumbest thing that will work first. And that’s usually as far as we get. Almost everything we do is pretty straightforward, and as such is well documented around the Web, sometimes by us, generally by others. And when we do get fiendishly clever, as we do now and again, it’s usually a highly tuned (read idiosyncratic) solution for the problems we’re trying to solve.”

Method Acting

But what I want to say, in the spirit of the great Laurence Olivier on giving advice to Dustin Hoffman, “My dear boy, why don’t you try coding?”.

Duct Tape

Which is not to say I mind getting these questions, I love talking about this stuff, it’s why I do it. And it’s often amusing to give the, “This is how we do it at Flickr, no really” talk.

But at the end of the day its 0.1% compsci, 0.9% clever ideas, and 99% duct tape. (btw Joel’s The Duct Tape Programmer is a meditation in similar vein)

3 Responses to “Try Coding Dear Boy”

  1. [...] sure why partitioning is thought of as so expensive. It’s annoying, and not for the lazy, but it’s not that [...]

  2. [...] in production since Friday the 13th, January 2006, and is a great example of the Flickr engineering dumbest possible thing that will work design [...]

  3. [...] Try Coding Dear Boy – Laughing Meme"Several times a week I get an emails like, “Can you explain how Flickr does XYZ? I’m hoping there is a nice packaged solution for this.” [but] We generally try do the dumbest thing that will work first. And that’s usually as far as we get." (flickr development softwareinpractice software_development ) [...]