How long does it take to learn Python or just to learn to code in general?
(the video above goes into useful detail on this topic)
There is no one size fits all answer to this question. People learn at different rates. So here is a pretty reasonable guideline in terms of hours of practice to reach different levels of competence with Python (or most other programming languages).
1 hour - Installing python and writing a basic “Hello World” program
10-20 hours - Starting to understand the basics of programming and what it’s about
200-500 hours - Learned to do enough things that you can probably get an entry level job somewhere.
2,000-4,000 hours - Reaching a level of competence and comfort that you can solve problems in a professional setting alongside your peers.
10,000+ hours - An established programmer who can take on difficult work, delivers reliably, and can take on more senior roles (depending on context).
The key thing is to put the effort in to practice your craft. It goes beyond just hours. It’s about curiosity and experimentation too. 10,000 hours of repetition won’t get you as far as 10,000 hours of experiments, side projects, bug fixes, and exploration will.
I’ve been programming now for over 25 years. I believe some people reading this newsletter have programmed for over 50 years. After all that time there is still much to learn. There is always something new.
I write this to all the beginners or people thinking of becoming a programmer…
Be kind to yourself as you learn. We all make mistakes. It takes more time than you expect or want, but that’s okay. Programming is fun. It’s something you can really enjoy if you take the pressure off yourself as you learn.
There is no way to shortcut the years of experience required to grow and learn, so enjoy learning as you go. Before you know it, you will be looking back fondly at your first few projects, silly mistakes, and small victories on your journey to becoming a programmer.
-Brian
I was reflecting on how much I studied/practiced programming before getting my first job and I estimate it was about 1000-1500 hours, this was in about 7 months and I felt pretty comfortable jumping in to solve problems at that level.
Thanks for this article. I have been self teaching web dev for 20 years. I always feel that “I don’t know anything”. So, in part fear breaking into a full time tech position. What hit me most with your article today is the next to the last paragraph opening, “Be Kind to yourself as you learn.” I have had days where I was just not getting it and would be angry with myself for not understanding the issue. Now that I see that even experienced programmers have tough days, I much feel better. Thanks Brian.