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

Ruby Articles

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

    • All Topics
    • Design
    • Development
    • Product
    • More topics
  1. Custom Ranges in Ruby

    How can we create ranges out of custom objects?

    Joël Quenneville
    April 15, 2022
    • Ruby
  2. Reducing Leaky Abstractions Introduced by ActiveRecord

    ActiveRecord provides a comprehensive interface for querying the database, but at what cost?

    Josh Clayton
    March 30, 2022
    • Rails
    • Ruby
    • Web
    • Good Code
  3. Pipelining without pipes

    Ruby, functional programming, how to build operation pipelines, and the average programming language color.

    Matheus Richard
    March 11, 2022
    • Ruby
    • Functional Programming
    • OOP
    • Refactoring
  4. Ruby splat operator 🌟

    The Ruby splat operator is confusing and here is why…

    Sami Birnbaum
    January 17, 2022
    • Web
    • Programming
    • Ruby
  5. Attending RubyConf Virtually

    RubyConf happened last month! It spurred some reflections on the good and bad of virtual conferences.

    Fritz Meissner
    December 14, 2021
    • Conferences
    • Ruby
  6. A Standard Way to Lint your Views

    Find out how to use erb-lint to lint your views, including using Standard to lint the Ruby code they contain.

    Connor McQuillan
    December 6, 2021
    • ERB Lint
    • Standard
    • Rubocop
    • Rails
    • Ruby
  7. What technologies should I learn?

    What technologies do we recommend to early career web developers?

    Joël Quenneville
    November 18, 2021
    • Web
    • Ruby
  8. Meet Fiber, Thread's Cooperative Cousin

    A brief introduction to Ruby’s lightweight concurrency primitive.

    Thom Carter
    November 16, 2021
    • Ruby
    • Concurrency
    • Performance
  9. A Broader Take on Parsing

    Broadening our definition of “parsing” yields some useful insights.

    Joël Quenneville
    October 14, 2021
    • Elm
    • Ruby
    • Parsing
    • Web
  10. Ruby safe navigation

    Ruby’s safe navigation can hide some subtle edge cases. We explore approaches to think about conditional logic, alternatives to &., and when &. is the best tool for the job.

    Joël Quenneville
    October 13, 2021
    • Development
    • 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 … 8 9 10 11 12 13 14 15 16 … 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