A developer's-eye view of API client libraries
A developer's experience of an API and its client libraries can make the difference between them building exciting tools based on your project and giving up in frustration. This talk is for anyone who wants to make it easy to write programs that interact with their project's data. It's for anyone who's wondered how to make the experience of working with web APIs smoother and less frustrating: developers, client library maintainers, and (especially) anyone who's wondered if it was their fault they couldn't get the client library they were using to work like they thought it was supposed to. Whether you develop API client libraries or work with them, you'll learn about the factors--code-related and not--that make the difference between fun and easy development and a frustrating slog. No particular programming background is assumed, but you'll get the most out of this talk if you know what an API is and have some technical experience.
We'll cover:
- Some things you can do with APIs and why API client libraries (may) make it easier to do them
- The basics of thinking about developer experience
- Features of the most usable open source API client libraries: easy to get going, easy to use, easy to understand, easy to debug, easy to improve
- Resources and concrete ways you can improve the projects you work with and on