440: When we stray from Rails defaults
The Bike Shed17 Sep 2024

440: When we stray from Rails defaults

When does it make sense to step away from Rails conventions? What are the limits of convention over configuration? While Rails conventions provide a solid foundation, there are times when customization is necessary to meet specific project needs. In this episode, Joël and Stephanie dive into the tradeoffs of breaking away from Rails defaults. They explore the limits of convention over configuration and share their experiences with customizing beyond the typical Rails setup. Joël offers insights from a recent project where the client opted for all dry-rb objects, and they unpack the benefits and potential challenges of this approach. Stephanie talks about why people tend to shy away from certain Ruby features and her lessons regarding leveraging callbacks for code development. Explore different testing frameworks, the situations when following Ruby defaults is better, the benefits of the ActiveModel ecosystem, and more! Whether you are a Rails purist or looking to bend the rules, this episode will help you understand the pros and cons of stepping outside the Ruby on Rails box. Don’t miss it!

Key Points From This Episode:

Joël shares details about a large-scale refactoring initiative he has been working on.
Stephanie’s recent legacy-code production problem and lessons from her experience.
What Joël would have done differently when building his refactoring initiative.
The problems of renaming background applications during code development.
Why the open-close principle is valuable for making class changes to a system.
Reasons that a migration strategy is vital for navigating new and legacy code.
Explore approaches for overcoming synchronization issues between systems.
Learn about the concept of connascence for coupling systems together.
Considerations for using asynchronous tools with a connascence approach.
Practical ways to maintain naming consistency during code development.
The importance of differentiating between web and business-logic layers.
Situations where relying on callbacks for connascence becomes problematic.
Other issues that callback problems can reveal during code development.
Joël unpacks the scenarios where he deviates from the Ruby on Rails standard.
Frameworks for testing code and final takeaways from Joël and Stephanie.

Links Mentioned in Today’s Episode:

'Refactoring Legacy Code with the Strangler Fig Pattern'
Connascence of Name (CoN)
ActiveModel docs
GitHub | activemodel
'Vanilla Rails is plenty'
GitHub | minitest
GitHub | test-unit
Episode 435: Cohesive Code with Jared Norman
Ruby on Rails
The Bike Shed
Joël Quenneville on LinkedIn
Support The Bike Shed

Det här avsnittet är hämtat från ett öppet RSS-flöde och publiceras inte av Podme. Det kan innehålla reklam.

Avsnitt(510)

510: Technical Debt is Technically Risk

510: Technical Debt is Technically Risk

Debt metaphors abound! In this week’s episode of The Bike Shed, Aji and Joel ponder the question, what are risks in a code base? From looking at technical risk as a different lens on the idea of tech...

13 Okt 36min

509: Bringing Back Rails Generators with Rachel Wright-Munn

509: Bringing Back Rails Generators with Rachel Wright-Munn

Joël takes Bike Shed out onto the conference floor at RailsWorld as he interviews programer and streamer Rachael Wright-Munn, aka ChaelCodes. Rachael talks about her efforts to index all ruby events ...

6 Okt 23min

508: The Wonders of Static Analysis

508: The Wonders of Static Analysis

In this week’s episode of The Bike Shed, Aji and Joël dive into the distrust around the phrase ‘programmer discipline’, why you cannot just rely on willpower, and how Static Analysis tools can help wi...

29 Sep 42min

507: Stacked Vertical Slices

507: Stacked Vertical Slices

The Bike Shed is BACK! Aji and Joel kick off this week’s episode with a fantastic combination of component bugs and how much headspace they take up, historic heraldry vs ChatGPT’S anchoring bias, befo...

15 Sep 44min

506: The Muppet Software Team

506: The Muppet Software Team

It’s time to play the music, it’s time to… get Aji and Sally together again. This week’s episode is a radical one, and a listener suggestion no less; let’s Muppet-cast a software development team! Wh...

14 Juli 38min

505: What is a “principal” or “staff” engineer?

505: What is a “principal” or “staff” engineer?

Sally and Joël join forces to discuss the different ways to interpret the role of a ‘principle’ or ‘staff’ engineer, and the handwaving around what those titles mean in terms of the gradation. Whilst...

7 Juli 34min

504: AI Ethics (with guests!)

504: AI Ethics (with guests!)

Aji is joined by thoughtbot’s own Tess Griffin and Jimmy Thigpen, two members of the recently established AI Ethics Taskforce, to talk about what kind of conversations are going on in the company arou...

30 Juni 32min

503: Seeing the Graph for the Trees

503: Seeing the Graph for the Trees

Aji and Joël join forces to discuss graph and tree structures, and their connection to the emergent properties, attributes and qualities you can find from a largely connected group of data. Joël dive...

23 Juni 41min

Populärt inom Politik & nyheter

svenska-fall
aftonbladet-krim
fordomspodden
motiv
rss-krimstad
p3-krim
flashback-forever
aftonbladet-daily
svd-ledarredaktionen
rss-vad-fan-hande
rss-sanning-konsekvens
rss-expressen-dok
rss-krimreportrarna
omni-podd
kungligt
spar
rss-flodet
en-runda-till
olyckan-inifran
rss-sparra-in-isa-tilda