5 Whys is a blog about technical leadership in the software world.

Dev Anti Pattern: Unworkable Machine


 A developer in your team always has problems with their machine, to the point where they are less productive, and always trying to fix something before they can get things done. Usually this gets noticed during stressful times in the project's life.

Common Phrases:


  • "It's happening again"
  • "Yeah I'm just waiting for my editor to stop hanging"
  • "I think [software] doesn't like me anymore"
  • "Have you seen this cool thing?"
  • "Ever come across this error?"

Possible Reasons:


  • Boredom. The developer keeps installing weird f&$ing s$%t on their machine that has nothing to do with their work, that may have one or more collisions with the software they actually need to get things done with. Usually common with developers that have a very low threshold for boredom, who always seek things to install on their machine.
  • Bug Recreation. The developer, in their attempt to recreate a hard to find bug, have turned their machine into a testing machine, so as to bring it to just the right circumstances for that bug to appear. 
  • Multiple developers using the same machine (even with different users). Developers will f&$ck up a machine to fit just their needs. with no concern for any other user on that machine.

How to fix it:

Take them aside an explain the problem in productivity. Ask them to come up with a way where they will not screw up their machine due to this way of working.

possibilities are endless, and may include among others:

  • Using a virtual machine
  • having a secondary trial machine
  • dual booting the machine 
  • etc.





Video - Pair Programming with a Guitar

Do Not Fear Confrontation