5 ms·
"If I propose something and your thought-terminating cliche response is some form of "YAGNI," I hate you." This has been my experience too. While the concept
by jonahx 10y ago
"If I propose something and your thought-terminating cliche response is some form of "YAGNI," I hate you."
This has been my experience too. While the concept has value, I find most people that throw the term around do so as a justification for not thinking much.
To armchair psychologize a bit, I think that enthusiastically embracing an acronym which, whatever its conceptual merits, is just so lame-sounding correlates negatively with taste, and taste correlates, albeit imperfectly, with programming skill, especially the skill of writing readable code.
- gsmethells 10y agoSo you're saying the DRY Principle is not worth harping on? https://en.wikipedia.org/wiki/Don%27t_repeat_yourself https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
- jonahx 10y agoNah, DRY >> YAGNI. It's a short, easily pronounced English word whose meaning is a nice metaphorical fit for the concept expressed by the acronym. You can argue acronyms in general are lame, but I'm not taking that hard line.
- stcredzero 10y agoApplying YAGNI to security should be an immediate red flag. As I say in a cousin comment, good taste is just 3rd order laziness. You're doing less by avoiding future trouble. To armchair psychologize a bit, I think that enthusiastically embracing an acronym which, whatever its conceptual merits, is just so lame-sounding correlates negatively with taste Wouldn't you prioritize conceptual taste over aesthetic taste? YAGNI probably sounds goofy because it was created in the late 90's. It was part of the original Extreme Programming formula. The concept is as solid as such concepts get, however.
- jonahx 10y ago> Wouldn't you prioritize conceptual taste over aesthetic taste? YAGNI probably sounds goofy because it was created in the late 90's. It was part of the original Extreme Programming formula. Sure, my point was they're related (usually). > The concept is as solid as such concepts get, however. It's useful in many cases, yes. Solid? No. It requires far too much attention to context, and experience, to apply it wisely all the time. That is to say, YAGNI is invoked in defense of bad decisions as often as it is of good ones. That was the grandparent's point.
- stcredzero 10y agoSure, my point was they're related (usually). Sounds a little like you generally stop at the aesthetic level. The map isn't the territory, and the signals aren't the actual internal mental state of the person. Since you say "usually," how have you been accumulating data about this relationship? It's useful in many cases, yes. Solid? No. It requires far too much attention to context, and experience, to apply it wisely all the time. Hmmm. You should be making exactly this sort of decision all the time. The major task of a developer, as I see it after doing this for 36 years, is to pay a lot of attention to context and apply what you've learned by experience wisely. Erring on the side of caution and waiting until there's evidence you need something isn't a bad 1st order heuristic. I would label people who consistently stop at the 1st order heuristic and go no farther as "shallow."
- jonahx 10y ago> Sounds a little like you generally stop at the aesthetic level. No, it doesn't sound like that at all. You've just decided to read it that way and make an ad-hominem argument instead of engaging with the statement itself. > Hmmm. You should be making exactly this sort of decision all the time. The major task of a developer, as I see it after doing this for 36 years, is to pay a lot of attention to context and apply what you've learned by experience wisely. Erring on the side of caution and waiting until there's evidence you need something isn't a bad 1st order heuristic. I would label people who consistently stop at the 1st order heuristic and go no farther as "shallow." I agree with everything you said, and have not said anything that contradicts it. It's a good heuristic. And it's only that. And lots of people apply it poorly.