Learning the basics of metaprogramming in Ruby.