Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Introducing Helix: High-Performance Ruby Made Easy by Godfrey Chan and Yehuda Katz This is a sponsored talk by Skylight. We got a good productivity boost by writing the original Skylight agent in Ruby, but over time, we couldn't implement all the desired features with its overhead. Ruby is fast enough... until it isn't. Introducing Helix — an open-source toolkit for writing native Ruby extensions in Rust, extracted from our Featherweight Agent's DNA. Fast, reliable, productive — pick three. Come join us to find out how you can leverage this power in your Ruby apps and even help make Rails faster! (This is not a re-run of Godfrey's talk from last year.)
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 RailsConf 2017 sponsored talk 'Introducing Helix: High-Performance Ruby Made Easy,' Godfrey Chan and Yehuda Katz explore Helix, an open-source toolkit for writing native Ruby extensions in Rust. The speakers explain that while Ruby is generally efficient for I/O-bound tasks, it can struggle with CPU-bound workloads, motivating the need for optimizing performance. Key points discussed in the presentation include: - **Background Context**: The original Skylight agent was developed in Ruby, which provided a boost in productivity but faced limitations in performance for certain features, especially when tracking memory allocations. - **The Promise of C Libraries**: Historically, creating performance gains in Ruby often involved writing C extensions, but this posed challenges like increased complexity and maintenance burdens. - **Rust's Promise**: After experimenting with Rust, the speakers found it to be a compelling alternative. Rust offers C-like performance while enhancing safety and usability through a sophisticated type system and guarantees that help avoid common pitfalls seen in C programming. - **Helix Tooling**: Helix simplifies the use of Rust in Ruby applications by reducing the boilerplate code required. Previous versions of the tool faced usability challenges, but improvements have been made, including removing boilerplate while enabling seamless integration into Rails apps. - **Demonstration**: During the talk, a live demonstration showcased how to build a simple Rails application that leverages Helix for CPU-intensive tasks by implementing a method to flip a string using Rust. The integration was facilitated through a straightforward API that Ruby developers could easily adopt. - **Key Features and Use Cases**: The speakers highlighted various use cases like background jobs, mailers, and data processing tasks where Helix could significantly improve performance. They stressed that Helix is well-suited for operations that can benefit from Rust’s efficiency and performance, particularly in computation-heavy scenarios. - **Future Development**: The ongoing evolution of Helix is aimed at broadening its capabilities, including better support for Ruby constructs like optional arguments, more Ruby-like APIs, and enhancing documentation to support developers in the community. In conclusion, Helix stands as a promising solution for Ruby developers looking to optimize performance for CPU-bound tasks while maintaining the ease and ergonomic benefits of Ruby. The presenters encourage the community to engage with the Helix project, explore its capabilities, and contribute to its development.
Suggest modifications
Cancel