Tutorials, product info, and good advice from the Honeybadger crew.
In this post we'll discuss some non-obvious behavior of class variables and show how it's all the fault of lexical scoping.
Have you ever needed to group items in an array, or lines in a file? In this post we'll discuss a few often-overlooked Enumerable methods that let you do just that.
The humble splat operator (*) is one of those features of Ruby that just gets more interesting the more you look at it. In this post we'll talk about how you can construct and manipulate arrays with splats.
*
In this post we'll follow the journey of a simple program as it's lexed, parsed and compiled into bytecode. We'll use the tools that Ruby gives us to spy on the interpreter every step of the way.
A lot of problems faced by beginning Rubyists are caused by not understanding self. In this post we'll take a deep dive into self under conditions both common and uncommon.
self
Ruby supports using regex in lots of interesting ways that go beyond the basic String#match method. In this post I cover a few of my favorites.
String#match
In this post, we'll dive into regex conditionals and discuss how to work around the limitations in Ruby's implementation of them
Are refinements slow? I wrote a few benchmarks to find out. The answer was surprising.
If you've never used Ruby's refinements, you might be surprised to learn that they're lexically scoped. We'll discuss what this means, and the implications for your code.
In this post, we'll discuss how to separate an HTML document into logical sections based on heading tags. I'll all also show you a cool trick for rendering arbitrarily-deep subnavigation trees using Liquid templates.