Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I would disagree about TDD. I am continuously surprised when I learn that yet another one of my teammates practices TDD. TL;DR: TDD is dead; long live TDD. I think that TDD will remain viable in enterprise programmer for decades, perhaps permanently, thanks to "vibe-coding", where LLMs eventually produce most code for CRUD projects (the vast majority of enterprise programming).


Just to be clear, do you mean full-dogma Rails tutorial write a bunch of trivial tests before writing code TDD?


Yes, exactly this. I never bought into TDD, but I can understand that it brings comfort for many normie enterprise CRUD developers... of which I am one myself!


I despise it because I've seen some absolutely HORRIBLE designs that excessively separate concerns (that are actually linked and shouldn't be) in the name of "testability". I would rather maintain 50 lines of clear idiomatic code than 1000 lines of TDD code salad full of 3 line functions that each take a bunch of fragile mocks.

It's also my experience that a few well written integration tests are more useful and catch more actual bugs than a million unit tests. This is especially true of web apps which are inherently highly stateful.

The most powerful design paradigm I have ever found is to spend the first, say, 10-20% of my time making a rough prototype. Not with an eye of actually using a single line of it (although it happens) but just to do the quickest and dirtiest possible exploration of what the actual problem is.


> excessively separate concerns (that are actually linked and shouldn't be)

you mean concerns that should be seperated but they did it in a wrong way?


When you say TDD do you meant test driven design or the test first design actually practice when “doing TDD”




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: