The Bike Shed

About the show

On The Bike Shed, hosts Joël Quenneville and Stephanie Minn discuss development experiences and challenges at thoughtbot with Ruby, Rails, JavaScript, and whatever else is drawing their attention, admiration, or ire this week.

The Bike Shed on social media


  • 370: Creative Expression in Software Development

    February 7th, 2023  |  38 mins 52 secs

    Stephanie shares that she's been taking an intro to basket weaving class at a local art studio, and it's an interesting connection to computer science. Joël eats honeycomb live on air and shares a video that former Bike Shed host Steph Viccari found from Ian Anderson. It's a parody to the tune of "All I Want For Christmas Is You," but it's all about the Ruby 3.2 release.

    In this episode, Stephanie and Joël shift away from literature and lean into art. Writing code is technical work, but in many ways, it's also aesthetic work. It's a work of art. How do you feel about expressing yourself creatively through your code?

  • 369: Most Impactful Articles of 2022

    January 31st, 2023  |  50 mins 23 secs

    Joël has been pondering another tool for thought from Maggie Appleton: diagramming. What does drawing complex things reveal? Stephanie has updates on how Soup Group went, plus a clarification from last week's episode re: hexagons and tessellation.

    They also share the top most impactful articles they read in 2022.

  • 368: Sustainable Web Development

    January 24th, 2023  |  36 mins 3 secs

    Stephanie talks about hosting a "Soup Group"! Joël got nerd-sniped during the last episode and dove deeper into Maggie Appleton's "Tools for Thought."

    Stephanie has been thinking a lot about Sustainable Web Development. What is sustainability? How does it relate to tech and what we do?

  • 367: Value Objects

    January 17th, 2023  |  34 mins

    Joël's been traveling. Stephanie's working on professional development. She's also keeping up a little bit more with Ruby news and community news in general and saw that Ruby 3.2 introduced a new class called data to its core library for the use case of creating simple value objects.

  • 366: Componentization and Branching Strategies

    January 10th, 2023  |  38 mins 31 secs

    Happy New Year! It's 2023 🎉 Joël and Stephanie chat about developer resolutions or things they'd like to do this year and then discuss componentization and branching strategies.

  • 365: Career Progression

    December 13th, 2022  |  37 mins 55 secs

    Joël has been thinking a lot recently about array indexing. Stephanie started volunteering at the Chicago Tool Library, a non-profit community lending library for Chicagoans to borrow tools and equipment for DIY home projects!

    It's the end of the year and often a time of reflection: looking back on the year and thinking about the next. Stephanie and Joël ponder if open source is a critical way to advance careers as software developers.

  • 364: Constructive vs Predicative Data

    December 6th, 2022  |  34 mins 7 secs

    Stephanie and Joël attended RubyConf Mini, and both spoke there. They discuss takeaways and highlights from the conference.

    The core idea for this episode is explained in this article: Constructive vs. Predicative Data. This came up recently in a conversation at thoughtbot about designing a database schema and what constraints could be encoded in the schema directly versus needing some kind of trigger or Rails validation to cover it.

  • 363: Deployments

    November 22nd, 2022  |  34 mins 26 secs

    Joël discovered Bardcore. Stephanie planned and executed an IRL meetup for folks in the WNB.rb virtual community group in Chicago and had a consulting win.

    Together, they discuss what deployment processes look like for clients in their current workloads.

  • 362: Prioritizing Learning

    November 15th, 2022  |  29 mins 40 secs

    This week, Steph and Joël discuss investment time and keeping track of things they want to learn.

    How do you, dear listener, keep track of things you want to learn? When investment time rolls around, what do you reach for, or how do you prioritize that list? Are there things you actively decide not to focus on when choosing where to develop deep expertise? Are there things you wish you could spend time on if you could?

  • 361: Working Incrementally

    November 8th, 2022  |  30 mins 28 secs

    thoughtbotter Stephanie Minn joins The Bike Shed as co-host! 🎉

    Joël and Stephanie talk about continuing on a rewrite and redesign of a legacy Rails app and working incrementally.

  • 360: ActiveRecord Models

    November 1st, 2022  |  28 mins 37 secs

    Fellow thoughtboter Sarah Lima joins Joël to discuss an issue Sarah had when she was doing a code review recently: making HTTP requests in an ActiveRecord model. Her concern with that approach was that a class was having too many responsibilities that would break the single-responsibility principle, and that it would make the class hard to maintain. Because the ActiveRecord layer is a layer that's meant to encapsulate business roles and data, her issue was that adding another responsibility on top of it would be too much. Her solution was to extract a class that would handle the whole HTTP request process.

  • 359: Serializers

    October 25th, 2022  |  44 mins 10 secs

    Chris Toomey is back! (For an episode.) He talks about what he's been up to since handing off the reins to Joël. He's been playing around with something at Sagewell that he enjoys. At the core of it? Serializers.

  • 358: Class Methods

    October 18th, 2022  |  40 mins 40 secs

    Inspired by a Slack thread, Joël invites fellow thoughtbotter Aji Slater on the show to talk about when you should use class methods and when you should avoid them. Are there particular anti-patterns to look out for? How does this fit in with good object-oriented programming? What about Rails? What is an "alternate constructor"? What about service objects? So many questions, and friends: Aji and Joël deliver answers!

  • 357: Notetaking For Developers

    October 11th, 2022  |  30 mins 55 secs

    Joël is joined by Amanda Beiner, a Senior Software Engineer at GitHub, who is known for her legendary well-organized notes. They talk about various types of notes: debugging, todos, mental stack, Zetelkasten/evergreen notes, notetaking apps and systems, and visual note-taking and diagramming too!

  • 356: The Value of Specialized Vocabulary

    September 27th, 2022  |  39 mins 20 secs

    Guest and fellow thoughtbotter Stephanie Minn and Joël chat about how the idea of specialized vocabulary came up during a discussion of the Ruby Science book. We have all these names for code smells and refactors. Before knowing these names, we often have a vague sense of the ideas but having a name makes them more real. They also give us ways to talk precisely about what we mean. However, there is a downside since not everyone is familiar with the jargon.

  • 355: Test Performance

    September 20th, 2022  |  42 mins 44 secs

    Guest Geoff Harcourt, CTO of CommonLit, joins Joël to talk about a thing that comes up with a lot with clients: the performance of their test suite. It's often a concern because with test suites, until it becomes a problem, people tend to not treat it very well, and people ask for help on making their test suites faster. Geoff shares how he handles a scenario like this at CommonLit.