Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Did you ever really really want to speed up your Ruby code with C extensions but got baffled by mountains of documentation and scary C programming and chose to move to another language instead? Did you wish that you could just release that GIL and extract all the juice that your processor has to offer without losing your hair? If yes, then come see this talk! This talk will introduce you to Rubex, the fastest and happiest way of writing Ruby C extensions. Rubex is a whole new language designed from the ground up keeping in mind Ruby's core philosophy - make programmers happy. RubyKaigi 2018 https://rubykaigi.org/2018/presentations/v0dro
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 'Ferrari Driven Development: superfast Ruby with Rubex' presented by Sameer Deshmukh at RubyKaigi 2018, the focus is on Rubex, an innovative language developed to simplify writing Ruby C extensions. The presentation aims to alleviate the complexities often associated with C extensions in Ruby, thereby enhancing developer joy and productivity. Key points discussed include: - **Introduction to the Speaker:** Sameer Deshmukh, a master's student in high-performance computing, shares his background and involvement with the Ruby Science Foundation. - **Initial Challenges with Ruby Performance:** Highlighting Ruby's limitations in speed, Sameer encourages programmers to consider C extensions for performance improvements while discussing notable gems like Nokogiri and FastBlank that utilize C extensions. - **Issues with C Extensions:** He identifies the steep learning curve, complexity, and difficult API navigation as significant barriers to using C extensions effectively. - **Introduction to Rubex:** Sameer introduces Rubex, describing it as the 'Ferrari for Ruby', aimed at preserving Ruby's developer-friendly philosophy while allowing for high-performance C extensions. Whereas prior tools like RubyInline and SWIG had limitations, Rubex aims to enhance usability and maintain clarity in documentation and overall workflow. - **Major Improvements in Rubex:** Notable updates since its last presentation include a more stable codebase, increased ease of documentation access, and simplifications in writing Ruby code through frameworks like Ferrari Driven Development (FDD). - **Rubex Features:** The Rubex syntax is closely aligned with Ruby, with optimizations such as implicit argument type handling and efficient memory management through typical Ruby-like structures. The concept of non-GIL blocks is also explained, enabling better multi-threading performance. - **Error Handling Enhancements:** Rubex provides a user-friendly approach to error handling that integrates seamlessly with Ruby's existing exception handling, easing the developer’s burden when working with C extensions. - **Future Projects and Conclusion:** The discussion extends to upcoming projects to improve the Ruby ecosystem, including memory view enhancements, plotting functionalities, and efforts to bridge numerical libraries. Deshmukh concludes by thanking supporters and inviting audience interaction, underscoring the continuous evolution of Ruby and the imperative for efficient extensions like Rubex. Overall, this presentation sheds light on how Rubex offers a pragmatic solution to the challenges faced by Ruby developers, promoting a quicker, smoother experience in the implementation of C extensions while retaining the essence of Ruby's usability.
Suggest modifications
Cancel