4 ms·
I think it depends a lot on two things: Flow and Complexity of the necessary scope. A broken flow is much worse e.g. for a musician, but still very important f
by anotheryou 8y ago
I think it depends a lot on two things: Flow and Complexity of the necessary scope.
A broken flow is much worse e.g. for a musician, but still very important for programmers as well.
A big, special part of the flow can however be the complexity of what you have to keep in mind to make a good next step. Programming can have a lot of concepts and connections to be juggled at the same time and non broken commit needs tons of things to be kept in mind, too small to write a todo for it. Those need to be read in to ram
again after an interruption. I think programming is indeed special here.
Good code minimizes complexity, but you want to map out as much of the complexity in your head before even starting to archive exactly that. Especially at that point you really don't want to be interrupted. A good indicator for work that suffers a lot from interruptions might be when you already turn to some whiteboard just for yourself, because you need to get some little bits of your mind to mentally work on other parts of the project and still have them within reach.
Most other work is much more linear and e.g. reading your last few sentences rather quickly gets going again to write the next.
- slx26 8y agoAgree with your point on complexity, I was thinking along these lines too. I realized that the real problem comes when you have a lot of information in your head, and you are trying to keep everything in mind at the same time, designing the solution of a complex problem, tackling many of the small details in parallel. That requires a lot of focus and a very specific state of mind, and getting distracted when you are at that point is really bad. If you are just going through a buglist or a list of simple tasks, it might not be such a big deal, but most of the time, even when not actively designing, you need to put a lot of effort to get in the right mental state, load into your mental cache the complexity of the codebase you are working in. And realizing this also helped me concentrate better. Sometimes I have trouble starting to code, and I found that focusing on a very simple problem helps you get back on track and you automatically start remembering everything you need for your work. In the past I used to make the mistake of trying to solve everything at the same time, have a perfect plan before starting to write, and I was completely blocked. I think it depends a lot on the person and their mental processes while programming.