Hacker News new | ask | show | jobs
by galaxyLogic 1011 days ago
Exactly. My favorite metaphor for SW-development is playing chess. When you make a move, a decision, new choices, new decisions to make, open up and other ones may no longer be practical.

What you decide and do now, affects what you can and must decide next.

Except unlike in chess we don't really have the exact rules of the game anywhere. Still we must make choices which affect what moves can be chosen later.

It is also like building a house, once you decide how to build the ground-floor and what it stands on, that greatly affects how the floors above that can be built (not too heavy, not too light etc.).

It is often difficult to understand all the consequences of a design decision, what can be done and chosen after that, until you actually implement that design.

1 comments

Path dependence.
I googled path-dependency https://www.investopedia.com/terms/p/path-dependency.asp#:~:....

It happens all the time of course. But I wonder if it is a bit of a trivial concept. Of course what was done before will affect what is the optimal choice now.

But I agree it is good to keep it in mind -- when you are making the current decisions. If I decide this way now, what is the cost of my available options in the future? Pretty much the way chess-players evaluate their possible moves.