During those last years, I've been able to contribute to the biggest open source project written in Python – namely OpenStack. During that time, I had the opportunity to learn a lot of things, by reaching the boundaries of Python and its ecosystem and by rubbing shoulders with some of the greatest Python developers – some of them being developer of the Python language itself.
After doing tons of code reviews and mentoring with my fellow engineers, I decided it was time to teach everyone what should be known about Python beyond the basics.
Sure, you can code in Python. But is it good Python? Is it the state of the art? Are you sure you picked the right library? Supporting the right Python version? Distributing it correctly? Testing it perfectly? How would you know. That's why I wrote The Hacker's Guide to Python. It's the book I always wanted to read after on Python, but never found. And that's also why people love it!
Do you know everything about Python? Probably not. If you already took a course to learn the basics of the language, it is a long and tough path out there to become a master of the Zen of Python.
It takes years of practice, research, trial and errors to build experience and knowledge along the way. Simple questions such as "How do I make my code faster?" or "How do I test my code?" cost hours to find good answers. Without enough background on the topic, you'll never be sure that any answer you'll come up with will be correct.
Even when if you already wrote a few libraries and application, you are probably far from knowing everything about the language. Do you have any idea on how exceptions work internally? How methods are built and bound to objects? How to profile and optimize your Python code down to the bytecode?
In The Hacker's Guide to Python, I want to share everything I learned during my journey of coding Python every day for years. My goal is to make you proficient at Python, from writing tests to distributing your code correctly, while optimizing your code and understanding how Python works under the hood. You'll discover the state of art in Python coding and will be able to make your code shine.
The Hacker's Guide to Python features 8 interviews with great developers who wrote a lot of Python code – and sometimes, Python itself. Rather than spending this time yourself digging through everything you should know, you can save some to do some of your actual work and learn directly from the experts.
Cups of coffee
Methods & advice you should follow when writing your code and designing applications. These will help you get the most out of Python, and build future-proof programs. If you're already working on something, you'll be able to apply the techniques discussed right away to improve your current code.
You will get introduced to some of the Python internals to get a better understanding of how to write efficient code. You will gain a greater insight into the inner workings of the language. You will be unbeatable about how Python works deep down.
Battle-tested solutions to tackle problems such as testing, porting, or scaling Python code, applications and libraries. You will avoid making the mistakes that others have made, saving you time. You'll discover strategies that will help you maintain your software in the long run.
Doug Hellmann Python core developer
Paul Tagliamonte Creator of the Hy programming language
Dimitri Fontaine PostgreSQL core developer
Nick Coghlan Python core developer
Christophe de Vienne Author of multiple Python packages
Robert Collins Author of Python testing frameworks
Victor Stinner Python core developer
Joshua Harlow Author of multiple Python packages
Hi, I'm Julien Danjou, a Free Software hacker for more than 16 years now. I wear a lot of different hats in the open source ecosystem, and maybe you already encountered me or used one of my software: I am a Debian developer for 14 years, a Freedesktop contributor, a GNU Emacs committer, and the awesome window manager creator.
These last 10 years, I've been developing software using Python. Five years ago, I started to work on OpenStack, a cloud platform written in Python and the largest existing open source Python code base (2.5 millions of lines of Python) – where I was both Project Team Leader and Technical Committee Member.
If you're not happy, I don't want your money. Ask me for a refund.
No way! Read where you want, when you want, everywhere.
Contact me and I'll get back to you soon.