The Rails Changelog-logo

The Rails Changelog

Technology Podcasts

Stay in the loop with development news around Ruby on Rails and Ruby. Hosted by Emmanuel Hayford.

Location:

United States

Description:

Stay in the loop with development news around Ruby on Rails and Ruby. Hosted by Emmanuel Hayford.

Language:

English


Episodes
Ask host to enable sharing for playback control

021: From Active Record Business Logic to DDD & Events with Andrzej Krzywda

3/7/2024
Andrzej Krzywda discusses event sourcing, event-driven architecture, and Domain-Driven Design (DDD) in the context of Ruby on Rails applications. He explains the concept of bounded contexts and how they relate to communication between different modules. He also shares insights on when and why to apply DDD to Rails applications, particularly in cases where the application becomes complex and difficult to maintain. Andrzej explores the challenges and benefits of migrating an existing Rails app to an event-driven architecture and highlights advanced event sourcing concepts such as snapshotting, projections, and versioning. In this conversation, Andrzej Krzywda discusses event sourcing and DDD in Rails applications. He explains the concepts of snapshotting and projection, which are techniques used to optimize performance and retrieve specific data from event streams. Andrzej also delves into the challenges of event versioning and how it can be managed in Rails applications. Additionally, he shares insights about the wroclove.rb conference, its history, and its focus on advanced and deep technical topics. Takeaways Event sourcing is a persistence mechanism that persists all the little changes that happen to a specific object, while event-driven architecture is a way of building software modules that communicate with events. DDD involves splitting a system into contexts or domains and using events to communicate between them. It can be applied to Ruby on Rails applications, particularly in cases where the application becomes complex and difficult to maintain. Migrating an existing Rails app to an event-driven architecture can help address issues with large classes, complex associations, and lack of modularity. Advanced event sourcing concepts such as snapshotting, projections, and versioning can be used to optimize performance and manage data integrity in event-driven applications. Snapshotting and projection are techniques used in event sourcing to optimize performance and retrieve specific data from event streams. Event versioning is a challenge in event sourcing, but it can be managed by introducing new event versions and implementing upcasters to convert old events to new versions. wroclove.rb is a Ruby and Rails conference in Wrocław, Poland, that focuses on advanced and deep technical topics. The conference aims to inspire, educate, and challenge the status quo in the Ruby and Rails community. Rails Event Store and Eventide are two libraries that facilitate the implementation of event-driven architectures in Rails applications, each with its own philosophy and approach. wcrolove.rb Ruby and Rails Conference RailsEventStore Arkency Rails Architect Masterclass [Video] Event Sourcing Demystified: A Simple-To-Understand Guide

Duration:01:20:58

Ask host to enable sharing for playback control

020: Andy Croll & Ufuk Kayserilioglu Uncover RailsConf 2024 Details

2/15/2024
The conversation covers various aspects of RailsConf, including its mission, organization, and selection process for talks. The chapters delve into the background of the participants, the role of Ruby Central in organizing RailsConf, and the significance of the conference in the Ruby and Rails communities. The discussion also explores the unique features of RailsConf 2024, such as the community day and hack day, as well as the selection process for talks and the responsibilities of the program committee. Additionally, the conversation touches on the criteria for choosing conference locations and the process of selecting keynote speakers. In this conversation, Emmanuel Hayford interviews Andy Croll and Ufuk Kayserilioglu about their experiences with conferences like RailsConf and Brighton Ruby. They discuss the acceptance and rejection process for conference speakers, the origins and purpose of Brighton Ruby, the importance of personal interaction at conferences, the dynamics of partnering with hotels, the sponsorship opportunities for RailsConf, and the benefits of attending conferences for personal and professional growth. Takeaways

Duration:01:06:09

Ask host to enable sharing for playback control

019: Exploring RubyGems with Jenny Shen

2/8/2024
Senior Developer Jenny Shen from Shopify joins me to discuss RubyGems. In this episode, we unravel the intricate mechanics of dependency resolution within RubyGems, exploring topics such as compact indexes and more. Our discussion extends to the paramount issue of security, where we examine the proactive measures undertaken by the RubyGems team to fortify gems for every Ruby programmer. PubGrub version solving algorithm The New Rubygems Index Format by Andre Arko Trusted Publishing on RubyGems.org

Duration:00:44:05

Ask host to enable sharing for playback control

018: Rails 8 is coming!

1/18/2024
In this monologue, I've highlighted just a few of the features that I'm eagerly anticipating in Rails 8. As the first episode of the year, I've also addressed some housekeeping matters, determining the optimal episode production capacity and pace. Most importantly, I want to express my gratitude to all the listeners of The Rails Changelog – thank you for your unwavering support. Rails 8 milestones

Duration:00:07:46

Ask host to enable sharing for playback control

017: A deeper dive into Zeitwerk with Xavier Noria

12/29/2023
Xavier Noria of the Rails Core team adeptly delves into the intricacies of Zeitwerk in this episode. Our discussion extends to elucidate the distinctions among autoloading, eager loading, and reloading, shedding light on the nuanced processes that transpire during app deployment. Subsequently, we delve into an exploration of the technical challenges currently confronting Ruby on Rails.

Duration:01:25:44

Ask host to enable sharing for playback control

016: Fireside chat with Rafael França

12/7/2023
Rafael França, an esteemed member of the Rails Core team, is our featured guest in this episode. Join us as he delves into his journey with Rails, sharing insights on his initiation into the framework and the eventual path that led him to become an integral part of the core team. Our conversation explores the intricacies of decision-making within the core team, shedding light on the prioritization of pull requests (PRs), offering a sneak peek into the upcoming Rails 8, and providing valuable tips on getting your PRs successfully merged. Tune in for an in-depth discussion covering these topics and much more! Rafael França's Book Recommendation Refactoring Crafting Rails Applications

Duration:00:56:12

Ask host to enable sharing for playback control

015: Exploring Turbo 8 with Jorge Manrubia

11/23/2023
In this episode, Jorge Manrubia provides insights into his experience working at 37signals. Our conversation delves into the intricacies of Active Record encryption, and we explore the latest advancements in Turbo 8 technology. Jorge Manrubia's Book Recommendation Pragmatic Thinking And Learning Refactoring Domain-Driven Design Smalltalk Best Practice Patterns Design Patterns Turbo Active Record Encryption Spektr Security

Duration:00:53:28

Ask host to enable sharing for playback control

014: PostgreSQL for Rails Developers with Andrew Atkinson

11/2/2023
Andrew Atkinson, the esteemed author of "High Performance PostgreSQL for Rails," joins me in this episode for an in-depth conversation. We delve into the myriad features that Ruby on Rails developers can harness to optimize PostgreSQL within their applications. Stay tuned throughout the episode for an exclusive discount code, which will grant listeners a generous 25% off when purchasing "High Performance PostgreSQL for Rails." Don't miss out on this valuable opportunity to enhance your development skills!

Duration:00:51:12

Ask host to enable sharing for playback control

013: Rails World Edition - Turbo Native with the Turbo Native Guy, Joe Masilotti

10/12/2023
This special episode was recorded live at Rails World, the ambient crowd noise gives that fact out. Rails World was a huge success! In this episode, I got to sit face-to-face with Joe Masilotti. Joe's talk at Rails World was terrific! We got to discuss the pros and cons of Turbo Native and a whole lot more. This is Joe Masilotti TurboNavigator Turbo iOS Buzzsprout Podcast Hosting Support The Rails Changelog Subscribe to Rails's YouTube channel

Duration:00:35:44

Ask host to enable sharing for playback control

012: DHH joins the show to talk Rails 8, Delegated Types, Kamal and more!

8/31/2023
In this episode, I'm joined by DHH to discuss Kamal, The Rails Foundation, Rails 8, Delegated Types, On Writing Software Well and a whole lot more! This episode is packed and a must-listen!

Duration:01:08:58

Ask host to enable sharing for playback control

011: Rails World ticket giveaway. From MRSK to Kamal & capture_emails test helper

8/24/2023
Thanks to Buzzsprout one Rubyist can get a free ticket to Rails World in October this year in Amsterdam, follow the link below for details. Change is good... sometimes. Two days ago Basecamp changed the name of its deployment tool from MRSK to Kamal. Rails 7.1 will have a new `capture_emails` help that's quite a bit more elegant, check it out. Rails World ticket giveaway From MRSK to Kamal New capture_emails test helper

Duration:00:08:39

Ask host to enable sharing for playback control

010: Improved Active Storage docs, a new has_secure_token callback with Dave Kimura

8/3/2023
Dave Kimura of Drifting Ruby fame joins me to discuss the importance of Ruby on Rails documents. We talk specifically about improved documentation around Active Storage and Active Record encryption, then dive into the new callback for when has_secure_token is triggered. Improved Active Storage docs (This PR was updated) Improved Active Record Encryption docs Eagerly cast serialized query attributes A callback for has_secure_token

Duration:00:18:26

Ask host to enable sharing for playback control

009: A class-level testing helper, config.autoload_lib with Xavier Noria

7/19/2023
The with_routing helper method can now be used at the class level, added to that, the new autoload_lib configuration options mean we can autoload and eager load library code inside of our Rails applications. Oh, and we have the show's first sponsor -- AppSignal! AppSignal APM offers error tracking, performance monitoring, dashboards, host metrics, and alerts. Built for Ruby, Ruby on Rails, Elixir, Node.js, and JavaScript. A class-level testing helper A config.autoload_lib configuration option AppSignal is our new sponsor!

Duration:00:07:50

Ask host to enable sharing for playback control

008: TLS/SSL on by default, New PostgreSQL migration commands

6/22/2023
Newly-generated Ruby on Rails applications will now be served over TLS/SSL with Strict-Transport-Security response headers by default. Rails also added PostgreSQL migration commands for enum rename, add value, and rename value. Rails World Tickets on sale Force SSL config set to true by default New PostgreSQL migration commands

Duration:00:05:34

Ask host to enable sharing for playback control

007: Rails 7.0.5 released! Rails World CFP open, ticket landing page available.

5/24/2023
Rails 7.0.5 just got released with a lot of bug fixes. This week's episode misses new Rails features... saving them for the next episodes, but I think you should know about Andrew Atkinson's upcoming High Performance PostgreSQL for Rails book! Rails World CFP Rails World tickets Rails 7.0.5 released! High Performance PostgreSQL for Rails This Week In Rails

Duration:00:03:52

Ask host to enable sharing for playback control

006: Rails 7.1 got rid of the apostrophe for the right single quotation mark!

5/3/2023
Rails 7.1 got rid of the apostrophe (U+0027) for the right single quotation mark (U+2019), which will likely break your tests. It added a new `intersects?` method to `ActiveRecord::Relation`. Improve typography of user facing validation messages Add `intersects?` to `Relation` The Rails Tricks Newsletter

Duration:00:04:17

Ask host to enable sharing for playback control

005: Rails World chat with Amanda Perino. Trilogy, ChatGPT's contribution to Rails.

4/26/2023
Amanda Perino reveals more about Rails World, The Rails Foundation's first ever conference happening in Amsterdam, Netherlands this year. Trilogy is a database adapter from GitHub to connect Ruby on Rails and Active Record clients to MySQL-compatible database servers has recently been merged into Rails! Rails World conference The Rails SaaS conference Trilogy adapter for Rails ChatGPT's Rails contribution

Duration:00:11:13

Ask host to enable sharing for playback control

004: CTEs In Rails, CPKs coming soon with Vladimir Dementyev

4/20/2023
Vladimir Dementyev joins the show to discuss Action Cable Redis connection resilience, Common Table Expressions (CTEs) and a new Active Support helper for zettabytes of data, Any Cable and ActionPolicy. Common Table Expression Support In Rails Ongoing Work On Composite Primary Keys Active Support Zettabytes Helper Method MatchData#named_captures Method In Ruby ActionPolicy

Duration:00:27:02

Ask host to enable sharing for playback control

003: A new Rails conference! No more ArgumentError for long index names with Greg Molnar

4/7/2023
We're joined by Greg Molnar, co-editor of This Week In Rails to discuss lots of fun new items. Among them are the Rails Foundation's upcoming conference in Amsterdam and a fix to long index names that Rails generates for Postgres, MySQL and SQLite. Rails World! A new Rails conference from the Rails FoundationA more efficient marshal_dump and marshal_load on ActiveRecord::BaseActionController::Parameter's except aliased as withoutArgumentError on long index names fixedSafe ways to do direct uploadsCharacter set set in some CONTENT-TYPE response headers Ruby 3.2.2 Released

Duration:00:12:40

Ask host to enable sharing for playback control

002: Rails 7.1 Prep For CPKs & Async Records Destruction

3/29/2023
Rails 7.1 will add several enhancements to existing functionalities, these include enhancements on destroying records in a background job and preparation to support composite primary keys. Please see extended show notes for details.

Duration:00:06:40