Still horribly busy with work-work.
But while I’m waiting for a giant database restore and a giant software install to finish, I thought I’d babble about this, my first foray into absurdly long work weeks.
Now, I know, for some of you, this is nothing remarkable; my impression is that I’m lucky to have been working as a programmer as long as I have and not have had to put in hours like this yet. But this is new to me, so have some rambling thoughts on the subject.
I’m finding it useful to compare this to running. It’s nice and concrete and physical.
Just as I can decide to sprint instead of walk, I’ve trained myself to sort of mentally sprint on command. I will think more clearly, solve problems more quickly, type faster; I will be less likely to lose track of what I’m doing.
It’s a rush.
And just like sprinting, this is not sustainable and will kill my pace in the long run. I will even forget to breathe sometimes. If I start off my day like this, I’ll be a zombie by the afternoon.
So I have to be careful, not just about how many hours I’m working, but how I’m working when I’m sitting at the computer. Which means slowing down a bit.
Until recently, I didn’t really know how to slow down. It’s like I’m sprinting, and when I get tired I just fall over and take a nap. Walking was a skill I didn’t have. Until recently, I didn’t know how to code while tired. When I needed a break, I did something that was different from coding like doodling or playing on the piano.
But I’ve recently learned that — gasp — there’s such a thing as taking a break to write different code. The same way there’s such a thing as moving when not sprinting. To approach the whole act of coding in a different, more deliberate sort of way.
This programming book I’ve been reading has been immensely helpful. Without going into too much technical detail, it’s a sort of cookbook filled with common recipes you can use over and over again, so that programming becomes not so much about brain-hurting problem solving and more about calmly looking for an appropriate looking recipe card. Figuring out which recipe I should be using for any given problem and then following the directions there is something I can do while kind of fried. And I’ll feel refreshed afterwards.
I need to learn more ways to code that require less thinking.