There are a handful of interesting ideas wrapped in a self-help program. For example, the idea of testing can be useful, while rules like “all code should have tests,” and “you should always write tests first,” are just silly. I’m sure it’s worked for some people on some projects, but generalizing that to all software development is just charlatanism.