Case study: porting the whole world to a new API
2020-02-04, 14:50–15:15, B.1.015

Designing the perfect v2 of your API is never enough: look at Perl6 or Python3. In the case of Puppet, look at the cleverly named "modern 4.x function API". The original function API was kind of a mess. It allowed global object pollution, was slow, leaked across environments, and in general contributed to Puppet master instability. But it was "good enough" and so building a new function API that addressed these issues didn't mean that people updated their modules. So I did it for them. I built a tool that ports functions from the old API to the new API and submitted a few hundred auto-generated pull requests to Puppet modules all over the Internet (maybe even to one of yours…)

I'll show you how the tool itself works, and the pull request workflow, and then talk about what this means for raising the bar on ecosystem engagement.

Developer Advocate at @puppetlabs; I get to build neat things -and- talk to people! I am responsible for being the voice of the user at Puppet. This takes many forms. On some days I'm building tooling that can help us identify trends in our community and on some days I literally sit and chat on Slack all day long. Most importantly, what I do is build and maintain relationships between people who use, develop with, or develop on our products both internal and external.

To me, this role is the perfect blend of software engineer, training engineer, and community relationship management. \o/

I run marathons in those funny finger shoes. http://pronoun.is/he

This speaker also appears in: