Completing the Programming Ruby (3rd Edition) book