So here's something I've been wondering about.
I go through cycles of productivity like most hackers do. Some days I get a lot done while others are mostly wasted. Some of my productive days involve a lot of output like e-mail, code, discussion, debugging, and so on. Other times it's a lof of input: reading, listening, etc. Once in while I manage to have a day in which the two seem to balance out and I go home feeling like I've accomplished three weeks wort of work.
Is it just me? Or does this happen to other people too? Is that balance a necessary part of being productive?
Posted by jzawodn at February 12, 2003 09:36 PM
Some days you're the bug, and others you're the windshield
http://www.trmk.org/~adam/blog/archive/000023.html
My perspective was a little different because I was looking only at tangible "output" and not even considering input. But I'll definitely frame it that way next time I'm considering the extremes of my productivity.
Joel addressed this in one of his columns.
Excelent reading:
http://www.joelonsoftware.com/articles/fog0000000339.html
It's not just you ;)
"productive" is a relative term. Relative to the tasks you need to have completed. Input days can more be far more important and valuable towards accomplishing a task. I wouldn't consider a day spent researching an infrustructure issue to make informed decisions any less a productive task than writing a project plan, or "doing" the project.
A wholistic worldview would not delineate along those lines.* And an introspective one would consider the days unbalanced towards input to be more productive. I tend to fall within the middle of those perspectives.
*is that a redundant sentence?
On the one hand, development does tend to be a pretty uneven process. Like someone else said, productivity is not that easy to measure despite what the government thinks. Rewriting something you just wrote in a more elegent way might be productive in terms of future maintenance, then again, it might be a waste of time. Only time will tell.
If your talking about motivation then it's different -- everyday should at least feel like it has the potential to be super productive day. If not, you probably need more coffee ;-)
Open brain, pour stuff in. Let it compost. Harvest the stuff that grows. Repeat.
The challenge I have on the input side is discriminating between stuff that might be useful, and stuff that's really just a bright, shiny, intellectual toy.
I too am like that, but I think that would be normal for most anyone. Personally, I just don't feel like coding each and every day, so I need to take a break and do something else. Other days, I want to code, and know what I want to make, but I don't know how - so on those days, I read and research. And finally, there are those glorious days where I just code, because I can, and am very productive.
In Canada we call that fucking the dog.
Steven Covy calls it sharpening the axe. I like ours better.