thoughtbot
The Bike Shed
On The Bike Shed, hosts Joël Quenneville, Sally Hall, and Aji Slater discuss development experiences and challenges at thoughtbot with Ruby, Rails, JavaScript, and whatever else is drawing their attention, admiration, or ire this week.
Author
thoughtbot
Category
Podcast website
Latest episode
Jul 7, 2026
Where to listen?
Podcasts in the app Replaio Radio Coming soonPodcasts are coming to the app soon. Install now and be the first to see a whole new take on podcasts
Episodes
55: Hot Dog is Not a Dessert 09.03.2016 40:54
Derek and Sean talk about their experience with the Rails 5 betas, how to test against them today, and things that you might want to look out for when updating your app. Ides of March Presence validation of virtual attribute not firing appropriately ActionDispatch request helpers don't properly rewrite positional arguments to keyword arguments Strong Parameters migration path to Rails 4 A Rule of...
54: Argument Error 02.03.2016 42:25
Derek shares some Elixir annoyances with Sean and they discus how a consulting role colors their perception of languages and frameworks, both for better and for worse. Sean provides an update on SQLite and Association support in Diesel. GoodTImes , Timex , and Ecto. DateTime When should you use DateTime and when should you use Time by Andrew White Twitter conversation with Brandon Hikert Postgres...
53: Cache Machine 24.02.2016 43:28
Laila and Derek go on a tour of the various caching mechanisms available to web applications in general, and Rails specifically. When is the right time to cache and at what level? The Road to 2 Million Websocket Connections in Phoenix by Gary Rennie Toxic Synovitis Memoization is a Liability by Henrik Nyh Use a leading underscore for memoization Two Hard Things in Computer Science Rails SQL Cache...
52: You're an Elixir Developer Now 17.02.2016 46:31
Derek and Laila discuss Derek's excitement for Elixir and Phoenix. Is Elixir as fun to write as Ruby? Is Phoenix a better Rails? Elixir and Phoenix Routes in Phoenix Using ctags with Elixir Static Assets in Phoenix ja_serializers ecto Is There a JSON Schema describing JSON API? Elixir 1.2 Map and MapSet scale better ExMachina - factories for Elixir Elixir Typespecs and Behaviours
51: Is Sim City Running? (Steve Klabnik) 10.02.2016 43:56
We enjoy a wide-ranging discussion with Steve Klabnik on the importance of good documentation, the sometimes cloudy definition of a breaking change, the politics of open source contributions, and work/life balance or boundaries. Steve Klabnik - twitter , website , blog Let’s Talk About Ecosystem Documentation SimCity Mode in Windows 3.1 from Joel Spolsky Rescuing Resque… Again Netrunner IntermezzO...
50: Open Mic 03.02.2016 28:30
It's Open Mic day at The Bike Shed. We hear from other thoughtbot designers and developers about what they're excited to be spending their investment time on lately. Matt Sumner Hunchpig Podcast Haskell Programming The Lambda Calculus Learn You a Haskell for Great Good Is Everyone Trying Their Best? - The Bike Shed on software quality Cole Townsend Velocity JS Cole on Dribbble The Buffalo Bills` P...
49: A More Practical Haskell 27.01.2016 34:40
How can an ORM be faster than a SQL String? Laila and Sean discuss the latest happenings in Diesel and why it is that a systems language needs an ORM, anyway. What is the difference between traits in Rust and typeclasses in Haskell? What is a pure function ? Why Rust Ditched Pure Functions The ActiveRecord and DataMapper patterns (not libraries) as defined by Martin Fowler in Patterns of Enterpris...
48: Is Everyone Trying Their Best? 21.01.2016 34:44
Software is broken. In this episode, Derek and Sean discuss why exactly it's broken, and what we can do to make it better. The origin of "software engineering" The Coq Proof Assistant NASA's 10 rules for developing safety critical code The differences between strong and static typing "If it compiles it works" Derek adds IS NULL to Diesel "Quickcheck in Ruby" Note: Shopify is fewer than 700 develop...
47: Star Wars Oranges 13.01.2016 54:12
Ruby 2.3 is out! What are we looking forward to trying and what do we think of &. and try ? Stick around after the credits for spoiler-filled discussion of Star Wars: The Force Awakens Star Wars Fruit What is Kerberos? Safe navigation operator (AKA the lonely operator) by Georgi Mitrev ActiveSupport’s #try might not be doing what you think it’s doing by Avdi Grimm The history of try in Rails a...
46: Don't Breathe, Save the Planet 06.01.2016 34:14
We discuss the maintenance burden of ActionCable and its dependencies on Rails 5, follow-up on Scenic issues, and discuss implementing migrations anew in Diesel. Don't Breathe DHH on The Bike Shed DHH's ActionCable Demo Fixing Scenic view dumping Updatable materialized views in Scenic A first pass at Diesel migrations Teachable moments
45: I Think I'd Prefer An Error to Nonsense 23.12.2015 47:57
Derek shipped Scenic 1.0, which spurs a conversation about semantic versioning and the value of the 1.0 milestone. We discuss what the bar for breaking changes in a library should be and look at some specific changes on tap for Scenic and whether they will or should carry a major version bump. Scenic Semantic Versioning - See points 4 and 5 Implementing Multi-Table Full Text Search with Postgres i...
44: It Won't Crash... It Might Crash 17.12.2015 47:29
Sean has shipped early versions of Diesel, an ORM for Rust! We discuss its semantic versioning, the ergonomics of use versus the complexities of implementation, early issues with the API and the road to Diesel 1.0. Diesel Semantic Versioning SemVer for Library Maintainers by Richard Schneeman Rust RFC 1122 - Language SemVer Lobsters API hole in diesel updates Implementing IS NULL and IS NOT NULL f...
43: That's DOCTOR Internet Technologist 09.12.2015 50:43
We talk about lessons learned from teachable moments both in the moment and decades later. Teachable moment Safe Operations for High Volume PostgreSQL by Paul Gross How to Create Postgres Indexes Concurrently in ActiveRecord Migrations by Dan Croak PostgreSQL COPY FROM Guarding against truncating the production database in Suspenders Have Some (Referential) Integrity with Foreign Keys "Inheritance...
42: That's Incredibly Ambitious (Grayson Wright) 02.12.2015 37:32
We speak to Grayson Wright about building Administrate, an open source Rails framework for administrative interfaces. What makes Administrate different than existing solutions and what are the challenges in maintaining high-level dependencies. Announcing Administrate Administrate on GitHub Administrate Demo Bourbon and Neat Responsive tables Spree Keep A Changelog Clearance's NEWS file Code For Am...
41: Ugh, I Have to Write Web Apps in This Thing 25.11.2015 35:25
Derek and Sean talk about Derek's exploration into Elixir and Phoenix, when and how performance matters, and ways to keep your Rails app fast from day 1. The Elixir Programming Language Phoenix Web Framework Announcing Ex Machina ex_machina on Github touches are now batched in Rails 5 Basecamp 3 Source Code Bullet and Rack MiniProfiler Railing About Performance with Sam Saffron A Client Project, T...
40: ActiveRecord Deprecated Persistence 18.11.2015 34:22
The ActiveRecord update API is a mess of methods that confuse even ActiveRecord’s maintainer. What are the problems and is there any hope for a solution? 40 Prevent Information leaking In Rails Different ways to update in Rails The Perils of Uniqueness Validations disable with is default in Rails 5 The Bike Shed #11: Forming Opinions
39: Okay with Instability (Yehuda Katz) 11.11.2015 1:07:10
We talk with Yehuda Katz about how much risk is right for you and your app, the sharp tools of high level abstractions, and how our statistical intuition leads us astray on web performance. Remove The Stress, Pick a Deadline Writing Software by DHH Skylight The Log Normal Reality - On how our statistical intuition leads us astray. Yehuda on Twitter
38: Ugh, Forms 03.11.2015 40:33
Laila and Derek discuss how they have handled forms with complex validation requirements and how to make these forms have a smooth user experience. HTML Form Validations HTML5 Validation Browser Support Parsely JS Client Side Validations SimpleForm 7 Ways Form Accessibility Can Boost Conversions
37: The Web is Faster Without Garbage 29.10.2015 44:15
Begun, the ad block wars have. Derek debugs an issue that arises from iOS ad blocking and wonders if analytics will move back to the server side. Sean fills us in on how dirty checking works in ActiveRecord and how he's making it faster and better in Rails 5. Sean and his wife in a hot air balloon iOS 9 Content Blockers The Cost of Mobile Ads on 50 News Websites Do No Track HTTP Header ActiveModel...
36: Python Unchained 15.10.2015 50:06
Derek and Laila talk about learning Python and Django and discuss how thoughtbot adopts new languages, frameworks, and libraries. What factors influence adoption? How do we share what works and doesn't work? Writing your first Django app The Python Tutorial Django URLs Django filters Learn You A Haskell For Great Good CIS 194: Introduction to Haskell Two Scoops of Django Ruby Science Suspenders th...
35: GitHub Ate My Résumé 07.10.2015 40:12
Sean and Derek explain why you should always use a personal email address in your Git configuration before they dive into Ruby exception handling, and potential MRI proc optimizations. Set your Git email address to an address you own "forever". Git .mailmap Jobs at thoughtbot rest-client Ruby's Kernel#raise documentation Ruby's Exception#cause documentation Spring overrides raise , but feels uneas...
34: README.md 29.09.2015 38:47
Derek is joined by Laila Winner to discuss Neo4j, the importance of fantastic documentation, and the different types of documentation a project requires. PLIBMTTBHGATY Neo4j Teach, Don't Tell Let's talk about ecosystem documentation - Grading documentation of the top 40 crates in Rust. FactoryGirl Getting Started Clearance SignInGuard documentation Rails Security Guide Jobs at thoughtbot Laila on...
33: Just Put it in a Module, Man 22.09.2015 40:23
Sean and Derek take some listener questions, and dig into DRY. DRY Single Responsibility Principle (SRP) Inherited Resources Sandi Mets - All The Little Things Sign up for Sandi Metz's "Chainline" newsletter Sunk cost fallacy "Inheritence is not for sharing code" Eric Hayes' Rails PR Larry Bird Thanks for sending us your questions and feedback. Got more? You can email us at hosts@bikeshed.fm or tw...
32: Bug For Bug Compatibility 15.09.2015 50:36
Derek and Sean discuss Microsoft's interest in open source, improving the Rails development story on Windows, and Sean's progress implementing an ORM in Rust. Developing on Windows PowerShell Cygwin Does Windows fork ? Modern.ie ievms Internet Explorer compatibility mode PostGIS Using Arel to Compose SQL Queries Ransack Rust specialization Rust grapples with orphan instances Sean's in-progress Rus...
31: Oxidizing an ORM 08.09.2015 48:24
Are provably correct queries of interest to you? Sean gives a rundown of what a Rusty ORM might be like to build. String , str , and CStr . What's a marker trait ? Rust macros . Rust compiler plugins . hy·gien·ic ˌhī-ˈjē-nik, -ˈje- also -jē-ˈe-nik Sean's ORM query thoughts
Similar podcasts
Replaio is not a podcast publisher; show names, artwork and audio belong to their authors and are distributed through public RSS feeds.