4 ms·
TDD. Agile.
by TylerE 2y ago
TDD. Agile.
- throwaway2037 2y agoI 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).
- TylerE 2y agoJust to be clear, do you mean full-dogma Rails tutorial write a bunch of trivial tests before writing code TDD?
- throwaway2037 2y agoYes, 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!
- TylerE 2y agoI 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.
- cylemons 2y ago> 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?
- lovich 2y agoWhen you say TDD do you meant test driven design or the test first design actually practice when “doing TDD”