Hashes are fun! Re-implementing Ruby hashes to show (roughly) how they work. This code is the basis of a talk I give on the subject. The commit history includes a progression of problems and solutions.