higgs-boson wrote:*Why can we deprecate API functions easily but fail to dump next-to-last century's nonsensical laws and regulations?! It's like enhancing yesterday's .view(void) method with ten mandatory and sixty optional arguments, seven intentional (and two hundred eighty-one non-intentional) side-effects and customizations for sixteen different compilers.
1. Because we want people born and educated in the past to continue to be able to operate in society, whereas in API "design" the idea of backward compatibility went out with the CRT monitor, and
Ah, wait. Good intentions, yes. But the outcome?
For example, all guys who really know and understand my country's tax law are professionals, but everyone living in marriage or freelance or <some more reasons> have to sign their annual tax declaration and take the responsibility for any mistakes they unwittingly make. It is like playing games with God without knowing the rules
. Or take the Criminal Law's articles about matters related to sexual interactions into consideration: They are complicated enough to cause ugly discussions even among people who focused their professional life on studying this very clauses. That's a law that has to bother everyone (literally) by nature
and yet one just cannot be sure to draw the line between OK and NOT OK in the right place.
It is like accepting every bloody change request coming in by even the most stupid or ill-meaning stake holder you ever had. You'll get something even your best developers fail to understand anymore, and at some point in the not too far away future no-one wants to pay the expenses for operations and maintenance. You just have to replace your product with a newly built. Unfortunately, regarding state (or international) law this does not seem to be a peaceful option.
orthogon wrote:2. Some of the things we thought up in the past were actually quite good, and making sure we don't throw them away without careful consideration of seen as a good thing. Conversely, in the world of APIs, novelty is king, and removing useful features is seen as somewhere between mere collateral damage and actively desirable.
Agreed, but I would not ask to change the law (or an API) without careful consideration. I suppose that those people who do usually follow more or less selfish reasons. Going from "let's update or API so <other company>s software looks old and ugly and isn't compatible, anymore" to "look, a young guy shot twenty other pupils, now let's prohibit first person shooters, because that is the easiest thing to do and everyone will think we did something about the problem (which we didn't but who cares? They won't notice it until past next election day) and the gun clubs stay happy".
Having said all this, in my country it did not come into vogue yet for innocent (but poor) people to plead guilty because they cannot afford justice being served. But we are getting closer day by day.
Mh, this got a bit off-topic, here.