Most of debugging I do or help with has nothing to do with code we develop. TDD does a great job here. What usually happens is “it should be working” and the problem sits in a library that is used. Sometimes there’s an issue open for years, so it’s well known but still not solved. This is why I prefer well known, battle proven, well supported frameworks and libs over sometimes impressive but small libs with very few, sometimes one contributor.
A tendency to write a new lib every weekend to grow your GitHub repo collection is a road to nowhere.
Most of debugging I do or help with has nothing to do with code we develop. TDD does a great job here. What usually happens is “it should be working” and the problem sits in a library that is used. Sometimes there’s an issue open for years, so it’s well known but still not solved. This is why I prefer well known, battle proven, well supported frameworks and libs over sometimes impressive but small libs with very few, sometimes one contributor.
A tendency to write a new lib every weekend to grow your GitHub repo collection is a road to nowhere.