

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 15, 2015 • 50min
36: Python Unchained
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
thoughtbot's research board
Validating Schemas with an RSpec Matcher
json_matchers
scenic
Support The Bike Shed

Oct 7, 2015 • 40min
35: GitHub Ate My Résumé
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 uneasy about it.
Exceptional Ruby by Avdi Grim.
Proc#=== documentation.
Upcase: 50% Off Your First Month For Bike Shed Listeners!
Support The Bike Shed

Sep 29, 2015 • 39min
34: README.md
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 Twitter
Support The Bike Shed

Sep 22, 2015 • 40min
33: Just Put it in a Module, Man
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 tweet us.Support The Bike Shed

Sep 15, 2015 • 51min
32: Bug For Bug Compatibility
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 Rust ORM
Support The Bike Shed

Sep 8, 2015 • 48min
31: Oxidizing an ORM
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
Support The Bike Shed

Sep 1, 2015 • 46min
30: Just Go to Slash Wibble
Derek and Sean discuss hypothetical changes to Rails routing before turning their attention toward hunting memory bloat and the proposal that strings be frozen by default in Ruby 3.
The Bike Shed listeners make disable_with default on submit_tag
Derek tries to explain the trouble with unrestricted routes to a client.
The trouble with singular resources and form_for
Use derailed benchmarks to find memory leaks and bloat.
ActiveRecord memory bloat
Matz: String literals frozen by default in Ruby 3
The issue for discussion because Twitter is terrible for these things.
The trouble with symbols
Required keyword argument syntax is ugly.
Support The Bike Shed

Aug 25, 2015 • 23min
29: Django Unchained (Mike Burns)
Sean is joined by Mike Burns to discuss what Ruby and Rails can learn from Python and Django.
Mike Burns
Python's map
Django
George's Sleeping with the Enemy talk from RailsConf 2013
A False Midnight
Python doctest
Python Decorator Library
Support The Bike Shed

Aug 18, 2015 • 9min
28: Minisode 0.1.1
Did you know Rails has no integration test suite? What could go wrong?
ActionController::Parameters no longer inherits from Hash
Support The Bike Shed

Aug 11, 2015 • 44min
27: I've Got 29.97 Problems (and codecs are some)
Sean and Derek circle back on HTTP before diving into unsafe rust, and finally the merits of a small standard library.
HTTP2 implementation status
libffmpeg
unsafe rust
uninitialized memory in Rust
stdx - the missing batteries of Rust
NPM 3.0.0
NPM Shrinkwrap
Support The Bike Shed