Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
We've all heard about Action Cable, Turbolinks 5, and Rails::API. But Rails 5 was almost a thousand commits! They included dozens of minor features, many of which will be huge quality of life improvements if you aren't using WebSockets or Turbolinks. This will be a deep look at several of the "minor" features of Rails 5. You won't just learn about the features, but you'll learn about why they were added, the reasoning behind them, and the difficulties of adding them from someone directly involved in many of them.
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 video titled "Rails 5 Features You Haven't Heard About," Sean Griffin, a Ruby on Rails committer, offers a deep dive into several lesser-known features introduced in Rails 5. This presentation aims to shed light not only on these features but also on the stories and challenges surrounding their implementation. Griffin emphasizes that Rails 5 is enriched by numerous minor improvements that can significantly enhance the developer experience. Key points from the presentation include: - **Typed Attributes API**: Griffin discusses its origins and the necessity to support data encryption in applications. He highlights the inadequacies of the previous `attr_encrypted` gem and explains how the Typed Attributes API improves querying capabilities in Active Record, allowing for better type coercion and cleaner code structure. The API's design streamlines the Active Record process by inferring model structure directly from the database schema, thereby enhancing efficiency. - **'Or' Expressions in Active Record**: This eagerly awaited feature allows developers to compose queries more flexibly using named scopes and relations. The journey to implement this feature illustrates the complexities involved in evolving an open-source project while maintaining backward compatibility and sound API design. - **Preventive Safeguards for Database Actions**: Griffin introduces a safeguard against accidentally targeting the production database during migrations, describing how Rails 5 tracks command execution against the intended environment and warns users of potential catastrophes. - **Migration Version Tracking**: This new method in Rails 5 helps maintain migrations as the framework evolves, addressing issues that arise when migrations are run against different Rails versions. - **Accessed Fields Method**: Griffin explains a new method that aids developers in determining which fields of a model instance have been accessed, thereby fostering performance optimization through selective loading. Griffin concludes the presentation by expressing hope that these features will enhance the development process in Rails. He also shares a personal project, Diesel, an ORM for Rust, inviting inquiries and further discussion from attendees.
Suggest modifications
Cancel