All tech choices are in reality based on the whims of the developers who make the decision. I see developers make so called “rational” decisions all the time but other developers in the same situation would make very different “rational” decisions. The reason is because different developers value things differently and no amount of “rational” decision making can change that. It’s exactly the same reason why we have politics. People value different things and no “rational” algorithm can fix that.