3 ms·
I think what the author is really talking about is the "build the simplest thing that could possibly work" approach, which is strongly related to TDD, but can b
by autarch 16y ago
I think what the author is really talking about is the "build the simplest thing that could possibly work" approach, which is strongly related to TDD, but can be done without TDD as well.
It makes for a great motto, but in practice, developers often disagree about what the "simplest thing" actually is. Mostly, I think this is a function of experience. When you have more experience with a type of development, it's much easier to see the "obvious" future needs.
So in the case of a text editor, it's obvious (to me) that a giant string just won't work. That may not be as obvious to someone with less experience.
Determining what the simplest thing that could possibly work is turns out to be anything but simple!
- gfodor 16y agoThanks for posting this. it puts into words something I've long felt to be true. Everyone likes to say they're cutting things down to the simplest thing possible. But the entire premise is subjective. One interesting dynamic thing to note is that nobody notices the things you build in from the beginning that become necessary, but everyone notices the things you build in from the beginning that turn out to be unnecessary. (Similar to how if you clean a house, everyone notices the things you've missed but not the unobvious things you noticed to clean.) I think this psychological trick results in a overly sensitive aversion to "over-engineering", simply because we remember the things that were over-engineered, and never go back to reflect on the "extra work" that turned out to save our project. The sad and depressing realization is that there is no good answer to how much is too much and now little is too little. You have to use your intuition, and you also have to roll the dice. Sometimes you'll win, sometimes you'll lose, but if you're paying attention, in the long run you'll get better at it.
- binaryfinery 16y agoYAGNI.
- binaryfinery 16y agoOh, yeah, of course. You ARE going to need it. You're different. Mod me down for my lack of understanding how awesome you are.