3 ms·
Say you’re piloting a sailboat downwind and there’s an obstacle between you and your destination. You will need to plot a course to circumvent the obstacle. You
by gkop 4y ago
Say you’re piloting a sailboat downwind and there’s an obstacle between you and your destination. You will need to plot a course to circumvent the obstacle. You have a choice to turn the boat toward the wind (edit: not through the the wind, just toward it) to pass the obstacle on one side, or away from the wind to pass on the other side. One of these two options retains optionality at little or no cost, that’s likely to be the better choice. Likewise in software, look for zero cost opportunities to retain optionality (eg. free ways to defer decisions till later).
This is a bit sophisticated to teach junior developers, so we just teach them “consider the implications of your design decisions with regard to supporting future needs, including those not yet known.” Yes, you can certainly over-index on this dimension, but that doesn’t make it a useless or necessarily harmful consideration. (Not implying the article disagrees with this; it does appear to be satire)
- Aeolun 4y ago> One of these two options retains optionality at little or no cost I may misunderstand your analogy here, but it seems to me that retaining optionality has a significant up-front cost here that may never be realized?
- gkop 4y agoYou turn toward the wind, then you’ll be more upwind until later. So you retain optionality by having “more room to go downwind”. (Please if we have a more experienced sailor here, do explain it better!) What up-front cost are you thinking of? A non-sailing version might be say you’re on a bicycle, and you can drop down the mountain now and go lateral later, or go lateral now and drop down later, and either way you arrive at your destination after the same time and effort. Going lateral now retains optionality. Very open to hearing better analogies for the same concept! Perhaps from the world of business?
- Aeolun 4y agoI interpreted ‘turning towards the wind’ as actually trying to sail against the direction of the wind (very hard/annoying). So trying to do that first for gains you may never realize is not a great idea. Like trying to drive your bike uphill so that may easily go downhill at some later point in time. The biking example makes it clearer what you meant (to me anyhow).
- gkop 4y agoAh yes I could have been more clear. Edited.
- diatone 4y agoIn the subset of competitive video games known as fighting games, like Street Fighter, there is a slang term for a very similar tactic, called an “option select”[0]. Put simply: you’re maximising the expected value of your decision, by expanding the possibility space of what can occur after your decision, instead of eagerly (and maybe mistakenly!) committing to any particular possibility and locking yourself into some subset of that possibility space. Go figure that I’ve overheard and used “option select” in the context of technical decisions at work, among coworkers who play fighting games. [0]: https://youtu.be/rBLpz369i7Q https://youtu.be/rBLpz369i7Q