the ruby programming language notes