4 ms·
I came here to post something similar. YAGNI has burned me a lot more times than premature optimization. Perhaps it makes more sense to draw a distinction betwe
by RyanMcGreal 14y ago
I came here to post something similar. YAGNI has burned me a lot more times than premature optimization. Perhaps it makes more sense to draw a distinction between designing for flexibility and what we might call naive flexibility, or optimizing for use cases that a more experienced developer would know are highly unlikely to be needed.
- MartinCron 14y agoOf course, you don't (can't) see the times where YAGNI has helped you.
- dasil003 14y agoThis thread is confusing to me so I'm probably misunderstanding a few things. First Ryan's post says he's saying something similar, except it appears to be opposite to the post he's replying to. Then you say you can't see the times where YAGNI helped you, but that's neither true literally and also in spirt. Literally because it wouldn't be YAGNI if you did actually need it. But more importantly I have often discovered some architectural choice or unused feature stubbed out from years prior that saved me a ton of time in the here and now.
- RyanMcGreal 14y agoI was replying to pavel_lishin's parent comment, in which he noted that he has been burned many times by not optimizing early for flexibility: http://news.ycombinator.com/item?id=5003341 http://news.ycombinator.com/item?id=5003341 My experience is similar to pavel_lishin's, and our experiences are contrary to the author of the article. I hope that helps to clarify the first bit, anyway.