Web Workers is a community of designers, developers, UXers and all around tech- and web-savvy individuals that meet in person and online to discuss all the goings on of the wide, wide world of the Web.

The Evolution of API Design: from RPC to GraphQL - May 1, 2018

FedEx Institute of Technology

Meeting Notes

This month, we’re discussing APIs and GraphQL with speaker Eric Baer.

Talk Details

Over the last 60 years, API designs have changed to respond to everything from new network topologies and new languages, to the pressures of managing ever larger code bases. Today’s most popular API pattern, REST, was developed in a time where the cost of making API requests was plummeting. At the time, bandwidth was getting cheaper, latency was dropping, and the computing power of devices was still tracking Moore’s Law. Mobile turned this on its head. The environments in which apps and APIs need to perform today have effectively regressed a decade.

This talk will explore some of the new client-server interaction models that address today’s pressures and use history to understand the tradeoffs that we made at the transition between the previous designs. I will introduce major tools that are attempting to change the API landscape including GraphQL and Falcor. Since GraphQL is the dominant technology in this space, I will examine some of its functionality, touch on some of its syntax and present a live coding demo that shows off a GraphQL server from 0 to 1. Demonstrating a complete implementation in under 10 minutes will give a strong sense of what’s possible, and what kind of complexity burden a tool like this would impose. Spoiler: There is no silver bullet.

Eric’s Bio:

Eric has been developing products for over ten years in everything from embedded systems for high-end audio products to high-traffic APIs in Java. For the past six years, Eric has developed a deep specialization in JavaScript and the associated ecosystem. In his current role, Eric is an O’Reilly author, a conference speaker and Director of Software Development at both Formidable and at Livestock Nutrition Center where he is driving large projects, and writing software around Babel, GraphQL, and i18n.