If you give me a new hammer, I will suddenly have a strong urge to hit nails with it. As I walk around a hardware store, the tools sing out to me as if they are all Excalibur. They so desperately want me to use all of them. I do not think I am the only person who experiences these feelings.As a programmer I am stricken by this more than others. The world of open source software is like a hardware store where every tool is free. I frequently find myself trying out new and interesting software. Fancy new development tools have been taking much of my attention as of late. It’s scary how much time I have spent following tutorials for various languages and tool kits.
Don’t think it stops there. Recently I have been doing a better job of keeping my ear to the ground in the open source world. I have become enamored with many new frameworks. I’m discovering new features in software I have used for years. Ubuntu and Firefox, the two applications I use more than any others, are going to receive major updates in the very near future. I’m also combining old programs in new ways to great effect. Software has never been this good, and it’s only getting better.
With developing software being easier and more fun than ever, why is it that I haven’t actually been very productive? What was the last software project I actually finished? I don’t even remember. My problem is that I often end up just playing with the tools and not actually getting real work done. I read documentation and fool around enough to learn how to use the tools. Then when the time comes for real work, the novelty has already worn off. I hammered nails for no reason. Then I take a pass at real carpentry because the hammer no longer interests me.
I’m presently working hard to overcome this problem. You may see the fruits of this labor sometime in the future. Despite that, I just can’t help myself from wondering. How many other developers are just playing instead of developing anything useful? Is there something about the design of the software that encourages this behavior? What is the psychology and neurology behind these feelings? Can we make actual productivity more fun than useless play?
One thing seems to be pretty clear from where I’m standing. The people making the tools are getting a lot more work done than the people using them.