Learning Python in 7,832 easy steps…

By | June 15, 2024

In 2024, learning Python is a crucial skill, particularly for those working in DevOps. As the backbone of automation, infrastructure as code, and continuous integration/continuous deployment (CI/CD) pipelines, Python’s versatility and ease of use make it an indispensable tool for modern DevOps professionals. In this article, I’ll share the resources that have significantly contributed to my Python learning journey, covering both free and paid options. This list will include beginner and intermediate resources as well as podcasts and websites that I frequently use.

  1. There are 2 Udemy classes that I really love (note: add the courses to your wishlist & then wait for them to go on sale, you can get them for less than $20.00 that way):
    1. 100 Days of Code: The Complete Python Pro Bootcamp by Angela Yu. This is the course I am currently going through a second time! It’s been updated for 2024 and has really good end of day projects and end of section capstones to really help solidify what you’ve learned. 
    2. The Modern Python 3 Bootcamp by Colt Steele. The fantastic in-course examples make you implement the topics you just learned & the on-line help is excellent. I love Colt’s way of explaining things visually as well. 
  2. Beginner books:
    1. Python Crash Course by Eric Matthes – this is my favorite book for a number of reasons. It’s laid out in a very concise manner and you can quickly flip to a section where you need help. The projects at the end are engaging and interesting. The pdf quicksheet provided is a great reference. Eric Matthes is perhaps one of the best humans out there 🥰
    2. Automate the Boring Stuff by Al Sweigart – this book is perfect for us office dwellers who want to do exactly what the title says.
  3. Intermediate books
    1. The appropriately named Beyond the Basic Stuff with Python by Al Sweigart is a great next step. It’s a more advanced guide that covers best practices, debugging techniques, and code optimization, with a focus on writing clean, efficient, and maintainable code.
    2. Python for DevOps by Gift, Behrman, Deza & Gheorghiu. It’s a intermediate/advanced Python book that also gets into Linux, Containers, CI/CD, Kubernetes, Infrastructure as Code, Serverless, and automated testing. It’s NOT for beginners or those that just want to automate an excel spreadsheet 😂
    3. Serious Python by Julien Danjou. Extensive tutorials, best practices for versioning, style, testing, packaging, scaling, and all those other things you need to know that you didn’t think you’d need to know!
  4. Websites & Podcasts
    1. I listen to Mike Kennedy’s Talk Python To Me podcast regularly. When I first started I didn’t know what 1 in 5 words meant… but I got better just from listening and getting exposed to new topics.
    2. Eric Matthes has an excellent newsletter: Mostly Python
    3. Al Sweigart has published a lot of really good beginner material on his website Invent with Python.
    4. Bob and Julian over at Pybites have created something special. Not only do they have coding challenges for all levels, they’ve also created a growing and vibrant community at Pybites Circle
    5. Real Python – great tutorials and examples
    6. There is a LOT of good Python content in Dev.to & FreeCodeCamp.org

If you have any other “must have” recommendations for learning programming in general or Python in specific let me know in the comments 🙂