If current trends continue—which they seem set to do—Python will soon be the world’s most popular programming language. Python can be used in fields as varied as data analytics, artificial intelligence, graphic design, and web development. It is also ubiquitous across big tech, with companies like Google, Facebook, Amazon, and Netflix all using it in their products. In short, Python has become a fundamental part of our digital ecosystem, which makes it a great skill for any aspiring techie to learn.
In this post, we’ll look at what you should do if you want to learn Python from scratch:
- Read up on Python
- Download the necessary tools
- Take a tutorial and play with some code
- Get online support
- Consider taking a structured course
- Attend a Python meetup
1. Read up on Python
It might sound obvious, but be sure to read up on Python’s basics. We’ve covered many of the language’s features and applications in previous blog posts. If you haven’t already, we suggest starting with our Python guide. Another key resource you’ll find useful is the Python Wiki (definitely one to bookmark!).
Read around the topic, too. Python has so many applications: understanding them before you start will really help focus your mind when you begin learning. If you’re completely new to programming, the Python Wiki also offers an excellent list of resources that presume no prior knowledge.
2. Download the necessary tools
Python is cross-platform (meaning you don’t need a specific operating system to use or execute it on) and there are versions available for all major operating systems. This includes Windows, macOS, and Linux. Jumping right in might seem scary, but it needn’t be. Like any language, the best way to learn Python is to play around with it. But first…
Select a code editor or integrated development environment
Before installing Python, you’ll want to choose a code editor. This is a simple tool that’s used to write and (as the name suggests) edit code. Code editors are lightweight programs that include useful features like syntax formatting and highlighting. At this stage, any basic editor should be sufficient for your needs. However, a popular one is Visual Studio Code. Used by novices and experts alike, VS Code is open-source and free to use. But don’t limit yourself—the Python Wiki has an exhaustive list of currently available code editors.
When your coding skills become more sophisticated, you’ll want to download an integrated development environment (IDE). Unlike a code editor, an IDE is designed for more complex programming. It comes with several additional features such as build, test, and debugging tools, which will significantly speed up your work. As a novice you won’t need an IDE right away, but keep it in mind. A popular open-source IDE is PyCharm. The Python Wiki also lists IDEs for different operating systems.
Download the latest version of Python
You’re now ready to get started… time to download Python! The Real Python website offers a foolproof guide for installing it. Some systems even have it pre-installed. Simply type ‘python’ into a command window and hit enter. This will tell you which version (if any) you have. At the time of writing, the latest release is Python 3.8, so be sure that you’re up to date. This is important, because some older versions aren’t forward compatible.
If you don’t want to download anything yet, that’s fine. An online code editor will give you access to the compiler and language all packaged in. If you prefer to learn on the go, you can even download packages for Android and Apple devices. These aren’t ideal for big projects, but they’re great for playing around.
3. Take a tutorial and play with some code
So, you’ve downloaded Python and you’re ready to go… finally, your chance to play with some code! Your first port of call should be the Python website, which offers tonnes of introductory documentation, including FAQs. If you already have a basic understanding of coding, we recommend starting with the Python beginner’s tutorial. This introduces the basic aspects of Python-specific programming, introducing the interpreter (which reads and executes your code), how to use Python as a calculator, and concepts such as strings, lists, and other basic functions.
Never coded before? Don’t panic! There are more accessible tutorials that walk you through the basics in plain English. For instance, this Python tutorial for aspiring web developers offers a great introduction to Python programming concepts in general. As does this e-book, Automate the Boring Stuff.
Push yourself with Python libraries
Once you’ve played with some code and are feeling confident, you might be ready to stretch yourself. If so, the Python standard library is a good place to start. It contains over 200 modules of pre-existing code. These allow you to automate many functions (e.g. returning Boolean values—‘true or false’). You can also download any number of third-party libraries from the Python Package Index (PyPI). These open-source repositories offer industry- and discipline-specific modules for everything from data analytics to web development. As a beginner, you might find these topics a bit challenging, which brings us to our next point…
4. Get online support
Even the best of us have questions from time to time. Luckily, one of Python’s key selling points is its user-driven community. With loads of active, online support forums, you’ll quickly find an answer, whatever your query. Here are some to try.
Probably the best-known coders’ forum, Stack Overflow is a Q&A site for professional and novice developers. It has a strong reputation for bringing tech enthusiasts together and includes support for all major programming languages. Search around before posting a query, as you’ll often find it’s already been answered.
The Python forum
Python’s own forum is less extensive than Stack Overflow but offers registration-free access to some of the most common Python queries. These cover general coding issues, as well as those relating to Python’s applications in different areas, e.g. data science, web scraping, game development, and more.
Python Internet Relay Chat
Want real-time support from other developers? Python Internet Relay Chat is for you. Visit webchat.freenode.net, register a nickname, and log in using the channel ‘#python’. There’s always someone on hand to help. There are also Python channels for non-English speakers: ‘#python.de’ for German, ‘#python.fr’ for French, and ‘#python.pt’ for Portuguese.
GitHub Community Forum
A well-known application development platform, GitHub allows developers to access free documentation and contribute to open-source projects. While it is a general development platform (i.e. not Python-specific) it has a community forum where you can search for (or post) any queries you have—Python-related or otherwise.
5. Consider taking a structured course
Once you’ve mastered Python’s basics, why not specialize your skills? A structured online course will teach you how to apply Python to specific disciplines. Data analytics, for instance, is one of Python’s fastest-growing areas and CareerFoundry has just launched a new Intro to Data Analytics course. There are tonnes of other options available; check out this round-up of the best data bootcamps for learning Python.
6. Attend a Python meetup
By this stage, you should have a good working knowledge of Python’s syntax, features, and applications. If you want to take things further there are many personal development options available. Online communities are great for ad hoc support, but a real-world community of like-minded individuals will help you take Python to the next level. Conferences and workshops are an excellent starting point. They spark passion, new ideas, and can help you figure out where you’d like to go next.
You’ll find a big list of events on the Python community forum. We’ve highlighted three popular options as a taster:
- PyCon: The original Python conference, PyCon was launched in the US in 2003. It attracts all experience levels from across the world and has since launched conferences in Africa, Asia, Australasia, South America, and Europe.
- EuroPython: Launched in 2001, EuroPython includes two days of conference and two days of development sprints. Entrance to the latter is free, and attendees can contribute to their favorite open-source projects—great for getting hands-on.
- Python meetups: meetup.com offers over 2,500 Python-related workshops, hackathons, and other events, in over 100 different countries. They’re usually free to attend, and you’ll almost certainly be able to find one close-by…dip a toe in!
As we’ve shown, learning Python needn’t be intimidating—the hardest part is deciding to go for it. After that, all you need is the right software, the right support, and the right mindset. Here’s what you can do to make the journey easier:
- Read up on the basics: Read about Python and make sure it’s the right programming language for you.
- Get the tools: Download the most up-to-date version of Python, and install a code editor.
- Dive in: Take an online tutorial and start playing with some sample code right away—getting your hands dirty is the best way to learn.
- Get online support: To answer your questions, find a forum, chat room, or other online community.
- Consider taking a structured course: Once you’ve progressed from beginner to novice, specialize your skills by investing in an online course.
- Attend events: When you’re ready, why not head to a conference or workshop in your local area? You’ll be surprised what you can discover!
There’s no time like the present. Get started with step one right away! And, if you need a little extra motivation, check out this Python developer salary guide, together with the following: