4 ms·
The issue is not consent or privacy, it's promises. An API is an "application programmatic interface" and the idea of an interface is that it's making a promis
by ben509 7y ago
The issue is not consent or privacy, it's promises.
An API is an "application programmatic interface" and the idea of an interface is that it's making a promise or some kind of contract.
Every precocious teenager thinks they're a consenting adult, but they don't really understand how fucking works until they've actually made a baby.
So you publish some code that does a thing, and however many consumers are exploring every sweaty nook and cranny of your interfaces, and not only do you not remember because cocaine is a hell of a drug, but now you've got a small legion of dependents you aren't even aware of.
Even if you're using a language like Java that lets you impose the bureaucracy of encapsulation, there are always various unintended consequences to the use of your API.
(Besides making assumptions about state, while the API might have all sorts of encapsulation, it still throws exceptions. And those exceptions might wrap internal exceptions, so a consumer trying to respond to an error condition might slide the condom off and investigate those internal exceptions to identify their specific error.)
There are two major reasons to claim a thing is private:
1. If your code breaks when I make a change, you can yell at me, but I can point at the fine print and tell my boss, "nah, it's swidi's fault".
2. It might even get you to nag me, "I need feature X to do a thing" and then I'm aware you're using feature X.
I'm working on a language to make APIs work better[1] and you should tell me if I'm fucking crazy or not.
Don't take any of this seriously, I'm quite inebriated at the moment.
[1]: https://tenet-lang.org/ https://tenet-lang.org/