3 ms·
There is not just a computing resource cost involved - keeping an API around means continuing to support the quirks of that interface, which means code complexi
by aiiane 10y ago
There is not just a computing resource cost involved - keeping an API around means continuing to support the quirks of that interface, which means code complexity and maintenance costs, especially when the system the API talked to gets refactored and/or overhauled. Google's internal refactoring strategy frequently relies heavily on a monolithic code repository and the ability to rebuild the world; the more that interfaces are unable to change the harder refactoring becomes.
- asciimike 10y ago+1000 to this. The "API" that developers see is the tip of the iceberg for what actually goes into publicly exposing a service to developers. Yes there's quite a bit of internal maintenance that goes on (as mentioned, lots of things change frequently, though generally people refactoring chunks of code will "upgrade" your code for you, since if they don't they can't submit their changes since you were a good engineer and wrote defensive unit tests to protect your code). Maintaining a public API can also mean having: - Documentation (up to 15 languages) - Sample code/example apps (up to 7 languages) - Support (Stack Overflow, Quora, etc.) - An on-call rotation