What does a professional athlete, a touring musician, and myself have in common? Other than the possibility of a lot of tattoos, probably not much. Although I was an athlete and a musician in my youth, those days have long since passed. We do share one other thing, though: how we prepare.
Arrive at any sporting event or concert early and you’ll see it. Those involved are warming up, getting prepared for the task at hand. Athletes are stretching, taking batting practice, throwing & catching, and walking through game plans. Musicians are doing sound check, going over the set list, and tuning and playing their instruments. So what do I, as a developer, do on par with that?
Something that I’ve been doing for quite some time now is what I refer to as “warm up” coding. It didn’t start as that, though. In the beginning, it was more procrastination than anything else. I knew I had something big ahead of me, but my head just wasn’t in it. So I’d mess around on twitter, go through emails, etc until I felt “ready”. But over time, the wasted time on twitter turned into checking support threads on my plugins, doing small fixes for friends, etc before I began my real “work” for the day.
Then a funny thing happened. I became more productive afterwards.
A few examples:
- checking the support forums for my plugins
- reviewing issues on GitHub for projects I am involved in
- working on small personal projects
- playing with some new WordPress features
Thinking more about it, the process made sense. Does an athlete go at 100% intensity while warming up? No. Does a band play the full set before the actual show? Nope. But doing those things help get your brain (and to a degree, your muscles) ready and prepared.
As a developer, doing those small things first help get my brain into a “coding” mentality. Since my time is at a premium, I need my time to be as productive as possible. While keeping twitter limited to smoke breaks and not having 100 tabs open helps a lot, the wasted time of staring at code was time I simply didn’t have. And the fringe benefits of keeping up on support and feature requests isn’t bad, either.