L is for learning - Python A to Z
Python A-Z is a blog series about Python. Each day, I share insights, ideas and examples for different parts of Python development that match with the letter of the day. Blaugust is an annual blogging festival in August where the goal is to write a blog post every day of the month.
A life of a software developer — no matter if you’re doing it professionally or as a hobby — is a life of continuous learning. The technologies evolve, problem solving skills are never complete and thanks to very generous sharing from the community, there’s always new things to learn.
For today’s entry to Python A-Z, I’ll share different resources that I’ve found good for learning more about Python.
Books
Luciano Ramalho’s Fluent Python is still my number one recommendation. I wrote a recommendation for it two years ago so I won’t repeat too much here. It’s a really good book for anyone who knows Python and wants to deepen their knowledge and get a better grasp of writing Python code that takes the best advantage of all of the language’s structures.
Automate the boring stuff with Python by Al Sweigart is a good primer for Python (and available as free online book). It has a very positive, supportive and encouraging tone which is really nice because especially in the beginning, learning programming can be quite a challenging — but rewarding — endeavour.
Python Workout by Reuven M. Lerner is a good option if you have some experience writing Python under your belt but you want more exercise. It has 50 exercises to practice the basic fundamentals of Python. Each exercise is explained and teaches you different concepts in Python.
David Kopec’s Classic Computer Science Problems in Python is aimed for intermediate or advanced level developers and rather than teaching the basics, it focuses on interesting classic computer science problems (as one might guess from the name…) and how to solve those with Python. Each chapter focuses on a sub category of problems and at the end of the chapter ties it all together with how these skills are useful in real-world applications.
Podcasts
There are many interesting Python podcasts and for this, I also refer to my previous post in our Python meetup’s blog: Start your year with a new podcast.
Whether you want to learn about the nitty gritty details of building Python itself or want to hear stories of the people in the Python community, there’s something in the Python podcast world for everyone.
Blogs (and other forms of web writing)
Here are some of the blogs and people who do Python stuff from my RSS reader. I initially started writing about everyone and their blog (because info dumps are not a great reader experience) but there are so many great people on this list that it got overwhelming.
Going through the list, I’m so happy that I’ve gotten to know many people on this list in-person as well and compiling the list brought back a lot of great memories.
- Adam Johnson
- Andrea Grandi
- Andrew Mshar
- Anže Pečar
- Carlton Gibson
- Cheuk Ting Ho
- Core Dispatch
- Daniel Roy Greenfeld
- Dawn Wages
- Denny Perez
- Georgi Ker
- Gonçalo Valério
- Hugo van Kemenade
- James Bennett
- Jeff Triplett
- Johnny Metz
- Luke Plant
- Mariatta
- Marijke Luttekes
- Mario Munoz
- Martin Heinz
- Matthias Kestenholz
- Maurits van Rees
- Mia Bajić
- Mostly Python
- Nicolas Kuttler
- Nik Kantar
- Pamela Fox
- Paolo Melchiorre
- Peter Bengtsson
- Savannah Ostrowski
- Seth Larson
- Sheena O'Connell
- Simon Willison
- Stefan Machura
- Thomas Loiret
- Tim Kamanin
- Timo Zimmermann
- Trey Hunner who also shares great daily tips in Mastodon
There’s also probably many that I have missed. My categorisation efforts in my RSS reader are not at the level I wish they were so there are probably many more that I read but couldn’t find or remember right now.
If something above resonated with you, let's start a discussion about it! Email me at juhis@hamatti.org and share your thoughts. This year, I want to have more deeper discussions with people from around the world and I'd love if you'd be part of that.