in the first example:
# without a default value
dog_breeds = {"corgi"=>"short and sweet", "labrador"=>"labradorable"}
dog_breeds["Australian cattle dog"] #=> nil
# with a default value
default_cuties = Hash.new("cutie")
dog_breeds["vizsla"] #=> "cutie"
# accessing a nonexistent key doesn't alter the hash
dog_breeds #=> {}
should the last two references to dog_breeds
actually be default_cuties
?