Learn Python The Hard Way (3rd Edition): Book Summary and Review

Known for his tech articles, Ruby applications, and educational projects. Zed A. Shaw has perfected the world’s best system for learning Python.

His most remarkable projects include a series of “Learn Code the Hard Way” courses, the Mongrel web server, and now in our review, the third edition of Learn Python the Hard Way .

Zed has built a name as an outspoken critic for some aspects of the programming culture and certain technologies. One of the most notable examples is a 2016 blog “The Case Against Python 3“, a clear proof of Zed’s disdain for Python 3. In the blog, or rather essay, Zed outlines how Python 3 has been designed with fatal flaws, alleging that these failures will kill Python for good.

As you’ll probably see, Zed’s criticism of Python 3 is reflected in Learn Python the Hard Way.

Who Is This Book For?

The book is a beginner’s guide to Python and attempts to develop a general programming mindset in readers.

Although the path to understanding any programming language is often clear. Such as learning the language’s use cases, pros, cons, how it performs and its syntax. Learning the problem-solving skill of programming is way trickier.

For years now, Learn Python the Hard Way has been one of Python’s beginners’ most known recommendations.

It takes about 8 weeks to read Learn Python the Hard way and understand Python basics. This will include syntax like if statements, variables, loops, functions and data types. However, how quickly you’ll learn Python from this book will depend on the programming basics you already know. And the amount of time you’ll devote to learning the language.

What Will You Learn?

Zed’s approach to the teaching process is rather not so common: throughout the book, the reader is expected to get most of the information independently. Zed directs you in the general direction (for instance, Read what setup.py has to offer), hoping that you will dig online and understand everything.

This provides a great introduction to the world of programming. Training you from an early stage that you have to dig for answers yourself. Since no single resource offers solutions to all your questions.

Insisting that programming isn’t all about writing code. The author includes an appendix chapter (Command Line Crash Course) that acts as an introduction to consoles and terminals.

Command Line knowledge is crucial for any Python developer. Managing virtual environments via pipenv, working with Git, using console utilities like iperf or htop to manage system performance and more! 

Although this isn’t a full-blown course, it’ll help you understand how CLIs work and what makes them different from GUIs.

These lessons include:

  • Navigating the file system (e.g., cd, pushd/popd)
  • Working with paths, directories and folders via mkdir
  • Working with files (e.g., cp, touch, mv)

Finally, the book provides some neat cheat sheets for PowerShell and Unix Bash.

What’s More? – Common Student Questions Sections

Learn Python The Hard Way (3rd edition)

Considering that readers can encounter mistypes, bugs and make other mistakes, there is a section with common student questions in each chapter. This guides you on how to solve frequent problems that Python learners might come across – essentially, this is Stack Overflow embedded directly into the book.

How Many Chapters Are in The Book?

With 52 compiled chapters, Learn Python the Hard Way kicks off with an elaborate Python set up guide (for both MacOS and Windows-based machines). Helping students install the needed tools and see to it that they’re working well.

Below is the book’s chapter breakdown: 

Chapter Areas Covered
1 to 14Printing, strings and variables
15, 16 and 17How to read, write and copy files
18 to 21Introduction to functions 
22You are required to go through the previous chapters and take two days to test your knowledge on previously used symbols (e.g. ‘, %, \, =)
23, 24 and 25A practice-heavy refresher of the chapters you’ve read before. 
26A test on your debugging skills based off a Python code with mistakes
27 to 31Introduction to Boolean logic and if-statements
32 to 36You’ll learn the different types of loops
37A little neat cheat sheet for Python data types, keywords, operators and string escape sequences
38 and 39Lists and dictionaries
40 to 49You’ll learn Object-Oriented Programming 
50 to 52Introduction to Website Development 

Learn Python The Hard Way (3rd Edition) Testimonials

Where Can I Get the Book?

You can buy a hard-copy version of Learn Python the Hard Way from Amazon or eBay, and the digital copy from Zed Shaw directly. You can also find a free ebook here.

The paperback version’s margins and layout are good enough. With the typewriter monospaced, bold, and a little larger than the bolded text surrounding it. 

The eBook appears to have a lesser compact layout than its counterpart. It’s also monospaced but not bold. Having a font size different from the surrounding text. This makes the typewriter text more visually apparent in the digital version.