What are your thoughts on TDD

Sushrut Chafadker
9 replies
A fellow maker friend of mine is a big fan of Test Driven Development (TDD). What do people in indie hacker community think about that, I am curious :)

Replies

Henry Walker
Great if you’re spending maybe $200k+ per month on engineers for a project. Much less and it’s counterproductive. That’s just my experience. I’m sure it’s nuanced.
Sushrut Chafadker
@henwalkco 200 $ per month is quite a low amount considering any app usually demands 1 full time dev per project. Isnt it? I had the experience that for one project we tried to move from normal project to TDD and that just killed it😅 I havent really seen the full blown benefit yet but I might ne wrong
Svitlana Palamarchuk
I believe Test-Driven Development (TDD) can be a very powerful tool in software development. It encourages clear thought before coding, helps ensure code correctness, and can improve the design by encouraging modularization and decoupling. Plus, having tests in place is a great safety net for future changes. However, it may not suit every context and does require an initial time investment. So, it's a balance and largely depends on the specific project, the complexity of the software, and the team's familiarity with TDD.
Sushrut Chafadker
@svitlana_palamarchuk makes sense, what kind of complexity in apps do you think warrants tdd. My observation has been that for small, fast iterations it is way too much pf a hassel
Patrick Cook
It may not be appropriate in all situations and does necessitate an initial time investment.
Sushrut Chafadker
@pcooki_3 think so too, quite a few different opinions, in which cases do you think it makes sense of pays off to do project with TDD makes sense
Bedford West
To me, this is one of those "it's great when done well" sort of things. For engineers who are experienced in the technique and understand how to do it effectively, I think TDD is amazing and encourage it heavily. When it's not well understood and there isn't sufficient guidance, however, it can introduce unnecessary complexity and project delays.