Interesting project the past few weeks. Basically I was swapping out a large and central component to what my team is building. It was really tough, to do that and keep everything functional. Normally I ask – what is the least amount I can do to make an improvement? This time, I had to ask, what’s the most I can eliminate and still remain functional?
A genuine challenge, and it was good for me. The first couple of days were hard focus, and tough lessons. A day writing code that I couldn’t even compile until it was done, because it wouldn’t without everything. By 4pm I felt like my brain had bled out through my eyes, and went back to the hotel (I was in NYC) to collapse. At the end of it, I realized I had to do something else first, before I could test and check in.
So I came back and did that. Again, by the end of the 2nd large thing I felt physically exhausted.
Day 3 I put them together and checked in. After that I could do smaller things, figure out what wasn’t working, delete things, make small improvements. Change the way we were doing things – because we didn’t have to follow the way the replaced thing was working anymore.
Once functional, but not beautiful, I picked a new (smaller) UI component, and replaced it with an improved version. Again – hard focus. Desperate to be distracted. It’s like a fight. With the problem – because I’m still figuring out the best way to approach things – and with myself because it’s frustrating, and difficult.
The following week I have to do the same (UI component) thing again. By this time I’m flying – it’s flow. I’ve learned how to do things to build on each other he hard way, and this time I’m cutting CL after CL and I’m zooming. This little project is coming to an end, soon.
But… plans change, and this little project is now obsolete. I’m completely “in the zone” and racing towards the finish, and it’s like a rug being pulled from under me. All of a sudden I’m back to asking – what next, what order. Feeling discouraged. Someone reminds me that it’s the right decision, and what I always thought was right, but somehow when I was “in flow” I forgot.
Some observations about hard focus and flow.
- Hard focus is hard. It’s like a fight, and I would love anyone to distract me at any time.
- It’s also completely exhausting. 4 hours of hard focus will leave me physically and mentally exhausted.
- Flow comes after, it’s the sweet spot before something gets boring but you know what you’re doing.
- Still figuring out new things in flow, but it’s more like building on understanding, “oh I don’t actually need this”, or “this is neater”.
- Things stuck on in hard focus take much longer to move forward on than in flow. In flow a tea-break will do. In hard focus it’s more like lunch or a new day.
- Flow can last for days, effectively. I’ll get tired and stop, but I’ll come back the following day and pick right up again.
- Hard focus is a fight every morning, even more so than the rest of the day.
- Being derailed in the middle of flow, for whatever the reason, is horrible.
- In hard focus, I look at my task list to decide what to do. In flow, I look at my task list to mark off things I’ve done. The next step is always so obvious.
- I’m actually more on top of twitter etc when I’m in “flow” because I have more compile time, more waiting on submit scripts. Distractions are less interesting than what I’m doing, so they never really take me away from it.
Anyway, what can you do? Learn from it, and move on. After a day off, I’m heading back in search of flow.