In my efforts to teach myself programming in Python, I have acquired a number of books some of which have proved to be more useful to my needs than others. Since it’s a bad habit of mine to always buy one more book than I need, I now own more Python guides than necessary. But maybe some of them will come in handy the day that I am no longer a beginner.
“Python for Absolute Beginners” was the first title I bought. I read this book while taking an online course, and I enjoyed this introduction. It’s somewhat light and gentle on the uninitiated. It gives you a good idea of why you would want to learn any programming and even manages to make OOP sound fun and useful. Ultimately, this is like a “…for Dummies” guide that will leave you begging for answers to problems outside the book. It’s cheap and a great primer but it won’t take you far.
I am now reading “Python Programming: An Introduction to Computer Science “. Yes, I am afraid to admit that this has been my bed-time and leisure reading material. I had hesitated to buy this book because it sounded too much like a boring college text book. But it turns out this is the best volume for someone wanting to learn Python and jump start his understanding of computer programming. The book delivers a lot more meat and code examples than the Absolute Beginners book. No, it’s not as funny. But it’s anything but boring. If you’re new to programming and Python (like me), I highly recommend this one. I think there will be much more useful info about algorithms and how to tackle real-life programming problems in this book than in the first one.
I bought both the Mark Lutz classics “Learning Python” and “Programming Python” used on amazon.com. Needless to say that (at 700 pages and 1600 pages respectively) they are comprehensive. And that’s what makes them less useful for the Beginners. “Programming Python” has a great introduction to the language and its ‘structure’ but then quickly drifts off into areas that I will probably never deal with. “Learning Python” is a great place to look up things – a Python dictionary so to speak. Good to have but not a page-by-page learning tool.
Similarly comprehensive, leaning towards redundant, is Wesley Chun’s “Core Python Programming”. Again, you can find many language details in this book, but the way the book is organized struck me as an example of how many computer books are bloated with unnecesary chapters and sections just to make them FATTER. This is the only title that was completely useless to me. I admire the effort that goes into books like this one. Maybe it’s a bible to the serious developer. I haven’t touched it in months.
Finally, the only O’Reilly title I have found some use for is the “Python Cookbook”, and the reason is very simple: it’s got code, code, and more code. Much of this is in areas I have very little use for. But much of it is very interesting if you’re just trying to figure out how the code works and learn by reading it. This was a worthwhile investment, and I would recommend this much more than others. With this book and Zelle’s intro, I think, any Python beginner would be all set to start coding and learning what Python is all about.