How long it takes to learn Python depends on a lot of factors.
In this post, I will attempt to give you a general estimate of how long it is going to take you if you are an absolute beginner until you get your first job.
Specifically, I want to answer these questions:
- Should you learn Python2 or Python3?
- When will you be able to get a job?
- How long does it take to learn Python?
- What can you do with Python?
Should you learn Python 2 or Python 3?
A few years ago, I would’ve said learn Python 3 and Python 2.
Or at least learn Python 3 but understand the differences between Python 3 and Python 2.
There are major differences between the two.
The reason for that is because Python 2 is very popular and there are a lot of applications out there that are already written in Python 2.
So, as a Python developer, you might need to read Python 2 code or even write Python 2 code yourself.
However, as of January 1st, 2020, Python 2 has reached what we call end-of-life maintenance.
What that means is: the maintainers of the Python programming language are telling you that they are no longer supporting Python 2.
There will be no more security fixes, no more bug reports, and no new releases.
So if you’re learning Python today, it’s settled. Learn Python 3. Don’t bother at all with Python 2 anymore.
How long does it take to get a job?
This is actually a hard question.
It’s not easy to answer a question like that because it depends on a lot of factors, but I’ll try to give it the best I can.
First of all, there is a misconception that I want to clarify upfront. When you’re learning Python, the objective here is not to be a Python programmer, the job that you’re getting at the end of the day is not going to be a Python programmer or a Python engineer.
You are a software engineer.
So when you’re learning Python, C++, or Java, the objective is to be a good programmer, a good software engineer, not just good in a particular programming language.
This mindset is very crucial, especially if you are starting out.
Here is the approach to follow, if you can, to get a job as quickly as possible.
After you finish level 0 and level 1 (I talk in this article about these levels), the best approach here is to try to get an internship or a job at a small-ish company.
This way, you can start getting practical hands-on experience that will help you grow as a programmer and will give you the confidence you need to bootstrap your career.
That said, it is going to be challenging at this stage to get a job at one of the big tech companies because you’re still not a solid, well-rounded, software engineer.
You only know how to code. To grow further, you really need to at least go up to level 4 to be able to target one of these bigger tech companies.
Being a well-rounded software engineer means you are definitely good at programming, but you also have fundamental concepts in networks, operating systems, data structures and algorithms, etc….
How long does it take to learn Python?
I’ll try to give you a general, non-scientific, estimate about how long I think it will take you to learn Python.
If we’re talking about level 0 and level 1, then assuming you are proficient in another programming language, I would give it two weeks to a month at max.
The reason is Python is much easier than other programming languages out there.
So if you’re already proficient in other programming languages, Python is going to be a piece of cake for you.
But if you’re an absolute beginner and Python is your first programming language ever, I would give it from three to six months.
For levels 2, 3, and 4, I would say give yourself somewhere from six months to a year.
And of course, the time depends on how much time you have in a day to dedicate to learning Python, and also how fast you learn.
What can you do with Python?
Python is a generic programming language.
You can do pretty much anything with it.
But of course Python excels at specific applications, I wrote about these applications in this post.
Check out the Courses section!
- The Python Learning Path (From Beginner to Mastery)
- Learn Computer Science (From Zero to Hero)
- Coding Interview Preparation Guide
- The Programmer’s Guide to Stock Market Investing
- How to Start Your Programming Blog?
Are you Beginning your Programming Career?
I provide my best content for beginners in the newsletter.
- Python tips for beginners, intermediate, and advanced levels.
- CS Career tips and advice.
- Special discounts on my premium courses when they launch.
And so much more…