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
  • Purpose Built
  • 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. Improving the Command-Line Postgres Experience

    Understanding the ~/.psqlrc configuration file, its options, and reading...

    Gabe Berke-Williams
    November 30, 2013
    • Web
    • PostgreSQL
  2. Caching API Requests

    When making requests to an external service’s API, some requests will...

    Dan Croak
    November 29, 2013
    • Web
    • Ruby
  3. Anti-Pattern: Iteratively Building a Collection

    How Ruby’s Enumerable module can turn lengthy, verbose iterations into clear abstractions.

    Mike Burns
    November 25, 2013
    • Web
    • Ruby
  4. Ruby and Python Libraries for Yammer's API

    We’ve worked closely with folks at Yammer to help developers build...

    Adarsh Pandit
    November 24, 2013
    • Web
    • Ruby
    • Python
  5. Handling API Rate Limits by Retrying Requests in Background Jobs

    Has your app ever encountered a 429 (Too Many Requests) status code when...

    Greg Lazarev
    November 23, 2013
    • Web
    • Ruby
  6. Don't Stub the System Under Test

    xUnit Test Patterns defines the System Under Test (SUT) as: whatever class,...

    Joe Ferris
    November 22, 2013
    • Web
    • Ruby
    • Testing
  7. Rescue StandardError, Not Exception

    Sometimes our Ruby programs throw errors which we don’t have full control...

    Jon Yurek
    November 18, 2013
    • Web
    • Ruby
  8. Faking Remote Services with Rack::Test

    Using Rack middleware, we can reroute Rack::Test requests to fake remote...

    Joe Ferris
    November 16, 2013
    • Web
    • Testing
    • Ruby
  9. FactoryBot for Seed Data?

    Occasionally, somebody recommends or asks about using FactoryBot to generate...

    Josh Clayton
    November 13, 2013
    • Web
    • Ruby
    • Testing
    • Factory Girl
    • Factory Bot
  10. Less Painful Heroku Deploys with Migrations

    A Rails app running on Heroku must be restarted after migrating the database....

    Joe Ferris
    November 12, 2013
    • Web
    • Ruby
  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 … 36 37 38 39 40 41 42 43 44 … 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