Menu Sidebar

Ruby Guilty Pleasures

Here’s a bit of code that I both love and feel a bit guilty about.

This code locates a project’s “root directory” by ascending from the current directory until it finds a directory with a subdirectory named demos. (Don’t ask why this indicates the root directory). In case it never finds such a directory, it raises an exception.

Love, because it’s so expressive and uses so many of my favorite Ruby goodies.

Guilt, because it’s dense and not the most revealing code in the world. Nothing about it is “tricky” or obfuscated; it just packs a lot into a small space.

Ruby goodies featured in these three lines include:

A late-night rant about OOP and parametric dispatch

Update: this post was the product of an exhausted mind, and as such it misused terms, wasn’t well backed-up, and was generally incoherent. I’m withdrawing it until such time as I can articulate these ideas a little more competently.

I’m leaving this note here just to explain the absence. Here, have a photo of a mountain view:


Newer Posts
Older Posts

Virtuous Code

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


News, notes, and commentary from Avdi, weekly-ish.

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.