3 ms·
API stability is THE #1 most important thing to get right. I don’t care about the details of your API. I have worked with API’s that triggered a WTF every 5 se
by deterministic 3y ago
API stability is THE #1 most important thing to get right.
I don’t care about the details of your API. I have worked with API’s that triggered a WTF every 5 secs. But I don’t care. I figure it out, build an abstraction on top that makes sense to me, and move on with far more important things.
So do what Linus does with Linux. Don’t f* break clients! Add a separate new API instead or expand the old API with additional entry points. Never ever deprecate anything in your API!
API developers that think it makes sense to break all clients, and force those clients to make changes, just because they wake up one day thinking that renaming FooBar to BarXk is a good idea, makes me want to throw my PC out of the window.
And who actually thought that marking things “deprecated” is a good idea? It is still an API change. With annoying warnings/errors added as a bonus.
Don’t. Do. It.
Use your brain to figure out how to accomplish the same task without breaking clients. The Linux guys can do it. So can you.