

The Bike Shed
thoughtbot
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.
Episodes
Mentioned books

Oct 20, 2020 • 46min
265: There Are No Free Lunches
On this week's episode, Steph and Chris chat about database transactions and job queues, building static sites with GatsbyJS and NetlifyCMS, the performance impacts of front end frameworks and static content, and lastly they catch up on Hacktoberfest and the complexities of encouraging and supporting work in open source.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Datadog. Click through to get a free 14-day trial and a free Datadog t-shirt!
Sidekiq
delayed_job
Que (Postgres-backed job queuing system for ruby apps)
Transactionally Staged Job Drains in Postgres
Postgres Job Queues & Failure By MVCC
Gatsby.js
Netlify
NetlifyCMS
Middleman
MDX
Steph's Monster blog
monster-cute blog repo
Svelte
Rich Harris - creator of Svelte
Rich Harris on full stack radio
Extensity chrome extension
Hacktoberfest
DigitalOcean's Hacktoberfest is Hurting Open Source
Hacktoberfest Update from Digital Ocean
Goodhart's law
Adam Wathan of Tailwind Labs
Remix Run
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Datadog: Click through to get a free 14-day trial and a free Datadog t-shirt!Support The Bike Shed

Oct 13, 2020 • 42min
264: How to Win Friends and Influence Processes
On this week's episode Steph and Chris discuss the ins and outs of joining teams, building trust, and working together to improve processes and communication. They also touch on some lesser used features of bundler, and revisit a discussion around Rails maintenance periods thanks to some listener feedback.
This episode is brought to you by:
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
ExpressVPN - Click through to can get an extra 3 months free on a one-year package.
Initial conversation about posible Rails downtime handling
Chris' post about read-only mode for better Rails downtime
Bundler options to load specific gems
Sponsored By:Indeed: Click through and get started with a free seventy five dollar credit for your first job postExpressVPN: Click through to get get an extra three months FREE on a one-year package!Support The Bike Shed

Oct 6, 2020 • 54min
263: Keeping The Night Brain At Bay (Dave Rupert)
Steph's taking a quick break this week, but in her absence, Chris is joined by Dave Rupert. Dave is the lead developer at Paravel, co-host of the Shop Talk Show podcast, creator of The Accessibility Project, and an all-around prolific and thoughtful maker of digital things.
Chris and Dave chat about creating and sharing content like podcasts and blogs and how to get past your inner editor. They discuss the web platform and accessibility, and finally, they round out the conversation with a chat about design systems as an intersection between design and development.
This episode is brought to you by:
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
Datadog. Click through to get a free 14-day trial and a free Datadog t-shirt!
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Dave on Twitter
Dave's site / blog
Paravel
The Accessibility Project
Shop Talk Show Podcast
How to Start a Podcast
The Good Path (on Blogging)
Jeremy Kieth
Jekyll static site generator
What is the Value of Browser Diversity?
The WebAIM Million Project
Web Content Accessibility Guidelines (WCAG)
Accessible Rich Internet Applications (ARIA)
The Accessibility Project Checklist
Scott Hanselman
The Hanselminutes Podcast
Five Key Milestones in the Life of a Design System
Become a Sponsor of The Bike Shed!Sponsored By:Indeed: Click through and get started with a free seventy five dollar credit for your first job postDatadog: Click through to get a free 14-day trial and a free Datadog t-shirt!Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Support The Bike Shed

Sep 29, 2020 • 53min
262: Good Idea, Terrible Idea?
On this week's episode, Chris introduces a new segment called "Good Idea, Terrible Idea?" as he considers introducing a read-only mode to avoid interrupting users during scheduled downtime. Steph has started a new project and explores the idea of merging separate, but similar, applications into one codebase.
They also dive into micro-service environments to discuss the difficulties of integration testing and potential strategies.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
Earth, Wind & Fire - September
ActiveRecord Persistence
Amazon SQS
Swagger
GraphQL
VCR
The Bike Shed VCR episode - 189: It's Gonna Work, Definitely, No Problems Whatsoever
Capybara Discoball
React Podcast Episode - 110: Sam Selikoff on Finding a Full Stack React
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Indeed: Click through and get started with a free seventy five dollar credit for your first job postSupport The Bike Shed

Sep 22, 2020 • 53min
261: A Jenga Tower of Lets and Context
On this week's episode, Steph and Chris tackle a listener question around composition over inheritance, especially in the context of Rails which makes regular use of inheritance. Dependency injection, OOP vs FP, frameworks vs app code -- they hit it all!
They also chat about burnout and how they've dealt with it, using jq to investigate differences between json responses, refactoring tests and using let, and Steph shares her recent learnings about graphviz.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
ExpressVPN - Click through to get get an extra three months FREE on a one-year package!
Getting Back to Work by Carl Reyes
"If you're feeling down lately, here's a quick test to figure out why" tweet
jq (command-line JSON processor)
lets not
graphviz
Composition over Inheritance on Upcase
React hooks, composition
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.ExpressVPN: Click through to get get an extra three months FREE on a one-year package!Support The Bike Shed

Sep 15, 2020 • 45min
260: N+1s For Days
On this week's episode, Chris shares a tale of performance improvements and a recent discussion about replacing a REST API with GraphQL. Steph dives into migrating a database column to restrict input and dropping database columns safely. They also discuss when to abstract code (a topic that surprisingly, they may not agree on) and running "Unused" to identify dead code.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
ActiveRecord - ignore_columns
strong_migrations
Rails Issue - ActiveRecord enum: use validation if exists instead of raising ArgumentError
Insomnia
Unused
Using Vim with ctags
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Indeed: Click through and get started with a free seventy five dollar credit for your first job postSupport The Bike Shed

Sep 8, 2020 • 49min
259: That's Not How Numbers Work
On this week's episode, Steph and Chris tackle the thorny topic of 10X engineers. Do we think they really exist? What characteristics make an individual more effective, and more importantly, what can they do for a team?
To round out the conversation, they chat about rewrites and when they do and don't make sense, Ruby 2.7 keyword argument deprecation warnings, and a listener question revisiting Ruby popularity and what languages would we learn if we couldn't write Ruby anymore.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
Ruby 2.7 Deprecates Conversion Of Keyword Arguments
GitHub - Upgrading GitHub to Ruby 2.7
Matz -- New 2.7/3.0 keyword argument pain point
warnings gem
Bike Shed 217 -- we answer "encouraging companies to use Ruby and Rails and asking how we identify ourselves as developers"
Bike Shed 208 -- we answer "what makes Rails successful?"
Bike Shed 234 -- we answer "the complex tradeoffs between craft, preferences, and business needs"
GitHub Survey - Top Languages
Stack Overflow survey - Programming Languages
Google Trends - Dynamic Programming Languages
2020 Ruby on Rails Community Survey Results
Ruby on Rails Podcast - 2020 Ruby on Rails Community Survey with Robby Russell
Rust - Are we web yet?
10x engineer thread from 2019
Alice Goldfuss twitter thread on honesty in teams
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Indeed: Click through and get started with a free seventy five dollar credit for your first job postSupport The Bike Shed

Sep 1, 2020 • 41min
258: Digital Gardeners
On this week's episode, Steph and Chris discuss a git-blame feature that supports bypassing less helpful commits. They also revisit a discussion about Dependabot PRs and recent performance adjustments, sharing which strategies worked and which ones didn't. They also discuss the dreaded three-state boolean, designing a system for cacheability, and using Ruby's magic comment to freeze string literals.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
Trello Account Switching Feature
Git feature: ignore-revs-file
Chris's Tweet about ignore-revs-file
Strong Migrations
MemCachier
Ruby 2.3 - magic comment to freeze string literals
Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Indeed: Click through and get started with a free seventy five dollar credit for your first job postSupport The Bike Shed

Aug 18, 2020 • 50min
257: How Late On a Friday Can You Deploy?
On this week's episode, Steph & Chris take a deep dive into all things technical debt. How do you know when your code has reached "good enough"? When might we purposefully knowingly take on technical debt? How do we tackle existing technical debt without halting new development? How can we tell high-interest, hair on fire debt from "ehh, it's fine" debt that we can let lie? Tune in to find out!
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
FusionAuth - Use it for free today and get a free t-shirt, or upgrade to their paid editions and get 25% with promo code BIKESHED
Rack::Timeout Sigterm
The Art of Code Comments - Sarah Drasner | JSConf Hawaii 2020
Technical Debt Panel from thoughtbot
Gary Bernhardt on Full Stack Radio
Sandy Metz - The Halflife of Code
Code Climate Churn vs Complexity Graph
Become a Sponsor of The Bike Shed!Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.FusionAuth: Use it for free today and get a free t-shirt.
Or, upgrade to their paid editions and get 25% with promo code BIKESHED Promo Code: BIKESHEDSupport The Bike Shed

Aug 11, 2020 • 47min
256: Rational Pessimism
On this week's episode, Chris shares his recent adventures of working with a team that prioritizes async-first communication and Steph revisits a previous discussion around the use of web sockets and optimistic user interfaces. They also dive into the classically hard question "should we rewrite the app?" and share survival tips for learning to type on a split keyboard.
This episode is brought to you by:
ScoutAPM - Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy
Indeed - Click through and get started with a free seventy five dollar credit for your first job post
Telegram
Phoenix Channels JavaScript client
Express.js
MongoDB
ErgoDox Keyboard
A Modern Space Cadet
Atreus Keyboard
Moonlander Keyboard
Sponsored By:Scout: Give Scout a try for free today and Scout will donate $5 to the open source project of your choice when you deploy.Indeed: Click through and get started with a free seventy five dollar credit for your first job postSupport The Bike Shed