In this episode, Jason and Andrew are joined by guest, Vladimir Dementyev of Ruby on Rails and Evil Martians fame. Today, they touch on Vladmir’s new book on designing Rails applications, and dive into the importance of sticking to Rails principles, even in the era of microservices. Vladimir shares insights on working as a consultant on legacy Rails projects and the challenges that can arise when codebases deviate from Rails conventions. We’ll also explore the evolution of Rails applications, the power of open source contributions, and Vladimir’s journey to becoming a recognized figure in the tech community. Also, Vladimir introduces AnyCable, a performance-oriented solution for real-time communication in Rails applications and provides insights into its capabilities and evolution. Hit download now to hear much more!
[00:02:29] Vladimir briefly describes his book on designing Rails applications.
[00:05:40] Vladimir talks about sticking to Rails principles and not injecting foreign patterns into Rails applications and emphasizes the importance of maintaining a Rails oriented approach even when using microservices.
[00:08:33] We hear about Vladimir working as a consultant on legacy Rails projects and the challenges of maintaining codebases that deviate from Rails principles.
[00:10:29] Jason asks for more examples of where the Rails framework ends and developers have to steer their own course. Vladimir discusses the structure of the app folder in Rails applications and mentions the trend of putting everything in the model folder, and he talks about how Rails applications changed during the API-only era, leading to a shift away from Rails conventions and MVC patterns.
[00:13:41] Andrew expresses how he feels vindicated for sticking to writing Rails apps even when the trend shifted towards API-only development.
[00:15:08] Vladimir shares his journey to joining Evil Martians, starting as a solo developer, and his attraction to the simplicity of Rails. He mentions his experiments with different design patterns and how joining Evil Martians provided a collaborative environment for open source work.
[00:19:15] Vladimir talks about how Evil Martians encouraged new engineers to propose conference talks, leading him to present on AnyCable, which sparked his open source contributions.
[00:20:18] He talks about how it took a couple of years for his efforts, including writing blog posts and working on AnyCable, to gain recognition and production users outside of Evil Martians. Also, he explains how writing became a way for him to cope with stress and how it contributed to the company’s visibility and recognition in the tech community.
[00:26:20] We hear about Evil Martians’ shift in focus from consumer products to developer tools and how they use and contribute to products built by others. Vladimir briefly discusses HTTPie, and how they helped with its development.
[00:28:44] Jason brings up AnyCable, and Vladimir tells us what it is, what problem it solves, and the benefits of using it. Also, he explains how AnyCable allows for seamless replacement of Action Cable in existing applications and its Go-based WebSocket server.
[00:32:16] Vladimir mentions that AnyCable has evolved over seven years to offer additional features, including support for different transports and service-sent events, making it versatile for various use cases.
[00:34:08] Vladimir discusses the versatility of AnyCable, highlighting that it can be deployed anywhere and used with platforms beyond Rails. He mentions that AnyCable is becoming the default choice for handling WebSockets in Rails applications as they continue to expand their reach into other ecosystems.
[00:38:09] We hear about some upcoming features for AnyCable, including presence tracking, and plans to make AnyCable compatible with other ecosystems. Vladimir teases a new feature he’s working on for Rails and Turbo.
[00:43:04] Andrew shares that he used to read Vladimir’s code on GitHub to learn new patterns and gain inspiration for his own work. He mentions reading code from different libraries and ecosystems is a powerful way to expand one’s toolkit for problem-solving.
[00:43:47] Vladimir suggests the idea of a podcast or show where experts review codebases and discuss patterns, techniques, and the rationale behind certain code decisions. He believes it could be a great way to learn and share knowledge.
[00:45:36] Jason shares that he appreciates Vladimir’s contributions to Ruby on Rails and the high-quality content shared by Evil Martian’s on their blog.
[00:46:36] Find out where you can find Vladimir online.
Panelists:
Jason Charnes
Andrew Mason
Guest:
Vladimir Dementyev
Sponsor:
Honeybadger
Links:
Jason Charnes Twitter
Chris Oliver Twitter
Andrew Mason Twitter
Vladimir Dementyev Twitter
Vladimir Dementyev GitHub
StimulusReflex Discord
Evil Martians
Layered Design for Ruby on Rails Applications: Discover practical design patterns for maintainable web applications by Vladimir Dementyev
AnyCable
HTTPie
Rails World 2023
Ruby for All Podcast
Paul Bahr aka "Whats a GitHub?" aka "High School with Ashtrays"
David Heinemeier Hansson on Rails 7.0, Hotwire, and the future of Rails
Getting a Junior Developer Job with Jason Meller and Caitlin Cabrera
Discussing Tech Careers with Thiago Araujo and Stefanni Brasil of Hexdevs
Rails 7, Railties, and Sorbet at Shopify with Rafael França from Rails Core
Live from RubyConf 2021!
RubyConf 2021 | Talks We Liked and People We Met
Andrew and Jasons Mall Stories and Elixir
Ruby on the Apple M1 Max And Things You Expect To Be Fine But Arent
Destroy Async, Miss Hannigan, Wisper, and Parcel
Turbo Native & Hotwire - How Polywork Supercharges Development
Yuh-Jit - Optimizing JIT compiler built inside CRuby
Propshaft, Engines, and Turbo | Uh This Isn't a Car Repair Podcast
Making Magic with ImageMagick
Red Pill-Blue Pill and CSS Bundling
Once you get it working, it works!
Moving From Consulting To Products With Andrew Sabetta
Kasper Timm Hansen from the Rails Core Team
Code Metrics with Kevin Murphy
Pay V3 & Coding without Resposibilities
Create your
podcast in
minutes
It is Free
Financial Coaching for Women: How To Budget, Manage Money, Pay Off Debt, Save Money, Paycheck Plans
Anxiety Talk Podcasts
Old Fashioned On Purpose
The Minimal Mom
Today’s Tips from AARP