YoVDO

Artisanal, Machine-Generated API Libraries

Offered By: Strange Loop Conference via YouTube

Tags

Strange Loop Conference Courses Software Development Courses User Experience Courses Compiler Design Courses Algebraic Data Types Courses Syntax Trees Courses

Course Description

Overview

Explore a deep dive into Stripe's journey of generating API libraries across seven programming languages in this 30-minute Strange Loop Conference talk. Learn about the transition from manual maintenance to automated generation, the development of a custom compiler-like tool, and the challenges faced in preserving user experience and code readability. Discover the advantages and limitations of template-based approaches, understand the compiler approach's benefits, and gain insights into syntax trees, transformations, and algebraic data types. Examine case analyses, artisanal overrides, and their implications for web backend development. Gain valuable lessons from Stripe's experience in creating machine-generated API libraries that maintain quality and minimize breaking changes.

Syllabus

Introduction
Stripes API
Maintaining libraries manually
Why we generated our libraries
Demo
Gouda
Template approach
Template example
Advantages of templates
Limitations of templates
The compiler approach
Converting a template into a compiler
Example code
Sequential logic
Template string interpolation
Template types
Syntax
Syntax Tree
What do we gain
Snapshot testing
Transformations
Data
Open API
Case analysis
Algebraic data types
Example
Artisanal
overrides
types of overrides
conclusion
web backend
strangeloop
contact information


Taught by

Strange Loop Conference

Tags

Related Courses

Sniffing the Metaverse
Strange Loop Conference via YouTube
KalDB - A Cloud Native Log Search Platform
Strange Loop Conference via YouTube
The Evolution of a Planetary-scale Distributed Database
Strange Loop Conference via YouTube
Machine Learning for Developer Productivity
Strange Loop Conference via YouTube
Formally Verifying Everybody's Cryptography
Strange Loop Conference via YouTube