Sunday, January 3, 2010

Duct Tape Programmer

Joel Spolsky blogged on this subject some time ago. He describes as duct tape programmer as "the kind of programmer who is hard at work building the future, and making useful things so that people can do stuff. He is the guy you want on your team building go-carts, because he has two favorite tools: duct tape and WD-40. And he will wield them elegantly even as your go-cart is careening down the hill at a mile a minute. This will happen while other programmers are still at the starting line arguing over whether to use titanium or some kind of space-age composite material that Boeing is using in the 787 Dreamliner."

I consider myself this type of programmer. I love nothing better than making a tool that helps people get things done. I view things simply and want to make reliable systems which support the goals of the corporation while minimizing the overall cost of ownership.

". . . wield them elegantly even as your go-cart is careening down the hill at a mile a minute." I'm especially interested in this statement. I think that most IT departments don't (or won't) admit the speed at which the business needs to operate. They spend months developing elegant, sophisticated, complex systems while the business is using Excel and Access to actually do things. Often when these complex systems are finally implemented (something like 70% never are), they are not what the business wants or needs and are probably out of date. Here, I'm a fan of iterative programming (agile programming being a variant). Give the users a tool which will help them with their business process, is easy to maintain and upgrade and then iterate new features and functionality into it.

The key to these types of implementations is that users often don't know or can't define what they need, but they definitely can tell you what they don't like. Give them something which meets a good percentage of their needs, let them use it, listen to them, and the modify the system or give them new features which meet more of their needs.

Get out the duct tape and the WD-40 and fix things as they are used. Put the tools into their hands at the speed with which they need them and you will succeed.

No comments:

Post a Comment