Posts tagged ‘Software Craftmanship’

2012-03-07

Carpenter Programmer

So this is my third attempt at writing about being both a carpenter and a programmer. The first attempt started as a laundry list of attributes of carpenters and programmers and then a pitiful attempt to discuss them (sound of shredding paper). The second attempt started as a mind map of the skills and behaviours of each task then I attempted to write about the commonalities….(sound of shredding paper). This time there are no lists, just a stream of consciousness dumped to the editor for later manipulation. I have certainly thought about this enough, and hopefully managed to pull some coherency out of the pile that was.

If you follow the Software Craftmanship movement then this post is a no-brainer. Programming requires craftsmen as much as carpentry does so there is no need to contrast the two. And that would be a cop out and I rarely take the easy path.

Fundamentally, it is about the task and how it makes me feel. Whether I am writing a new function for a software package, or building a bookshelf for my daughter, it is the pleasure I get that counts. In the end whether it is a product of my mind or a product of my hands, I get to step back and admire my creation. I also get to identify the flaws and (hopefully) learn to do better next time.

I was fortunate to be born with a decent mind, spatial sense and dexterity. I also had some great role models. My father is a research scientist, author, carpenter, artist, botanist, musician and expert on historic building methods. His father was a medical doctor and war historian. I have an amazing collection of war histories and biographies on my bookshelves and a surprising amount of knowledge about the conflicts of the late 19th and early 20th centuries courtesy of him. My mother’s father was a mechanical genius and life long athlete. And the women were no slouches either and what I remember them most for is a love of reading, food and cooking. Oh, and impeccable table manners.

Where I am going with this is, when someone raises their eyebrows at carpenter and programmer, or a double major of computer  studies and philosophy, I am perplexed. My entire life I have been taught you can do anything you want and should definitely do the things you love. The only caveat I was ever given was that you should never pursue anything at the expense of others.

The same attributes that make me a good carpenter also make me a good programmer and they don’t make me a good vacuum salesman. And I also know that I don’t have to be good at something to love it because I am a poor singer and I still love doing it…usually alone so as not to irritate others.

In the end carpentry and programming make me happy, and being happy is good.

%d bloggers like this: