"Python Crash Course" by Eric Matthes - A Review

I am a cloud student, engineer, husband, father. Just documenting my journey as I learn cloud technologies. Want to connect or potentially hire?! connect with me on Linkedin
Howdy y’all this is IT with ANC and welcome to my Cloud Blog. Let’s get into it.
It’s been quite a while since my last entry where I talked about Terraform. That entry was an intro into using Terraform to automate the provisioning of cloud resources, with hopes of diving deeper into it. This is still the plan, however things change, and currently I’ve been working a lot more with Python than IaC. So today I thought I’d share with y’all my experience learning the syntax of Python over the past month.
So my main resource for learning the syntax has been, you guessed it, “Python Crash Course“ by Eric Matthes from Starch Press. If you don’t know already Starch Press comes out with exceptional resources for a plethora of IT topics. PCC takes you from noob to apprentice in chapters 1 - 12 where you will read some theory and explanations, and do code challenges at the end of each chapter. Followed by projects in the remaining chapters(this is where I am).
What, Why, How
Let’s talk day 0, the book starts off real nice. With the author stating how he has been coding since he was 5 and if you didn’t start then you’re doomed to never getting past “Hello World“…haha nah I’m just kidding.
Matthes starts by saying that his dad was a major reason he started coding. His father worked for a pioneer company in the computing realm, Digital Equipment. Matthes started coding as a child because of this. He then goes on to state who the book is for, why learn Python, what to expect in the book, and some resources. In short this book is for those looking to start building as fast as possible, it’s a book for all levels of expertise, but particularly its good for noobs(like me).
Part I
The book is split into 2 parts. Part 1 is the “basics” starting with creating a programming environment tailored to python whether you’re on a mac, windows, or Linux machine. The book then takes the reader from variables, conditionals, loops, functions, etc, to data-structures, OOP, tests, and best practices. My impression of this part of the book was that it was perfect for someone like me to get started with python. Because I like most, am a hands-on learner, I can’t just read it I have to do it. Matthes has the reader covered by making us do challenge labs at the end of each chapter. no hand holding, only the text and minimal simple examples, the challenges are actually challenging which is something I really appreciated.
Here is an example of one of the challenges where I needed to create a program that checks for stored data(username) and retrieves the data or prompts the user for data if none is stored, and then store that data in a json file:
from pathlib import Path
import json
def get_stored_username(path):
"""get stored username if available"""
if path.exists():
contents = path.read_text()
username = json.loads(contents)
return username
else:
return None
def get_new_username(path):
"""prompt for a new username"""
username = input("What is your name? ")
contents = json.dumps(username)
path.write_text(contents)
return username
def greet_user():
"""greets user"""
path = Path('FilesAndExceptions/StoringData/username.json')
username = get_stored_username(path)
if username:
print(f'Welcome back, {username}')
else:
username = get_new_username(path)
print(f'We"ll remember you when you come back, {username}')
greet_user()
Part II
Part 2 is where the fun/building really begins. It consists of 3 different projects each with a specific topic/focus in mind. You get to choose between building a game, a data visualization tool(s), or a Web App all with pure python. This is currently where I am at, and I must say I am proud of how far I’ve come. Now by no means does this book make you a professional, not in the slightest. What it does is give you a strong foundation so that you can get good with the fundamentals and if you choose to and put in the work, become an expert.
If you enjoyed this read or you’re inspired to go give this book a try because of my review, I appreciate that and I’m glad I was able to offer some value from this. Check out my GitHub where I am building my first game in python inspired by the book. I also have some other cool stuff.
See y’all next time✌️



