I got stuck several weeks ago. I was working on a fascinating, but difficult, post and had all kinds of other interesting things going on. Somewhere along the way, on thing after another got a little bigger, a little harder, a little more intertwined than I had planned. As I started to work on all of these tasks, I got lost without even realizing it. I was pushing forward and making progress, but in a really inefficient manner. In short I was thrashing.
Thrashing is a form of getting stuck in that you aren't going where you want to. It's worse than getting traditionally stuck because all of the activity has the illusion of progress. As a Big Swinging Developer (or Big Swinging Anything), the ability to self-manage is critical. Self-management isn't just about knowing what to do, however. It's also about recognizing that you're doing the wrong thing and that comes only through continuously monitoring both your activities *and* your progress. This is really easy to do for others — how many times have you looked at what someone else is doing and asked, "Why are you doing that?" just to have them give you a long-winded explanation that they slowly realize makes no sense? The whole reason that they were doing the "wrong thing" in the first place is that it looked like the "right thing" at the time.
It's easy to get stuck a little at a time. Actually, I'd argue that it's easiest to get stuck a little at a time by compromising a bit or not course-correcting often enough. Then you face two challenges: recognizing you're stuck and then getting unstuck. Here are my suggestions for both.
To recognize that you're stuck (or off course) compare where you are with where you thought you'd be on a periodic basis. If you're off by more than you can fix before your next measurement then it's a warning sign. If you miss by that amount twice in a row, then it's a problem. Notice that the shorter your measurement cycle, the easier it is to get back on track.
To get unstuck, there are 3 important steps. The first step is to stop. Once you recognize that you're stuck or thrashing, just stop whatever you're doing so you don't end up even further off course. Step 2 is to reevaluate where you want to end up. From the time you originally planned a goal until the time you got stuck things may have changed. Instead of blindly reorienting and pressing forward, make sure you know where you want to go. The final step is to work backwards from your newly established goal and take the smallest step in that direction that you can.
In my case, it was brought to my attention that I had neither cooked nor written anything that interested me in a long time. These are two of my favorite activities and looking back on the number of days that I postponed doing either, I realize that I was going off course. Last night I cooked Moorish pork kabobs that had a non-trivial amount of saffron, and today I'm getting back into my writing routine.
If you have other suggestions on either tracking your progress or course correcting, just leave a comment below!
Another blog post I just read that complements this one: http://litemind.com/thinking-traps/