Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
What if writing boilerplate for Ruby gems were automated using familiar UI building blocks? Many Rubyists are familiar with components for generating clean HTML with higher-level frameworks. Unfortunately, many developers are unaware they can generate clean Ruby code that is as beautiful as their UIs. This talk will explore how we automatically created a generator to produce high-quality ruby and docs for a popular gem. I'll show how to use this approach to keep gems up-to-date with fast-moving APIs, release new versions frequently, and provide an excellent developer experience.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the talk titled "Boutique Machine Generated Gems," CJ Avilla discusses the potential for automating the generation of Ruby gems using familiar UI building blocks. The speaker illustrates the evolution of Stripe Ruby, the official client library for Stripe's API, highlighting improvements made over time to enhance developer experience (DX). Key points covered include: - **Historical Context**: The speaker reflects on how the Stripe Ruby gem started as a single file with minimal resources in 2011 and evolved into a more organized and comprehensive library. - **Developer Experience (DX)**: Emphasis is placed on external DX, focusing on how third-party developers interact with APIs, utilize SDKs, and the documentation available to them. - **Challenges of Manual Code Generation**: Initially, changes to API endpoints required labor-intensive manual updates across multiple SDKs. This led to the realization of the need for automation to improve efficiency. - **Introduction of OpenAPI Specification**: The integration of OpenAPI expanded testing capabilities and streamlined API updates for various programming languages, significantly reducing the workload. - **Automating Code Generation**: The use of a pipeline to generate SDKs saves hundreds of hours in development time, allowing for quick updates in response to API changes. - **Custom Tooling with Prettier Poet**: The talk introduces Prettier Poet, a tool inspired by React components, designed to produce clean and readable code across different languages without the complexity of massive template builds. - **Live Demos**: CJ conducted live demonstrations to showcase how Prettier Poet can generate Ruby code through a component structure, displaying its application across different programming languages while stressing readability and maintainability. - **Automated Documentation and Changelog Generation**: Automation extends to producing changelogs and validating parameters required for API endpoints, easing the technical writing process. - **Stripe CLI UI**: A feature enabling interactive API usage directly from the browser, providing easy access to documentation. The session concludes with a reinforcing message about the significance of automating the generation of SDKs, which fosters better integration experiences for developers. The advancements in tooling streamline processes while enhancing maintainability and clarity in code and documentation.
Suggest modifications
Cancel