For the past several months, a client we are working with has been having problems getting their testing environments stable. Some days it works fine, some days someone changes something and it stops working, but it’s a different problem. The developers become frustrated, Product Owners become frustrated and Scrum Masters are trying to solve the problem from various angles (and are also frustrated).
A good working environment?
For those people who do not have day-to-day contact with developers, it’s sometimes difficult to understand the importance of a stable working environment. “They have other environments, why not use them?”. These are the tools they work with everyday. The environment is part of the process to allow them to test and release high-quality software.
A metaphor to explain the importance of a working environment
In order to explain to some business people, I’ve begun to say something like this...
Imagine you come into work and sit down in front of your computer. You look down and see all the keys have been removed from the keyboard. You have to painstakingly put each one back before you can begin working. After lunch you come back to find that someone has taken some keys out and others are moved around. This goes on and on; you never know what you’ll find when you sit down.
Apart from the fact that the technical teams should work together to solve the problem and have stable environments, it’s important to help everyone understand that to keep developers happy is not that difficult (mostly) and giving them the right tools to do their job is the minimum.
If you aren’t a developer and you see one complaining about his working environment, just take a moment to empathise and be grateful that your keyboard seems to work fine and everything is in its place.