Dive Into Python by Mark Pilgrim
The back cover of Dive Into Python claims it is a practical book for busy programmers. As a rule, one should never believe back-cover blurbs, but this one is true. This book teaches Python by dissecting useful programs that do actual tasks, such as using regular expressions to validate street addresses and phone numbers and accessing HTTP and SOAP Web services, and providing great detail about what might go wrong and how to troubleshoot it. Pilgrim emphasizes how to write unit tests and the “write tests before code” philosophy.
In the book, readers get the code before the explanation. Pilgrim does a remarkable job of making his explanations clear and complete, and he introduces concepts exactly where you need them. Dive Into Python is not a reference book, however. If you see len() or func(*args, **kw) in an example and don't know what it means, you have to visit the on-line Python documentation.
Pilgrim is a philosophy major, and he sprinkles philosophical humor throughout the book the way Larry Wall sprinkles camels. He even quotes Larry in saying Perl is worse than Python “because people wanted it worse.” My favorite gems are, on reference counting, “Things disappear when nobody is looking at them” and “Bugs happen. A bug is a test case you haven't written yet.”
Dive Into Python is published under the GNU Free Documentation License—cheers to Pilgrim and Apress for doing this. Let's hope more books will be published this way.
See the Dive Into Python home page diveintopython.org; the complete text of the book is on-line.
Webinar: 8 Signs You’re Beyond Cron
11am CDT, April 29th
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.Join us!
- Tips for Optimizing Linux Memory Usage
- Picking Out the Nouns
- "No Reboot" Kernel Patching - And Why You Should Care
- DevOps: Better Than the Sum of Its Parts
- Return of the Mac
- Android Candy: Intercoms
- Drupageddon: SQL Injection, Database Abstraction and Hundreds of Thousands of Web Sites
- Non-Linux FOSS: .NET?
- Consent That Goes Both Ways