Saturday 2 p.m.–2:20 p.m.

You have an API, now what? Client time!

Richard Harding

Audience level:
Novice

Description

Client libraries for your API in the languages your users are coming from are vital to getting adoption and establishing the best practices for putting your API to work. We discuss how and why you need to provide the client libraries and why this may drive adoption more than the API itself.

Abstract

You have an awesome tool that does awesome things. Now you want folks to use it. If you love it you put an API on it. Great, now why aren’t folks flocking to your service? It’s not easy enough yet! Client libraries for your API in the languages your users are coming from are vital to getting adoption and establishing the best practices for putting your API to work. We’ll talk about the lessons learned in building out the libjuju Python API client.

Draft Outline

  • Why do we build an API?
  • Automate our software
  • Build products on top of our software
  • Integration with related tools
  • What does the client do that the API doesn’t
  • Speak our native tongue
  • Conform to the ideas that are important to me (async, browser ready, cross platform, integrates with X)
  • Ease of use
    • packing of examples
    • Take what “you can do” through to “what you should do”
  • Learn from our mistakes so you don’t make your own
  • Use your own client from the start
  • Don’t embed the library into a CLI client
  • Do leverage things we learned
  • A libary is a chance to help improve mistakes in the API
  • A library lets you tinker and prototype ideas before making them official parts of the project/tool
  • A library is a great and much easier way for folks to get involved.