Despite claims, TDD is not a silver bullet. And just like any technique it works for some people but not for all. It heavily depends on way of thinking, habits and experience.
By the way: functional programming approaches are far more efficient than TDD in regards to reducing number of bugs and number of necessary tests. Where TDD reduces bugs by half, FP reduces them by at least an order of magnitude.
I'm speaking from my own experience. Couple years ago I've switched to FP-inspired style which leverages monads to represent "special states" (missing value, value or error, not-yet-available value). This allowed me to eliminate whole classes of errors from my code and heavily reduced number of necessary tests. In vast majority of cases if code compiles - it works and tests are necessary only to check business-level requirements (for example, input value constraints).
You may find more details in my blog here, at dev.to.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Despite claims, TDD is not a silver bullet. And just like any technique it works for some people but not for all. It heavily depends on way of thinking, habits and experience.
By the way: functional programming approaches are far more efficient than TDD in regards to reducing number of bugs and number of necessary tests. Where TDD reduces bugs by half, FP reduces them by at least an order of magnitude.
Could you post some links to evidence that FP reduces programming errors by so much please?
I'm speaking from my own experience. Couple years ago I've switched to FP-inspired style which leverages monads to represent "special states" (missing value, value or error, not-yet-available value). This allowed me to eliminate whole classes of errors from my code and heavily reduced number of necessary tests. In vast majority of cases if code compiles - it works and tests are necessary only to check business-level requirements (for example, input value constraints).
You may find more details in my blog here, at dev.to.