Skip to main content
thoughtbot thoughtbot
  • Live on Twitch!

    thoughtbot is livestreaming

    Work alongside the thoughtbot team as we collaborate with each other and our clients, live. Ask us anything, we're live right now!

  • Case Studies
  • Blog
  • Let’s Talk
Live on Twitch!

thoughtbot is livestreaming

Work alongside the thoughtbot team as we collaborate with each other and our clients, live. Ask us anything, we're live right now!

Let’s get started!
View all Services
Development
  • Ruby on Rails
  • Hotwire
  • AI and Machine Learning
  • Maintenance
  • Mobile
Design
  • Discovery Sprints
  • UX, UI, and Product Design
  • Design Systems
Product
  • MVP
  • Product Management
  • Accessibility
Team and Processes
  • Team Augmentation
  • Fractional Leadership
View all Services
View all Resources
Development
  • Tech Leadership Resources
  • Open Source
  • Books
  • The Bike Shed Podcast
  • Live Streaming on YouTube
  • Conference Talks
The business of great software
  • Playbook
  • Giant Robots Smashing Into Other Giant Robots Podcast
  • Design Sprint Guide
  • Live Streaming on LinkedIn
View all Resources

Web Articles

Written by thoughtbot, your expert partner for design and development.

    • All Topics
    • Design
    • Development
    • Product
    • More topics
  1. Do End Your Braces

    Braces and do/end are completely swappable—almost all the time. They have...

    Mike Burns
    March 19, 2012
    • Web
    • Ruby
    • Testing
  2. Short, Explicit Test Setups

    You probably know about this Factory Bot1 definition syntax:...

    Dan Croak
    March 12, 2012
    • Web
    • Ruby
    • Testing
  3. Watch for Turbulence

    Give low complexity to your high-churn code.

    Mike Burns
    February 24, 2012
    • Web
    • Good Code
  4. How To Use Arguments In a Rake Task

    I came across this today. You can write Rake tasks that accept arguments,...

    Chad Pytel
    February 23, 2012
    • Web
    • Ruby
    • Unix
  5. Anonymizing User, Company, and Location Data Using Faker

    Often during development it’s useful to have realistic data to get a sense of...

    Adarsh Pandit
    February 22, 2012
    • Web
    • Rails
  6. Derive #inject for a better understanding

    Let’s talk about Enumerable#inject. It’s special to me. In other cultures...

    Mike Burns
    February 17, 2012
    • Web
    • Ruby
    • Good Code
  7. Wildcards In Rails Redirects

    The captured wildcard in a Rails 3 route can be used in the redirect method:...

    Dan Croak
    February 15, 2012
    • Web
    • Rails
  8. How to Apply What You've Learned from TDD to Writing Data Migrations

    After doing TDD full time for years, I have a hard time writing code without...

    Joe Ferris
    February 13, 2012
    • Web
    • Ruby
    • Testing
  9. Convert Ruby 1.8 to 1.9 Hash Syntax

    Using Vim or your shell, convert old-school hashes into new-school hashes.

    Dan Croak
    February 11, 2012
    • Web
    • Ruby
    • Vim
  10. Decoupling Data from Presentation

    I’m really happy to see a resurgence in an understanding that writing...

    Josh Clayton
    February 2, 2012
    • Web
    • Rails
    • Testing
  11. Sign up to receive a weekly recap from thoughtbot

    Looking for even more ways to stay connected?
    RSS feed icon Check out our feeds
« First ‹ Prev … 51 52 53 54 55 56 57 58 59 … Next › Last »

Footer

thoughtbot
  • Services
  • Case Studies
  • Resources
  • Let's Talk
  • Our Company
  • Careers
  • Purpose
  • Blog
  • Sponsor
  • Mastodon
  • Bluesky
  • GitHub
  • YouTube
  • Twitch
  • Feeds
© 2025 thoughtbot, inc.

The design of a robot and thoughtbot are registered trademarks of thoughtbot, inc.

  • US: +1 (877) 9-ROBOTS
  • UK: +44 (0)20 3807 0560
  • Beware of fraudulent thoughtbot job listings Learn more
  • Code of Conduct
  • Accessibility Statement
  • Privacy Policy