Talks
Speakers
Events
Topics
Search
Sign in
Search
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
search talks for
⏎
Suggest modification to this talk
Title
Description
by Yehuda Katz and Tom Dale Ruby is a productive language that developers love. When Ruby isn't fast enough, they often fall back to writing C extensions. But C extensions are scary for a number of reasons; it's easy to leak memory, or segfault the entire process. When we started to look at writing parts of the Skylight agent using native code, Rust was still pretty new, but its promise of low-level control with high-level safety intrigued us. We'll cover the reasons we went with Rust, how we structured our code, and how you can do it too. If you're looking to expand your horizons, Rust may be the language for you.
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 "Bending the Curve: How Rust Helped Us Write Better Ruby" features Yehuda Katz and Tom Dale, who explore their experience integrating Rust into their Skylight application, an analytics tool designed for Ruby applications. They address the challenges faced by small development teams competing against larger companies and highlight the need for more efficient tools to improve application performance metrics. Key points discussed in the video include: - **Introduction to Skylight**: Katz and Dale share their background and the inception of Skylight, created in response to misleading average performance metrics provided by existing tools. They recognized the need for a clearer understanding of performance through histograms rather than just averages. - **Performance Challenges with Ruby**: They discuss performance limitations in Ruby that prompted the need for additional data processing capabilities. - **Introduction to Rust**: After evaluating their options, Rust emerged as a strong candidate due to its combination of low-level control similar to C/C++ and high-level safety guarantees, which alleviated concerns regarding memory leaks and segmentation faults. - **Implementation of Rust**: The decision to rewrite significant components of Skylight using Rust led to substantial performance improvements and allowed for features like real-time memory allocation tracking. They also discuss the introduction of new subscription services providing performance metric updates. - **Rust's Benefits**: Katz and Dale emphasize several key features of Rust, including its ownership model, borrowing system, and deterministic memory management. These features contribute to safer and more efficient code, reducing common issues found in languages such as Ruby. - **Practical Examples and Anecdotes**: They illustrate the advantages of Rust in maintaining stability and performance during the development of Skylight, using examples to showcase how Rust's ownership rules prevent mutable states and ensure consistent application behavior. - **Conclusion**: The speakers conclude by encouraging developers to consider Rust for applications where performance and safety are priorities. They express optimism about Rust's evolving ecosystem and its increasing adoption across various domains. This insightful session encourages developers to explore Rust as a tool for enhancing Ruby applications, especially in terms of performance monitoring and resource efficiency.
Suggest modifications
Cancel