We have replaced fact-based data-backed attitude with a faith-based
wishy-washy peace-hug-freedom hippie agile way, forcing us mechanically
to follow some steps and believe that it will be good for us. Agile has taken
us a long way from where we started at the turn of the century, but there are
problems. From personal experience, I see no difference in the quality of
developers who do TDD and do not. And to be frank, I actually see negative
effect, people who do TDD do not fully think hard about the consequence of
the code they write - I know this could be inflammatory but hand on heart, that
is my experience. I think TDD and agile has given us a safety net that as a
tightrope walker, instead of focusing on our walking technique, we improve the
safety net. As long as we do the motions, we are safe. Unit tests, coverage,
planning poker, retrospective, definition of done, Story, task, creating tickets,
moving tickets. How many bad programmers have you seen that are masters of agile?
There are developers who name themselves “software craftsmen”, especially among those specialized in ruby / elixir. That has historical reasons explained elsewhere. Not that it is the main reason for starting this thread ;-), but I have even been rejected for a job by such a proud
craftsman because of that horrible thinking for myself.