Menu Sidebar


Do, or do not. There is no #try.

One of the ways you know you are working in a good language is that it makes bad habits ugly. To wit:

This is not pretty. It is, as my dad might say, “sick and ugly and it wants to die”. (Yes, your dad would say that. KAG) It is also, not coincidentally, completely […]

Confident Code at B’More on Rails

Here’s video of the talk I did at B’More on Rails January 12, 2010. If I seem nervous, it’s because it’s the first time I’ve done something like this. The two things I will try to remember for future talks are: Stand still! The audience is in front of you, dumbass! The slides are available […]

Assertive Code

Trust, but verify Self-confident code does not ask questions about the data given to it. It enforces validity, asserts that its expectations are met, or ignores data which isn’t up to its standards. Previously we’ve looked at some methods for enforcement, using fetch() and Array(). Today I want to talk about the second tactic, assertions. […]

Array-ifying Values

I can’t remember if I’ve written about this before. On the assumption that I haven’t, I’ll forge ahead. As I’ve mentioned in the past I hate null checks. They clutter up code and add nothing meaningful to the code’s narrative. I hate checks to see if a value is singular or plural too. I guess […]

Writing Self-Confident Code

A common idiom in ruby is to call a method only if its receiver is not nil:


Various libraries exist for making this a little more convenient. You can use andand, or if you are using Facets you can use ergo. And seriously, you should be using them — they make your […]

Virtuous Code

"The three virtues of a programmer: laziness, impatience, and hubris" — Larry Wall

Books and Screencasts

RubyTapas Screencasts

RubyTapas Screencasts

Small plates of gourmet Ruby code.

Confident Ruby

Confident Ruby cover

32 Patterns for joyful coding.

The Making of

Confident Ruby cover

Watch me build an app in Sinatra and Rails

Objects on Rails

Objects on Rails

A developer notebook on applying classic Object-Oriented principles to Ruby on Rails projects.

Exceptional Ruby

Exceptional Ruby

The definitive guide to exceptions and failure handling in Ruby.