Uncle Bob Says : Fearless competence
You staring your screen, there is code on your screen someone wrote it. And that code is mess, start to think briefly in your mind maybe i should clean it but next thought overrides immediately is “i am not touching it”. Cause you know it will break if you touch it and when you break it, it becomes yours. So you walk away, I am not gonna be the one clean this one. And Uncle bob submit to you if that is reaction to the code, the only thing happen to that code is that must rot. Because you will change it from time to time but will change it no way to minimize your personal risk not to improve the overall structure of software and that will always be wrong choice for the system. And no one will ever clean it, it will get worse and worse with time and whole team will slow down.
Are you afraid to touch the code? Are you afraid to improve the code? Do you have that little echo saying “oh its ain’t broke don’t fix it”.
How do we get “Fearless competence”?, Tests.
Q. 6:09:38 Has seen over the years that unit test can be created so coupled to the system that if you change anything in the system, a whole bunch of test break.
A. this is called “Fragile test problem” is a problem that is experienced by people who are new to TDD, if you only have been doing TDD for a year or 2years then very likely come across to “Fragile test problem”. And the reason that you come across it that as you not yet realized that test is a part of system and have to be designed as part of system.