# There's More to Ruby Debugging Than puts()

DevFeed: [There's More to Ruby Debugging Than puts()](<https://devfeed.tech/articles/there-s-more-to-ruby-debugging-than-puts-1275.md>)

Original publisher: [Read original article](<https://shopify.engineering/17489080-theres-more-to-ruby-debugging-than-puts>)

Author: Blake Mesdag

Published: 2015-02-24T15:12:00Z

Content type: tutorial

Language: en

Sources: [Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering.md>), [Shopify Engineering - Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering-shopify-engineering.md>)

Topics: [debugging](<https://devfeed.tech/topics/debugging.md>)

Tags: [debugging](<https://devfeed.tech/tags/debugging.md>), [ruby](<https://devfeed.tech/tags/ruby.md>)

## AI overview

A Ruby debugging tutorial covering convenience methods for inspecting objects, method definitions, inheritance, call chains, and internal state.

## Source excerpt

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan Debugging is always challenging, and as programmers we can easily spend a good chunk of every day just trying to figure out what is going on with our code. Where exactly has a method been overwritten or defined in the first place? What does the inheritance chain look like for this object? Which methods are available to call from this context? This article will take you through some under-utilized convenience methods in Ruby which will make answering these questions a little easier.