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 on a project and giving up in frustration. If you develop an API client library, you'll learn what you can do to get it out of the way so developers can spend mental energy on putting together exciting projects, not fighting with tools. If you work with web APIs, you'll learn about factors to consider when you're choosing a framework to use. Either way, you'll learn about best practices--code-related and not--that make the difference between fun and easy development and a frustrating slog.
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 best practices—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.
- 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
web API clients, Best Practices, developer experience, client libraries
* “Using the MediaWiki web API to get (only) the data you need.” WikiConference USA, May 2014. Talk description: http://wikiconferenceusa.org/wiki/Submissions:Using_the_MediaWiki_web_API_to_get_%28only%29_the_data_you_need. Slides part 1: https://upload.wikimedia.org/wikipedia/commons/8/8f/MediaWikiAPITalk-franceshocutt.pdf. Slides part 2: https://commons.wikimedia.org/wiki/File:MediaWikiAPIWorkshop_fhocutt.pdf.
* Ally Skills Workshop, WikiConference USA, May 2014. Based on The Ada Initiative's Ally Skills trainings.
* "APIs 101." 60-minute tutorial, AdaCamp Portland, June 2014.
* "Why are these people following me?': Leadership for the introverted, uncertain, and astonished." Keynote, Open Source Bridge 2014. Video and transcript: http://franceshocutt.com/2014/07/01/why-are-these-people-following-me-leadership-for-the-introverted-uncertain-and-astonished/
* "Building Datasets with APIs." Lecture 2 for Community Data Science Workshop, Autumn 2012. Site: https://openhatch.org/wiki/Community_Data_Science_Workshops_%28Fall_2014%29. Slides: http://mako.cc/teaching/2014/cdsw-autumn/lecture2-web_apis.pdf.
* Ally Skills For Scientists, workshops for faculty and students at New College of Florida, Jan 2015
I gave this talk at SCALE this January (https://www.socallinuxexpo.org/scale/13x/presentations/developers-eye-view-api-client-libraries; slides/recording not up yet) and will give it at NorthWest Linux Fest in late April.
Frances Hocutt has taken part in the science-to-tech branch of the great STEM reshuffling. In the process, she’s written, spoken, mentored, and co-founded Seattle’s first feminist hackerspace/makerspace. She prefers elegance in her science and effectiveness in her art and is happiest when drawing on as many disciplines as she can. Hocutt jumped into F/OSS development with work on the Dreamwidth journaling platform and the MediaWiki web API and expanded into work on MediaWiki and associated Wikimedia-ecosystem contributor tools. Her current interest is applying tools from one discipline to another area entirely, with an eye to offering others the space, tools, and community that they need to change and live in this world.
Photo used under CC-BY-SA-3.0. “Hocutt, Frances March 2015”, by Myleen Hollero.
- Title: A Developer's-Eye View of API Client Libraries
- Track: Cooking
- Room: B204
- Time: 2:30 – 3:15pm
A developer’s experience of an API and its client libraries can make the difference between them building on a project and giving up in frustration. If you develop an API client library, you’ll learn what you can do to get it out of the way so developers can spend mental energy on putting together exciting projects, not fighting with tools. If you work with web APIs, you’ll learn about factors to consider when you’re choosing a framework to use. Either way, you’ll learn about best practices—code-related and not—that make the difference between fun and easy development and a frustrating slog.
- Speakers: Frances Hocutt