4 ms·
I've often thought of this as "developer empathy" when I was working at Amazon. Generally regarding people who create APIs for other developers to use. The idea
by googlryas 4y ago
I've often thought of this as "developer empathy" when I was working at Amazon. Generally regarding people who create APIs for other developers to use. The idea being that you can make your API simple or complex, and most developers tend to make their API complex, because they think their system is really powerful and cool and want to expose all the power to end users. But, you need to remember that your users aren't just using your API. They are using maybe 100 other ones as well. And there is no way for a person to learn the ins and outs of all 101 complex APIs. Add to this the fact that the more complexity you expose, the more unintentionally coupled your API becomes to your implementation (generally). So, make your APIs simple, and provide backdoors if you really want to expose complexity.
I will say, this did not get me promoted at Amazon.
- jackblemming 4y agoThat just sounds like the designer didn't layer the API properly. A good API has a sensible top level that does all the common use cases, but also allows access to the lower level layers for power users.
- googlryas 4y agoWell, yes. I'm talking about API design, and what's good and what's bad. When you're dealing with microservice architecture in Amazon you deal with a whole lot of APIs.