If you have never coded before in any language and have no idea about where do you even begin, then python is the best language, to begin with. It is very simple compared to other languages. The creators of python have made it such that it is as close to speaking in the English language. Python is also open-sourced language, which means that it is free to download and use. It also implies that there is a huge community of coders who are constantly improving the language by adding more and more features to it. The large community will also provide you with the kind of support you need during your formative training years as a developer by helping you solve your queries.

In this age of information that we’re living in, there are plenty of resources available to learn python. One could go to Youtube and find hundreds of videos on any given topic. One could also visit a website like Coursera and do a course for free or pay for it if you want a certificate.

You could also join a class which teaches you python but during the pandemic that is highly unadvisable. Experienced developers have also written plenty of books which can help learn python. The pros of using a book over online videos are that books have so much more information in them as compared to a 5 min youtube video. In this article, we’re going to be looking at the book ‘Learn Python The Hard Way’ which was written by Zed Shaw, who is a well-known developer and author. You can purchase the book if you want a hard copy to keep with you, however, a ‘Learn Python The Hard Way’ free version is also available on the internet with a quick google search.

Before we can get into the book, let us learn a little more about the author.

So, Who is Zed Shaw?

Zed Shaw is a really big name in the community of developers. He has been writing code and developing software for years now, which are still in use today. He also used to run a blog where he would write articles based on programming and help others learn how to code. Zed Shaw is a prolific writer when it comes to articulating himself, whether that may be in a book or a blog. He also has written software that way ahead of its time. He wrote Mongrel which is a web server app which can be used to run Ruby On Rails. Ruby on Rails is a Web Framework that can be used to create web-application that is connected to the databases and was released in 2004. Approximately 5% – 10%  of all websites on the internet use this framework to create web applications, which makes it very popular. Twitter used Mongrel as its very first server and according to Ryan Dahl, Node.Js was greatly inspired by Mongrel 

The Tools that he created during the early 2000s are still in use to this very day and have inspired a countless number of tools since then. In that sense, he is the godfather of web development in modern times.  Besides this, he has also written many books that have helped students and beginners all over the world in getting started with programming. We have been talking about his book ’Learn Python The Hard Way’ but he has also written books on other programming languages. ‘Learn C The Hard Way’ and ‘Learn Ruby The Hard Way’ are two other books written by him that teach the respective language.

But what does he mean when he tells us to learn python the hard way? Why would anyone want to learn python the hard way?

So, What is learning python the ‘Hard Way’?

Learning python for a beginner can be very overwhelming at first. It is easy to feel lost and like you don’t know what you’re doing. Many online resources, as well as many teachers, recommended you to copy-paste the code from one place to another, even if you don’t exactly understand the code. Shaw argues that this is a very negative practice thought it may seem easier. When he tells us to ‘Learn Python The Hard Way’ he means that we should type in the code ourselves instead of copy-pasting it. 

According to him, just copying and pasting code from one place to another is of no use to you while you’re just starting. It’s as good as not doing it. He argues that when one types in the code himself, the information gain that takes place will be higher. He may not understand what he is doing at first, but one day it will all come together, which is why he insists on typing out the code. He strongly believes that this is the best way to learn how to code in his expert opinion.

Let us take a look at some reviews of the book

This is strictly a book for beginners, which has been mentioned several times in the introduction. If you have experience in coding then this book is not meant for you and it would be better if you picked up a more advanced book. The reviews we’re going to be seeing are picked up from Good Reads and were left by authentic readers of the book. Reading these should help you in making up your mind as to, whether you should buy the book. It has an average rating of 3.87 which has been calculated using 1192 ratings.

”I wasn’t disappointed, this book is an excellent introduction to programming, the methodology is refreshingly different from all the dreadful “Learn X in 21 days” books in that it stresses how tedious and annoying writing code can be and if you are a new software developer and use it like it’s intended, you’ll definitely learn a lot. I for one will recommend this in the future! ”          


“It’s a decent book to learn Python, but it’s really lacking. It starts off strong learning the simple concepts, but when he gets to classes, everything falls apart and he really slacks off in explaining certain details. Plus he throws you off the deep end before giving any actual exercise using tuples, saying here’s the test code go write the program that works with it. I would make sense if he actually had explained things and given examples.”      


All in all, it’s a great book, which is written by an expert in the field and is highly recommend for anyone who is beginning to learn python.