Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Pluck It by Adam Cuppy How many times have you written the same bits of code, over and over, and thought, “You know, if only this was big enough to be a gem, I would pluck it out." Often, we think of a RubyGem as a larger library of code that we “bolt on” to an app. And, these smaller code blobs become a hassle to distribute to the multiple apps that use them. A small micro-library, done the right way, at the right time, can greatly improve an app. But, when can you benefit from extracting a micro-library? And, how do you build and publish that code into a RubyGem? I'll go through the process, from A to Z.
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
The video titled 'Pluck It' features Adam Cuppy discussing the process of extracting micro-libraries and encapsulating them into RubyGems for efficient code management. Key points of the presentation include: - **Expectation Setting**: Cuppy clarifies that the talk will be less interactive than his previous ones and focuses on gem publishing, aiming at those new to the topic. - **Introduction**: He introduces himself as a principal at a web consultancy, highlighting the topic's relevance to improving development processes in Ruby applications. - **Defining Micro-libraries**: Cuppy explains the concept of micro-libraries and how they can improve projects by encapsulating small pieces of functionality, particularly emphasizing the Single Responsibility Principle to avoid bloated code. - **Identifying Opportunities**: He suggests looking into Rails app components, like models and controllers, for duplicated or application-agnostic code, which can be effectively transformed into gems. - **Creating a RubyGem**: The speaker guides listeners through the gem creation process using the command line, starting with `bundle gem`, which sets up necessary file structures. He discusses the importance of including tests and proper structuring in the gem’s code. - **Publishing and Managing Dependencies**: Cuppy discusses publishing gems to RubyGems.org and the role of Bundler in managing dependencies, contrasting it with RubyGems' purpose as a package manager. - **Advantages and Disadvantages**: He outlines benefits such as easier maintenance and better reuse of code, as well as potential challenges, including managing updates and additional overhead. - **Illustrative Examples**: Cuppy provides examples of successful small gems, such as Truman and Gravis, demonstrating the practical value of creating even simple libraries. - **Conclusion and Resources**: The presentation concludes with reminders to utilize community resources for support with RubyGems and an invitation for questions, promoting further engagement beyond the talk. The key takeaways include the importance of extracting functionality into micro-libraries when sustainable, the straightforward process of gem creation and publishing, and the benefits of community engagement to aid in Ruby development.
Suggest modifications
Cancel