Learning Python

So, you’ve decided to learn Python. A good choice. It’s a powerful tool. But a tool is only as good as the professional who wields it. The way you learn this craft will determine the quality of your work for years to come. That brings us to the book, an absolute beast from O’Reilly.

Let me be clear. That’s not a book you skim. At over 1600 pages, you don’t read this book; you study it. You absorb it. You live in it for a while. This is a comprehensive, bottom-up exploration of the Python language. It’s a deep dive, not a quick paddle in the shallows.

What That is, And What It is not

Make no mistake, the book chose a path: the path of completeness. It attempts to be a single, authoritative volume on the core language. The author, Mark Lutz, has done a commendable job of laying out not just the what, but the why. You won’t just learn syntax; you’ll discover the language’s object model, its namespaces, its inheritance structure. This is the kind of foundational knowledge that separates the professional from the amateur.

However, we must be professionals and acknowledge the reality of the situation. The book was published in 2013. In the software world, that’s a geological epoch ago. Python has evolved. The community has evolved. Best practices have evolved. The fundamentals of `for` loops and classes are timeless, but the ecosystem is not.

Who the book is for:

  • The Completist. If you’re the kind of person who can’t stand not knowing how something works under the hood, that is your book. It will answer questions you didn’t even know you had.
  • The Advanced developer. Coming from Java, C++, or another strongly-typed, object-oriented language? This book will give you the exhaustive details you crave. It respects your intelligence and doesn’t skip the theory.
  • The Aspiring Craftsman. If you see programming as a craft to be mastered, this encyclopedia is a worthy cornerstone for your library. You will build a foundation of knowledge so solid that you’ll be able to reason about any Python code you see.

Who should probably pass on this book:

  • The Absolute Beginner Who Wants Quick Results. If your goal is to build a website or analyze data this month, this book will crush your spirit. Its sheer size and density are a bug, not a feature, for you. Your time is better spent on a project-based tutorial.
  • The Pragmatist Needing Modern Idioms. This book predates the wide adoption of many modern Python features. You will find little to nothing on modern `asyncio`, type hinting, the walrus operator, or `pathlib`. You would be learning a dialect of Python this is becoming a historical artifact.
  • The “Learn by Doing” Coder. If you learn best by breaking things and building small projects, the theoretical, chapter-by-chapter approach will feel like a slog. This is a lecture, not a workshop.

Think of it this way: this book is a treatise on how to build a car engine, piece by piece. It will explain every piston, every valve, every gear. It’s magnificent in its detail. But if your goal is to simply learn how to drive from point A to point B, that is absolutely the wrong tool for the job. You don’t need to be a master mechanic to be a good driver.

So, the choice is yours. Do you need to build the engine, or do you need to drive the car? If you have the time and the discipline to become a master mechanic of the core Python language, this tome is a worthy, if heavy, guide. If not, respect your own time and find a more direct path to your destination.

View reviews and pricing

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *