Donald Knuth on the rewards of computer programming