The Ultimate Python Roadmap For Everyone

The Ultimate Python Roadmap For Everyone
Freepik

Do you want to become a Web-Developer, Machine Learning and Deep Learning Engineer, Data Scientist, DevOps Engineer, and more using Python? Then this is the only article you will ever need to start your learning journey.

Note: I have a GitHub repository with all the resources and links that I have mentioned in this article with additional resources as well, so make sure to check it out — save it, star it or fork it for your references.

narasimman-tech/The-Ultimate-2022-Python-Roadmap-For-Everyone at main · lakshminarasimmanv/narasimman-tech
Contribute to lakshminarasimmanv/narasimman-tech development by creating an account on GitHub.

My Learning Journey

I started learning Python 4 to 5 years ago. I was interested in Machine Learning, particularly Computer Vision and Natural Language Processing. I did a lot of research on how and from where to start. I don’t want others to go through the same, so wrote this article. Here’s how I self-taught Python in just a couple of months.

Follow these steps exactly, and I guarantee you that they will help you advance your coding journey.

  1. I signed up for a Python Course on Codecademy and spent 1 hour a day. Doing just the course won’t help you, so keep reading below and follow the other steps as well! After going through each Module in the course, I watched YouTube videos by CS Dojo and Corey Schafer, both of them have outstanding videos.
  2. I then read a book called, "Python Crash Course" on the topic I learned from the Course and Videos (30 mins). This book is wonderful, it has everything from complete basics of Python to topics like Data Visualisation, APIs, Web Development (Django), etc.,
    The book had 1-2 projects to practice. This book teaches you stuff that the course and videos don’t, so make sure to read everything. You will pace through the book easily because you already know a lot from the course and videos.
  1. I later solved challenges from Hackerrank for 10 minutes to make sure that I understood the concepts that I learned. I spent around 2 hours a day. Not only that, but I took notes for everything so that I can go through everything once in a while (which was very helpful later).

  2. After doing everything above, I started doing projects from the book Automating The Boring Stuff With Python (which is a fantastic book!).

  1. Later I started to learn Algorithms and Data Structures. I used the book called, Introduction to Algorithms. It’s a beginner’s friendly book but contains advanced stuff in later chapters. I spent around 1–2 hours a day and took a few months to complete. If you are into DevOps or SRE, you can skip this step. But it’s always good to know DSA. CS Dojo has a big playlist of videos on DSA. By the way, if you are interested in learning DSA, subscribe to my Newsletter on my Website – Narasimman Tech. I will be publishing many Data Structures and Algorithms articles with in-depth explanations.
  1. After learning Data Structures and Algorithms, I started my Machine Learning and Deep Learning journey, which is the reason I learned Python. Kaggle has free courses, like Python, Data Visualisation, ML, Neural Networks, and a lot. Check it out:
Learn Python, Data Viz, Pandas & More | Tutorials | Kaggle
Practical data skills you can apply immediately: that’s what you’ll learn in these no-cost courses. They’re the fastest (and most fun) way to become a data scientist or improve your current skills.

Follow me on Twitter. I write short threads on quick tips and tricks about Python.

Additional Tips:

The Official Documentation - The Python Official has everything to get started with Python. They have a beginner-friendly tutorial as well. https://docs.python.org/3/

Learn Git - Learning Git is useful for all software developers. I used a book called, Pro Git by Ben Straub and Scott Chacon. It is an easy book to learn Git and GitHub. To get started with Git easily, take a look at my other article,

12 Useful git commands for Beginners
Beginners Git is a powerful version control system used for tracking changes in a file or directory during any software development process. The following commands will help you to use git in your next software development project: 1. git init - to initialize a new git repository. 2. git add

Learn the standard library - Python has a lot of powerful inbuilt packages, and it's important to master them. But not all of them, but like - os, math, random, time, datetime, csv, etc.,https://docs.python.org/3/library/

Learn Linux - Linux is popular among developers because it allows you to work more effectively and quickly.

If you don’t know how to get started with Linux or you are a beginner Linux user. I’m writing a beginner-friendly book about how to get started using Linux for someone who has never used Linux or someone who is a beginner and wants to learn more. Subscribe to get notified when I publish the book and get 35% OFF, especially for you!

Important Python Libraries:

Knowing the following python libraries can be very useful for any Python-related Job.

Data Visualization:

  • Matplotlib
  • Seaborn

You can learn these libraries from Kaggle for free, or Codecademy has paid courses.

Friendly Reminder: Please Consider Following me if you like my article, 😊! Also, subscribe to my Weekly Newsletter on my website to get Premium articles straight to your Inbox!

Career Specific Paths and Resources

Python is a multipurpose language. You can use it to automate in DevOps, Develop Web Apps, create CLI Applications, build Machine Learning Models, use it for Data Analysis, and more.

DevOps and SRE:

Why Python for DevOps?

Python is a popular programming language because of its simple syntax, which makes it easy to learn. Python comes pre-installed in almost all Operating Systems, so it's easy to run Python programs. It also has a massive collection of powerful libraries and a large community.

Resource and Tips:

I’m a DevOps Engineer by profession currently. I use Python Scripts to automate countless tasks daily. You don’t have to learn everything about Python, learn the basics that I mentioned above and some libraries. I read a wonderful book called, Python for DevOps: Learn Ruthlessly Effective Automation. This book teaches everything that you need to learn about Python for DevOps. I highly recommend this book to anyone interested in DevOps.

If you want to learn about DevOps tools and Technologies, follow me and subscribe to my newsletter because I will be publishing many articles about DevOps in the upcoming months. Also, take a look at my other article,

Top 8 DevOps tools for a Beginner DevOps Engineer
Even though there are a lot of popular DevOps tools, here are a few to get started in the realm of DevOps: 1. Git - Git is a free and open-source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. To

Web-Development:

Python is very popular for web development. Companies like Google, Spotify, IBM, Instagram, and other big corporations use Python Frameworks to build their applications. Python offers many frameworks, among them there are two popular Python Frameworks - Flask and Django. Flask is a lightweight Framework whereas, Django is a full-stack Framework. I would suggest you learn Django first as it comes with numerous features and widely used than Flask.

Resources:

Django:

The Official Website: https://www.djangoproject.com/start/

Codecademy: https://www.codecademy.com/learn/paths/build-python-web-apps-with-django

Flask:

The Official Website: https://flask.palletsprojects.com/en/2.1.x/quickstart/

Codecademy: https://www.codecademy.com/learn/paths/build-python-web-apps-flask

Artificial Intelligence - Machine Learning, Deep Learning and Neural Networks

I started learning Python for Machine Learning and Deep Learning, and I spent a year building ML models. Python is the de-facto programming language for any AI technology. There are two popular Python Frameworks you might want to consider learning if you want to become an ML Engineer or Deep Learning Engineer:

  • TensorFlow

If you don’t know, TensorFlow was created by Google, and now it is open-sourced. The official TensorFlow website has a learning path that you can follow. I enrolled in a Course on Coursera called TensorFlow Developer Professional Certificate. Additionally, I read a book called Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow. This book is wonderful, you can easily understand concepts with basic python knowledge, and you have to know how to use NumPy, matplotlib, and pandas.

  • PyTorch

PyTorch was developed by Meta (formerly Facebook) and now it is open-sourced as well. One of the best resources is tutorials from the official website:

Welcome to PyTorch Tutorials — PyTorch Tutorials 1.11.0+cu102 documentation

I would recommend you to read the book, Deep Learning with PyTorch by Eli Stevens, Luca Antiga, and Thomas Viehmann. This book is fantastic for advanced learners, tho’.

Learn any one of the Framework first and try to master it, it may take a couple of months or years, and you may learn the other Framework. If you are getting started, I would suggest you learn TensorFlow first, because it has many beginner-friendly resources and is a little easy to get started. Additionally, you can get an official Google TensorFlow Developer Certificate to verify your skills. It costs $100 to register for the exam. I used the same TensorFlow course from Coursera that I mentioned above to prepare for the exam:

DeepLearning.AI TensorFlow Developer
Offered by DeepLearning.AI. Enroll for free.

Here’s a course if you are ready to learn advanced concepts in TensorFlow:

TensorFlow: Advanced Techniques
Offered by DeepLearning.AI. Expand your skill set and master TensorFlow. Customize your machine learning models through four hands-on courses! Enroll for free.

Additional Resources:

  • Read the book Deep Learning by Aaron Courville, Ian Goodfellow, and Yoshua Bengio. This book is one of my favorite and the first book when I was getting started with ML and Deep Learning. This book starts with basics and covers advanced topics and algorithms. These books have everything to get started with AI.
  • As I have mentioned above, Kaggle has many free courses to get started with Machine Learning and Deep Learning. https://www.kaggle.com/learn
  • Learn a Database, start with Postgresql or MySQL and then MongoDB or Apache Cassandra and Graph-based database like Neo4j.
  • Learn Data Visualization and Data Manipulation tools that I have mentioned above.

Data - Science, Analysis, and Engineering

Freepik

Python is also popular among Data Scientists, Data Analysts, Data Engineers, and other Data related roles. There are numerous libraries and tools available like pandas for data manipulation and analysis, matplotlib, and seaborn for data visualization. I did a Data Engineering Professional course on Coursera by IBM 6 months ago:

IBM Data Engineering
Offered by IBM. Launch your new career in Data Engineering. Master SQL, RDBMS, ETL, Data Warehousing, NoSQL, Big Data and Spark with ... Enroll for free.

It was nice and easy to get started. I sat for around 2 hours daily, and I completed the course in 3 months. This course is sufficient to get started, if you want to do a portfolio project, browse through this course:

Master a Skill - Data Scientist Interview Preparation | Codecademy
For experienced learners and entry-level professionals interested in entry-level data science roles. This skill path contains different components of a job interview, from how to navigate the job postings and curating quality documentation to the real-world interview questions, take-home challenges,…

I completed a Data Science course on Coursera 2 years back. This course is for someone who wanted to get started as a Data Scientist:

IBM Data Science
Offered by IBM. Kickstart your career in data science & ML. Build data science skills, learn Python & SQL, analyze & visualize data, build ... Enroll for free.

Data Analytics Course:

Google Data Analytics
Offered by Google. This is your path to a career in data analytics. In this program, you’ll learn in-demand skills that will have you ... Enroll for free.

Conclusion

Don’t worry about anything and start learning the one that you are passionate and excited about and the one that motivates you. Once you get started and keep going and pace through the curriculum, you’ll get an idea about what to do next. Keep learning and gain valuable knowledge. I wish you all the best with this new and exciting adventure!

Check out my GitHub Repo for all the links mentioned in this article, with additional resources as well:

narasimman-tech/The-Ultimate-2022-Python-Roadmap-For-Everyone at main · lakshminarasimmanv/narasimman-tech
Contribute to lakshminarasimmanv/narasimman-tech development by creating an account on GitHub.

Apart from Python, if you want to learn about Google’s Golang, follow me on Twitter and subscribe to my newsletter. I have planned to share countless articles on Golang.


Additional Resources:

If you wish to become a Next Gen Developer, have a look at this eBook!

The Prime Guide For Next Gen Developer
Black Friday Sale: $10 $20The book is everything you need in a typical career path of a software engineer or developer, from starting at a company as a fresher or new grad to a senior software engineer.It summarises what I learned while being a software developer and how I mentored software engineer…

Follow me on Medium and Subscribe to my Newsletter:

Get an email whenever Lakshmi Narasimman V publishes.

Follow me on Twitter for Python tips, tricks, and resources.