Contribute Media
A thank you to everyone who has made this possible: Read More

What is wrong with API wrappers and how can we do better

Description

Filipe Ximenes - What is wrong with API wrappers and how can we do better [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain]

Wrappers are an essential tool for interacting with web APIs. They reduce the amount of work needed to make requests and sometimes, only sometimes prevent the developer from dealing with extensive documentations. It’s common to encounter libs that require not only the study of their own documentation, but also the APIs one, duplicating the needed work. This is caused because wrappers do not follow a design pattern, each developer creates it’s own design, coding style and use their preferred tools.

[Tapioca][1] is what can be called: "a wrapper generator”. Creating API wrappers with Tapioca is extremely easy and fast. For example, it took 1 hour to write the full wrapper for the [Parse.com][2] REST API. But this is not the more important thing, Tapioca libs have a similar interface so once understood how they work, developers can work with any other without the need to learn a new interface.

Tapioca is also thought to comply with REST features and takes HATEOAS (Hypermedia as the engine of application state) seriously, so “following” links and pagination are natively supported. Explorability is also a key concept and developers are encouraged to play with Tapioca packages and find their way through APIs before writing their final code. Although there are some production ready [Tapioca wrappers][3], it is a work in progress, there are still many features to be explored.

[1]: https://github.com/vintasoftware/tapioca-wrapper [2]: http://parse.com [3]: https://github.com/vintasoftware/tapioca-wrapper#tapioca-comes-in-many-flavours

Improve this page