Benny Dacks | Blog

Nov/09

3

How Programmers Work

This is why we jump out of our skin every time you tap us on the shoulder.

Now, imagine you were in deep sleep, dreaming away about apples at 3am, and I came bashing into your room and said “Sorry, but we need you to dream about bananas now.” Do you think you could go straight back to sleep in a few seconds, dream about bananas for a bit, and then jump back to your original dream about apples? No, of course not, but this is what managers expect when they throw new tasks at us while we’re busy coding the first one. When this happens we’ve lost the hours we’ve spent on the first dream, we’re completely lost for half an hour, and then we eventually manage to get into the new dream.

RSS Feed
  • The software industry (at least the management) continues to treat the programming process like an assembly line. I think it's a lot more like writing a poem or painting a picture. But even if it is a mechanical process, it takes a lot of setup time to load up your mind with all of the relevent details (Physical psychology call this "working memory"). Then you can work on the problem. If, during this process, you are interrupted, even for a minute or two, the context evaporates and it will take varying amounts of time to recollect all the bits.

    As an implementer (and now a manager myself) I have seen the most productive approach: give the programmer a problem to solve (not the solution) and leave them alone for at least a few days so they have time to think, to act, and to dream :-)
  • palmerj3
    While I agree this can be tough, I've found it to be an acquired skill.
    At my job, I am constantly bombarded with unrelated requests while developing software, and I've learned to manage it most of the time after 2 years.
  • at the end of the work, neither 'banana' or 'apple' would be complete. :)
blog comments powered by Disqus

« FUCK YOU Shark

How to use bacon to make your life incredible and amazing »