The Bike Shed

thoughtbot
undefined
Nov 26, 2024 • 34min

448: Other Uses for Tests

Discover how tests can do more than identify bugs—they can act as living documentation that evolves with your code. The hosts explore innovative uses of tests in enhancing team collaboration and code readability, crucial for smooth project handoffs. Learn about balancing comprehensive coverage with practicality, and the importance of accountability in code reviews. Dive into techniques for improving test suite readability, and see how retrofitting tests can reveal hidden edge cases in legacy code. Transform your testing approach and empower your development process!
undefined
Nov 19, 2024 • 38min

447: How to (not) implement impersonation

Impersonation features in software development can be double-edged swords. The hosts share insights on how these tools assist with debugging but highlight significant security concerns. They discuss the implications of needing impersonation as a symptom of poor admin tooling and suggest better alternatives. The conversation also dives into the importance of clear logging to prevent misuse. Personal anecdotes about health insurance and productivity tools add a delightful touch, making complex topics more relatable.
undefined
Nov 12, 2024 • 36min

446: All about rewrites

Delve into the intricacies of software rewrites, exploring when and why they might be necessary. Discover the challenges tied to legacy code, from potential data loss to old bugs reemerging. Learn about balancing business value with developer satisfaction. The conversation also emphasizes the importance of incremental changes over complete rewrites. Plus, hear best practices for testing in both Capybara and React, focusing on accessibility and pragmatic risk management. Get insights that could save your team time and effort!
undefined
Oct 29, 2024 • 40min

445: Working Iteratively

Explore the perks of working iteratively and how it can lighten cognitive load while minimizing costly errors. Witness a personal lesson learned from a recent workplace mishap, and dive into the pressures surrounding incident management during major releases. Delight in the beauty of autumn and its transformative spirit, with anecdotes about fall traditions. Discover how smaller, focused tasks enhance productivity and support effective code reviews, all while finding a balance between striving for perfection and making incremental improvements.
undefined
Oct 15, 2024 • 35min

444: From Solutions To Patterns

Explore the shift from problem-solving to pattern recognition in software development. Discover how embracing heuristics can empower junior developers and enhance code quality. The hosts tackle challenges in mastering abstraction and the importance of thoughtful code reviews. They share personal insights on fostering open communication and avoiding pattern misuse. This conversation highlights the journey to becoming a more intuitive and effective developer, offering valuable strategies for navigating the complexities of coding.
undefined
Oct 8, 2024 • 32min

443: Rails World and Open Source with Stefanni Brasil

In this engaging conversation, Stefanni Brasil, Senior Developer at Thoughtbot and core maintainer of faker-ruby, shares her insights from the Rails World conference in Toronto. She emphasizes the importance of community in tech and the thrilling innovations expected in Rails 8, particularly around accessibility. Stefanni discusses her passion for open source and her initiatives to educate others, including an upcoming open-source summit set for October 2024. With a focus on both Mac and Windows compatibility in Ruby on Rails, she invites developers to connect and collaborate.
undefined
8 snips
Oct 1, 2024 • 42min

442: Paradigms - What is a Program?

Stephanie, an expert from Planet Argon, shares insights from their 2024 Ruby on Rails survey and her journey with Ruby. The discussion covers the nuances of programming paradigms: procedural, object-oriented, and functional. Listeners learn how different paradigms influence coding approaches, the significance of pure functions, and the balance of flexibility in data schemas. Joël shares his scripting style, and they explore how evolving learning methods impact developers in the Ruby community. Tune in for a deep dive into coding culture and practices!
undefined
Sep 24, 2024 • 40min

441: The Pickaxe Book with Noel Rappin

Noel Rappin, an author and Ruby programming expert, dives into his latest work, The Pickaxe Book, which updates the classic text for modern developers. He shares his journey fueled by his views on static typing in Ruby and addresses the community's debate on the topic. Noel discusses the responsibilities of technical authors and the evolution of the 'Pickaxe' within a changing landscape. He also reflects on feedback from his opinionated blogs and the unique challenges of onboarding new Ruby developers.
undefined
8 snips
Sep 17, 2024 • 43min

440: When we stray from Rails defaults

Joël, a seasoned software developer, and Stephanie, an expert in Rails conventions, delve into when it's necessary to diverge from Rails defaults. They discuss the complexities of customizing Rails and the benefits of using dry-rb objects in projects. Stephanie shares her insights on leveraging callbacks effectively, while Joël reflects on a large-scale refactoring initiative and lessons learned from legacy code issues. The duo also examines the tradeoffs of different testing frameworks and the importance of the ActiveModel ecosystem for better code development.
undefined
Sep 10, 2024 • 34min

439: Async Ruby & Rails with Trevor Turk

How can asynchronous programming transform your Ruby on Rails applications? Today, Stephanie sits down with Hello Weather co-creator Trevor Turk to unpack asynchronous programming in Ruby on Rails. Trevor Turk is a seasoned software developer known for his work on Hello Weather, a minimalist weather app that delivers essential weather data quickly and precisely. He’s also the creator of Weather Machine, an advanced weather data platform designed to serve reliable and highly accurate forecasts via API. With a background that includes work at innovative tech companies, Trevor brings years of experience in developing intuitive, user-friendly digital tools. Trevor talks about the focus of his API work, the complexity of web-based apps, and what makes Hello Weather unique. He explains the fundamentals of asynchronous programming within the Ruby on Rails framework and why it is an approach all programmers should consider. Explore the nuances of programming for different data sources, how he leverages fibers and threads for the Hello Weather platform, and why asynchronous programming is not a silver bullet for application development. Discover how to start using asynchronous methods, the various asynchronous tools available in Ruby, and why experimenting with concurrent programming is essential. Join us to gain insights into why including asynchronous tools is vital for the Ruby on Rails ecosystem, improving platforms through open-source development, how to help improve the adoption of asynchronous tools in Ruby, and more. Tune in now! Key Points From This Episode: Introduction to Turk and his background in Ruby on Rails. Details about his companies Hello Weather and Weather Machine. The innovative features that the Hello Weather platform offers. Hear how Hello Weather transitioned from a web-based to an application. Why he needed to alter his programming approach to scale the company. How he came across the concept of asynchronous programming. Discover how using fibers is different from using threads in Ruby. Find out about the different use cases of asynchronous programming. Learn about the benefits of implementing concurrent programming. Trevor shares the challenges of working with different versions of Ruby. His role in enhancing asynchronous methods within the Ruby framework. Common misconceptions of working with Ruby on Rails. Final takeaways for those interested in asynchronous programming. Links Mentioned in Today’s Episode: Trevor Turk on LinkedIn Trevor Turk on X Trevor Turk on Threads Hello Weather Weather Machine GitHub | async gem GitHub | falcon gem 'Async Ruby on Rails' load_async Episode 437: Contributing to Open Source in the Midst of Daily Work with Steve Polito GitHub | Action Cable server adapter ActiveRecord connection checkout caching Ruby on Rails
The Bike Shed The Bike Shed Joël Quenneville on LinkedIn Support The Bike ShedSupport The Bike Shed

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app