How to start learning python as a beginner?

Posted on Mar 3, 2023
beginner
python
guide
tutorial

Python is a powerful general programming language developed by Guido Van Rossum in 1991. It is very easy to understand which makes it one of the best languages to start learning. Python is also the programming language that I would recommend everyone to learn especially if you are an absolute beginner in the world of programming. As of now, python is the second most sought-after language in the world according to the TIOBE index. It is used in all sorts of areas like web development, artificial intelligence, data science etc. You can find many python programming tutorials online but this blog post compiles everything into one single guide. So if you are just starting as a beginner here is a step-by-step guide that will serve as a perfect entry point for you to grow your python programming skill. Let's get right into it!

What motivates you to learn python ?

When I first started to learn to code my primary reason for learning programming was to build games. It was the sole reason that kept me motivated enough to never stop learning. If you are starting to learn python without any type of real motivation it will become a boring process and chances are that you will drop midway. So it's very important to first decide what you want to do with it. This will make the learning process very much fun to follow and ultimately the journey itself will be more rewarding than the goal. Here are the general areas that you might be interested in -

  • Game Development
  • Web Development
  • Automation
  • Data Science
  • Machine Learning
  • IoT (Robotics, Hardware)

Learn Syntax and Basics using Tutorials online

This is the part where you start by actually learning the basic aspects of the python programming language. This includes basic concepts like variables, loops, flow control, lists etc. There are many python tutorials available online but here I will state the top 3 resources which I find best.

  • Python Tutorial by w3school - This is a good interactive python tutorial with all the basic concepts included. It can also serve as a good reference for any python syntax. The tutorial also has built-in web-based python IDE so you can type the code on the browser only.
  • Automate the boring stuff with python - When I started learning Python I learned various concepts from this free ebook. This is one of the best tutorials on python available online. It includes various projects on automation which you will really enjoy.
  • The Python Tutorial - The official site for python documentation also includes the python tutorial.
  • How to Get Started With Python? - This python tutorial by programiz.com includes all everything you need to master python syntax starting from python installation to advanced concepts like OOP.

If you learn more by watching rather than reading then I would highly recommend this free video tutorial by FreeCodeCamp on youtube. Regardless of which method you choose to learn python, you must get a grasp of all the main concepts of python.

Start writing small python scripts to do stuff

You have learned all the major concepts now it's time to put everything you have learned to the test. It will also be a very fun part as you will code various small scripts that will perform awesome kinds of stuff. For that, you will be using various python packages that will do a lot of the stuff for you. Here are some of the ideas that you can follow.

  • A web scraper for fetching useful info from a website.
  • A Youtube video downloader.
  • A Browser automation script.
  • A Script to automatically track amazon's price for a particular product.
  • A random password generator.
  • A simple script to send emails via a python script.

Here is a GitHub repository that contains a list of useful python scripts. You can tinker around with them or get some inspiration from them. Whenever you are copying any code from the internet I would always recommend you understand the underlying function of the code and how it works because that's the only way you are going to learn.

Start building python projects

Now comes the most fun part according to me, building real-world projects. It is ultimately the part where you are going to learn the most. Projects are a great way to learn the practical aspects of any programming language. They will help you push your capabilities to the maximum level as you are going to face many roadblocks. But overcoming those hardships is what's going to grow your skills to the utmost level.

In step 1 assuming you selected an area, you might wanna work on a project related to the area you selected. You could try to experiment in various other areas also until you find what you enjoy the most. Here are some generic project ideas that you can try on your own.

Web Development

  • A to-do list application with an authentication system.
  • Full-fledged management software for libraries, schools, hospitals, etc.
  • A website that consumes some API to fetch results.
  • A forum website where users can post and comment on threads.

Machine Learning

  • A customer service chatbot.
  • An algorithm to analyze the sentiment of the user.
  • A music genre classification algorithm.
  • An algorithm to summarise news articles.

Game Development

  • A 2D platformer game.
  • A Simple Angry birds clone.
  • A Text-Based adventure game.

Automation

  • A Tool to scrape data from a website.
  • An application in which you do tasks like "open chrome" using voice commands.
  • A desktop app that will remind you to do tasks at a certain time interval.

My advice would be, don't spend too much time selecting a project idea. Pick a project that you would like to do whether it's a clone of some other project or unique because it doesn't matter as long as you do the project. You will feel a great sense of accomplishment after you have done the project.

Learning python is not at all hard. Anyone with the right mindset can do it. If you work on things that interest you, you will never be bored with the process. In the end, python is really a fun and rewarding language to learn.

I hope you find this article useful and that you learnt something new from this article. Thanks for stopping by!