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!
- New Products
- March 2015 Issue of Linux Journal: High-Performance Computing
- Not So Dynamic Updates
- Users, Permissions and Multitenant Sites
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- April 2015 Video Preview
- Tighten Up SSH
- DevOps: Everything You Need to Know
- Non-Linux FOSS: MenuMeters