Programming language Python is undeniably a hot language to learn in 2022. It's one of the top three languages in developer analyst RedMonk's rankings, the Tiobe index, and the IEEE Spectrum ranking for electrical engineers. And that means it's in high demand by employers in tech, finance, government, healthcare, science and other sectors.
Python was hatched by Dutch computer scientist Guido van Rossum back in 1991, and in the last few years, thanks to machine learning it shot to the top of the charts among programmers.and
Google’s Python crash course and IT automation
Go with Google for your Python education
Aspiring Python developers can't go past Google's Python courses, hosted online learning platform, Coursera.
Google curated a "crash course" for Python beginners, a second course on using Python for manipulating files and processes on an operating system, and a third one that speaks to one of Python's core strengths: automating IT tasks by whipping up Python scripts.
Google's Crash Course in Python is available for free as part of a 7-day trial, after which it costs $39 a month to continue. It's actually part of the heftier Google IT Automation with Python course launched in January 2020. The beginner course requires no previous experience in programming.
It takes about 32 hours to complete over four weeks and covers syntax, automation with scripting, data types in Python, how to use variables, and programming loops to execute Python code infinitely.
Think of it as an on-ramp to Google's IT automation with Python course.
The more serious Google IT Automation with Python Professional Certificate has overwhelmingly positive reviews with a user score of 4.8 out of 5 on Coursera.
This course really aims to get students familiar with core IT tools like the Git versioning system, the GitHub code-sharing site, and using Python to solve real business challenges, such as repetitive system administration tasks. It's also a path to becoming skilled in cloud technologies.
This certificate takes 6 months to complete, and students can expect to be prepared for roles like advanced IT support specialist or a junior sys admin role.
It costs $39 per month to continue learning after the 7-day free trial ends, so customers are looking at a total bill of $234.
- Google curates the course.
- It's a certificate that large corporations recognize.
- Highly rated by past students.
- The courses are aimed at beginners and new job entrants in the IT sector.
- No focus on data science or machine learning.
- Google wants you to use Google Cloud Platform.
Microsoft's free Python course
Microsoft offers dozens of free Python courses in a video
Microsoft in 2019 released a set of 44 free online video tutorials that help people with some experience in programming to get the most out of Python.
The Python for Beginners series is presented by Christopher Harrison, a senior program manager at Microsoft, and Susan Ibach, a business development manager from Microsoft's AI Gaming unit.
The video tutorials are published on Microsoft's Channel 9 developer video service and YouTube.
Microsoft is serious about Python development because of the artificial intelligence services it can offer customers through Azure. It even managed to convince Python creator Guido van Rossum to come out of retirement in late 2020 to work as a technical fellow for its developer division.
- It's free, and the videos are explained clearly by Microsoft professional developers.
- The videos are easy to follow and offer loads of handy tips on how to use Python features such as lambdas.
- Each video tutorial is only a few minutes long.
- The tutorials aren't too heavy-handed on selling Azure cloud AI services.
- There is no certification to show potential employers.
- No online assistance.
- It is an on-ramp for using Python for ML and AI in the Azure cloud.
Go deep learning with Python on Coursera
Deep learning specialization.
ZDNet wanted to ensure that this set of recommendations didn't just cater to beginners. We wanted some experts to tell us the best Python courses to take, even for those who are proficient in coding and familiar with the industry.
Anaconda makes a hugely popular distribution of Python combined with the statistical language R that's focussed purely on the data science and machine learning crowd. There's also integration between Microsoft's VS Code and the Anaconda distribution of Python.
A number of popular deep learning courses teach Python coding skills, including Deep Learning Specialization, IBM's Apple Data Science, and Stanford's Machine Learning.
Sophia Yang, a senior data scientist at Anaconda, reckons Coursera's deep learning courses with a focus on Python are the way to go.
"I enjoyed taking the deep learning courses on Coursera," Yang told ZDNet. "The specializations are an excellent start for deep learning with Python. The lectures are clear, interesting, and engaging. They balance theory and practice well and provide enough intuition and knowledge for students to learn more independently. I also recommend checking out the official Python documents."
- Recommended by a data scientist from the maker of one of the top data science Python distributions.
- Coursera is widely recognized as a leader in mass online learning.
- Students gain a shareable certificate.
- The courses are relatively inexpensive. Stanford's costs $79.
- No obvious cons; however, these are multi-week courses that demand effort and energy.
MIT OpenCourseWare: An introduction to programming in Python
The future of learning
Massachusetts Institute of Technology (MIT) is home to the MIT Computer Science & Artificial Intelligence Laboratory (CSAIL). It's a premier US university, and CSAIL backs several groundbreaking AI research fields such as computer vision.
MIT offers its Python learning videos for free under MIT OpenCourseware, which include lectures, interactive assessments, assignments, and transcripts. It's not a bad alternative for a university that can cost north of $40,000 a year to attend and lead to significant student debt.
"6.0001 Introduction to Computer Science and Programming in Python is intended for students with little or no programming experience," says MIT OpenCourseware.
"It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language."
MIT OpenCourseWare is open for business and has proved to be popular. It has over 200,000 followers on Twitter, and the MIT 6.00 Introduction to Computer Science and Programming of Fall 2008 has received more than 4.9 million views, according to its 2020 annual report.
- It's a free course from one of the top US universities.
- Lectures and material are fresh, from 2016, and taught in Python 3.5.
- There's a wealth of transcripts and video lectures.
- The content can be a bit dry to listen to.
- It's not going to be the same as actually attending lectures at MIT.
- There is no certification at the end of the course.
Something different: David Beazley's Python courses for computer science
So, you might not be a beginner. You might even be working for the US Department of Energy and need to produce codes in Python.
David Beazley, a veteran Python coder, offers both paid-for courses and a slightly lighter version for free, aimed squarely at people involved in or keen on computer science.
Beazley's courses are not for beginners or the faint-hearted. He describes his free course as "a no-nonsense treatment of Python that has been actively taught to more than 400 in-person groups since 2007."
"Traders, systems admins, astronomers, tinkerers, and even a few hundred rocket scientists who used Python to help land a rover on Mars–they've all taken this course."
The point is that his Python courses really treat computer science as the starting point rather than Python. He's posted some details about his courses on GitHub.
Due to the pandemic, all of his courses are online-only, and they're not cheap. If you want to learn how to write a compiler in Python, it'll set you back $1,250 for a one-week online crash course.
"From 2007-2018, I was heavily involved with corporate training of Python and taught upwards of 400 courses on the topic -- typically to scientists and software professionals," Beazley told ZDNet.
"The "Practical Python" course is a lightly edited version of the training materials that I developed and taught in these courses."
He decided to release the course materials under the Creative Commons (CC) license in 2019 because he saw a lot of Python training material was either behind paywalls or on sites littered with advertisements and SEO.
"Not only that, I felt that a lot of it was presenting Python in an overly complicated, often muddled manner. Honestly, I was kind of annoyed, so I thought it might be useful to provide a battle-tested course in a spam-free format that anyone could access. Also, I figured that the CC license would encourage more creative use of the material. For example, foreign translations, or use by teachers in developing their own courses."
He doesn't want his courses at https://www.dabeaz.com/courses.html to be described as Python courses because they're really about computer science.
"Although they often use Python, they are focused on core topics in computer science as one might encounter in the first year of a CS Masters or PhD program. Typical attendees are working professionals who would like to tackle advanced material without the hassle of enrolling in a graduate program," he told ZDNet.
"These courses are quite challenging. For example, I offer a course titled "Advanced Programming with Python." The ordering of the words in that title is important because the emphasis is on "Advanced Programming." That's something that's quite different and substantially more challenging than simply learning a few "advanced" Python tricks."
- The Creative Commons licensed content is free.
- Industry leaders in data science have used Beazley's content.
- Beazley wants his content to be freely used and translated into other languages.
- It's not for beginners.
- It really aims for people who have or aspire for a computer science degree.
- The courses are not cheap.
Wildcard entry: Learn Python for free from the National Security Agency's training materials
Do Python like the NSA does
You're 100% on your own if you pick the US National Security Agency's training manuals, but it is another way into Python programming. And it's just cool that this Python training manual came from the NSA.
Chris Swenson, a software engineer, filed a Freedom of Information Act (FOIA) request with the NSA for access to its Python training materials and received a lightly redacted 400-page printout of the agency's COMP 3321 Python training course.
Now it's available online for free as a PDF for anyone to take a look at, thanks to Swenson. It's also available on the Internet Archive.
The documents are meant for course sessions that would take between 45 and 90 minutes to complete in a class setting.
The COMP 3321 course can be completed over a "full-time, two-week block" with 10 modules covered per week.
- The course material is free from the NSA and made for quick learning.
- The courses are designed to be taken at a leisurely pace, for people already working.
- It offers a succinct history of Python and why it's become popular in data science.
- There is no help from the NSA to solve problems.
- No certification.
- In-person classes should accompany the documents.
Why learn the Python programming language?
Python is relatively easy to learn. It's versatile. It has a large ecosystem of data science and machine learning libraries that make it the lingua franca of programming in those fields.
That ecosystem includes important Python packages or libraries like NumPy and SciPy at the Python Software Foundation's PyPI (Python Package Index) site and specialized data science distributions of Python, such as Anaconda. Important machine learning Python libraries include the Google-backed TensorFlow and Facebook's PyTorch and key software development kits (SDKs) from Microsoft Azure and Amazon Web Services (AWS).
What is Juypter Notebooks?
Another tendril of the Python beast is Jupyter Notebooks -- a virtual notebook that brings Python to the browser -- that is supported in important developer tools like Microsoft's Visual Studio Code (VS Code) code editor and integrated development environments (IDEs) like JetBrains' PyCharm. Beyond that, there are efforts from major Python users such as Bloomberg to improve the security of third-party open-source Python libraries.
What is Python good for?
If you're looking at courses, you also need to understand what Python is good for. Python might not be the right language to learn if you're keen on web application development or building mobile apps. But if you're into computer science, big data, data science and machine learning, or automating big backend IT systems, it could be the perfect language.
Python doesn't work so well with the browser or mobile apps and isn't known for efficient code. Hence it's bent towards data science, where work is offloaded to high-power GPUs. But van Rossum announced this week that there is a plan to double the speed of Python performance in version 3.11.
How did we choose these online Python courses?
We wanted to make this list of Python courses appealing to a broad cross-section of Python developers. Python is one of the most popular languages but it has strengths and weaknesses. As Google's Coursera-hosted courses highlight, the strengths are in machine learning and IT automation.
Microsoft's courses show there is a path to careers in artificial intelligence and the cloud. Beazley's courses demonstrate that Python can be used to solve challenges in finance, space exploration, and more.
Which is the right online Python course for you?
Choosing the right online course is a big decision to make. Every course is an investment in time and possibly money. The right choice depends very much on your professional trajectory. It could be in the cloud with Microsoft Azure, Google Cloud Platform or Amazon Web Services. It could be in financial services, retail or government.
The best approach is to weigh up where you are in your career, where you want to be in one year, and then pick the course that has the highest chance of achieving that goal.