The problem at hand is that developer-driven design choices have an effect on each the flexibility to ship an excellent person expertise and the speed of improvement (and thus the nimbleness of the enterprise). And there’s a pressure between these two issues.
From the angle of an API person, the perfect API design has essentially the most basic doable features. For example, for those who’re utilizing a financial institution API, you ideally need there to be just one operate for getting the steadiness for a person, one operate for altering the steadiness, and so on. If there are dozens of features to name to get a financial institution steadiness, it turns into a lot simpler to name the flawed one!
From the angle of a developer, nonetheless, the simplest API to construct for is essentially the most particular. It’s because the extra particular a operate is, the extra a developer can optimize. For example, the way in which to construct the quickest doable banking app is to have the app again finish ship precisely the suitable data the app entrance finish wants and no extra. Inside APIs bias in direction of efficiency, which means they’re designed by the developer for ease of optimization, moderately than for ease of consumption.