How I learnt about not compromising
Sometimes it is difficult not to compromise and stick to what you need to.
I have just finished re-reading the book The Spark, a fictional account of a sports agent and his journey to learn about Cirque de Soleil from the inside.
As part of that journey, he gets to try out a number of the different performance skills but also meet lots of people from behind the scenes. At one point, he meets one of the riggers who works on and designs the intricate equipment that is required for the performance of each show. He makes an observation about it being a balance between safety and the artistic appearance of the equipment. He is quickly corrected:
"You mean a balance between safety and the artistic? No! That is the most common misconception of what we do. There can be NO compromise on safety and NO compromise on appearance. We must be 100 per cent safe, all the time, AND 100 per cent aesthetic. And that is what makes it so challenging. That's what forces us to be creative no compromise!"
They take a long time to ensure that not only is everyone totally safe but what they design becomes part of the show and doesn't stick out. In some ways it is still a balance but the balance is at the extreme with no compromises.
When we are developing software there tends to be a balance between speed of development and quality, especially depending on how and where the software is used. If it is used in a life critical scenario then it tends to favour quality/correctness (hopefully!) over speed.
It can often be easy to quickly deliver something, a new feature for example, however it takes time to ensure it is correct, both in terms of development and testing. There is often a pull from the business to deliver something quickly and a pull from development, or QA, to ensure it is right.
In most cases it is worth spending a bit more time to ensure that it is right.
The amount that the balance tilts in one direction tends to be governed by how much people are willing to compromise on quality. If the quality has to be as close to 100 percent as possible then it will tend to take longer.
When time is one of the axes it is very difficult, if not impossible, to have a perfect balance where at least one of speed and quality are not compromised.