Cuddling up with Python
In my last post, I talked about getting started with programming and software development and I mentioned that a programming career means continually learning new languages and technologies. In that spirit, one of my goals for 2022 is to finally become proficient with the Python language which I’ve played around with before. I thought I would share some of the resources I’m using for that and, in this and future posts, the details on my own learning process.
Python is a high-level language, meaning that its syntax is close to regular English so it’s easier for programmers to read. It’s interpreted, rather than compiled, so you need to install the Python interpreter which translates and runs your code instead of compiling it into a machine-language executable as C# or other compiled languages would do. It’s also a general purpose language and can be used for anything from parsing text files and machine learning to website design. Python is a cross-platform language so it can be run on Windows, Linux and other operating systems.
Python is one of the few languages today that actually makes use of code indentation and whitespace as part of the syntax. You can see this in a prime number example. This example computes 78497 primes between 3 and 1,000,001 in under 5 seconds. The code is shorter and faster than I’ve been able to achieve with other languages.
I originally looked at Python as a possibility for a programming course that I was going to be teaching but, in November 2016, there simply wasn’t enough time for me to really master the language before jumping into creating the curriculum so I put it aside. A lot has happened between then and now and I’m finally trying again. Originally, I was using Jose Portilla’s Complete Python Bootcamp which I notice has been updated for 2022. This course includes lifetime access to 22 hours of video with articles and exercises and a completion certificate. I was pretty impressed with it and will be restarting it to see what’s new.
Before I remembered that course, I found another one by Mosh Hamedani, one of my favorite YouTube instructors. He’s actually provided a free 6-hour course on YouTube as a preview to his much longer Complete Python Mastery course on CodewithMosh.com. The YouTube course includes a link to a free Python cheatsheet PDF file that you can get by signing up for Mosh’s mailing list.
Even during the six-hour course, Hamedani recommends installing PyCharm as an IDE for Python and Anaconda for creating Python notebooks and running quick statements in the language without having to spin up a project. These are both minor installations of free software, though.
As you can tell, there are plenty of good resources out there for learning Python outside the classroom, especially if you’re willing to put in the time and practice. Hopefully, I’ll be able to stick with it this time and will have plenty more to share here on ComeauSoftware.com.