This is a nice list.<p>I will highly recommend <i>The Little Schemer</i>. You will change after reading this book. It is that good. This book made me truly undersy recursion. I understood recursion before, and used it to solve problems, but this is the book that totally scratched <i>my</i> surface and instilled recursion in it.<p><i>Pragmatic Thinking and Learning</i> is the first book of its kind that I ever read. I was surprised by the quality of it. It is a very nice book with scientific and actionable advice. Will recommend it, too. (Although there are some issues like oversimplified model of brain, divided into L and R mode, and in one place it preached different type of learners theory, which is now thoroughly discredited.)<p>For an approachable programming book, i.e. book not CLRS, Skiena, or DPV, I will not recommend Grokking Algorithm. I will recommend <i>A Common Sense Guide to Data Structure and Algorithm</i> from PragProg Bookshelf. This is a much better and more complete book with exercises that are effective in learning the topics well.