It resonates with me from a different direction. Up until I've become a dad I could crank out vast amounts of code and dive very deep into a given topic relatively quickly, producing extensive results when being able to focus, but since then I have a strict schedule, can't easily say "I'm coming home a few hours later today" or things like that to conserve momentum, I feel my output drastically reduced.
I'm currently looking for ways to reorganize my way of working so I get a better output and require less compromises of my family.
I’ve found it extremely useful to keep a detailed log of my thoughts and ideas as I’m working on a problem that requires focus. It’s like a thread dump or memory dump of my thinking. Then, if I get interrupted for whatever reason, I can easily go back to the notes and “restore” from the thread dump.
I’ve found various side benefits in addition to being able to focus in shorter time windows. For example:
- it’s useful for dealing with interruptions that are part of work too - e.g. if you’re helping teammates with different projects, or have to switch contexts for other reasons.
- it can be useful as an artifact of work. For example, you’ve spent a lot of time debugging a weird issue and you’re still not making progress, so you can use a second set of eyes. You can share your work notes with a coworker so they can immediately know what you’ve tried, what worked or didn’t, etc. In that context, I like to think of it as “offline pair programming”.
I feel the same. My attention span is half of what it was before I had a kid and learning new topics at work has significantly become harder. If you ever figure out a solution, I would love to hear it.
I'm currently looking for ways to reorganize my way of working so I get a better output and require less compromises of my family.