Python is one of the most sought-after programming languages to learn in 2020. It is widely used in Data Science, Machine/Deep Learning, Web Development, and more.
I am sure many people who want to start a career in tech wonder how to start learning Python in 2020. Moreover, people who are already working in tech want to learn Python in order to move to a different role or just become more employable.
You may belong to one of the above categories or you may have just heard about Python or programming and want to simply start learning and see where it can lead you.
Whatever the case, with this blog post I would like to point you in the right direction in your beginner learning efforts with Python.
Why Listen to me?
To start off, I am sure you may be wondering why you should be listening to me on this matter. There are many guides online and people to follow, so why trust this one?
Firstly, I have been working as a professional Data Scientist for the past two years and the main programming language that I am using for my work is Python. I also used Python for my master’s thesis when I was finishing my Master’s degree in Electrical and Computer Engineering. You can read more about my story here.
I am not saying this to brag or even to pretend I am any Python guru. I am also learning new things every day. However, I have for sure paid my dues in the Python trenches, so I am speaking from experience.
I initially was a Python failure
Apart from my working experience with Python, the distinctive quality I bring to the table is that I have reached rock-bottom in my programming career.
What I mean is that even though I was in a very competitive engineering school, I had actually managed to pretty much neglect my programming skills, to the point that they were almost non-existent. From there, I decided to turn this around and chose to work with Python for my master thesis. Initially, my skills sucked, and the work I did wasn’t even that complex, even if it seemed super complex at that moment.
Moving on, I was able to get selected into a very competitive Data Science doctorate program where I have been working every day professionally with Python. During this period, and up until now, I continued learning on my own and now I have reached a pretty good level in the language.
With this experience, I believe I can share a unique perspective, different from the one that people who have always been experts at something can. Neglecting something and picking it up in an unconventional way brings a unique perspective on learning that people who have always been masters haven’t experienced. That I believe is valuable for most people reading this blog post.
Why Learn Python?
For the people who are still skeptical about their choice, let me share some reasons that will make you a Python convert in no time.
- Python is super easy to start with and very readable. It’s a perfect language for beginners, without losing the potential of doing very complex and professional work with it. Additionally, one of the core aspects of the language is the fact that it is focused on readability, close to what is true for human languages, which is something I personally love. No more weird question marks and having to define the type of your variables. Python is here for the rescue.
- The Python ecosystem and community are among the richest online. The Python ecosystem is full of people working on new libraries and packages for applications ranging from scientific computing to web development. Moreover, you will find numerous examples and projects open-sourced, along with a multitude of questions answered on websites like Stack Overflow and the like. Whatever you need help with, probably someone has already done it with Python.
- It’s one of the most sought-after skills in the job market. There are numerous job positions for Python and the need for talent is obvious. With Python in your toolbelt, you will be doing yourself a favor in terms of employability. No more applying for jobs with your boring resume. Get ready for companies to hunt you down instead.
I could go on and on about why Python is an awesome programming language to learn, but those were three main reasons that resonate with me the most.
Learn Python for free
There are certainly ways for someone to learn Python for free. The documentation of the language is free and anyone can start reading it to learn everything they can imagine. There are also awesome websites online publishing tutorials on Python that can be extremely useful. For example, I especially like the guides from the folks over at RealPython.
The problem with this approach is that you basically don’t know exactly what to learn at what point. You will start learning random things and end up overwhelming yourself, probably failing altogether while cursing programming for being so damn difficult. Well, guess what. It’s not programming that is difficult, but rather the way you approached it that doomed you to fail from the start.
A Better Approach
I personally love taking online courses. I actually attribute much of my professional success in things I learned while taking online courses.
Online courses were the method I used to teach myself programming and Python. I still try to do online courses as much as I can. After all, a developer should never stop learning.
In addition, an online course can provide you with a proven roadmap to follow along with assistance so that you can fast forward your learning and finally have a plan.
At this point, you may ask which course I suggest. I have personally seen and done many courses on Python, and there are indeed many that are super nice. However, I do have one that I believe stands at the highest standard compared to most I have encountered. This is the Complete Python Developer in 2020: Zero to Mastery by Andrei Negaoie over at Zero to Mastery Academy.
You can even purchase the monthly subscription to start with and knock yourself out by finishing one or two courses in the course of the month, given you have time to dedicate of course.
You can check the courses they offer in the link below. By purchasing through my link you will be getting a 10% discount and I will be getting a small commission to keep this website running. Be sure to use the coupon code FRIENDS10 in order to get your discount on the checkout page. However, don’t feel obliged to buy from my link at all :). Moving on to the course itself.
Complete Python Developer in 2020: Zero to Mastery
I personally love Andrei and his teaching style. He is very fun, makes the concepts super interesting and top of that is very thorough in what he teaches. I have taken several of his courses from the Zero to Mastery Academy and I believe he always over-delivers.
In this course, he takes the student from the very beginnings of coding with Python, teaching concepts step by step with increasing difficulty. By the end, you will have a thorough understanding of the basics plus fundamental advanced concepts of the language. Moreover, Andrei focuses a lot on universal fundamental principles a developer should adhere to, which is something that will benefit you regardless of the journey you take in programming after Python.
He shares a lot of helpful resources, explains concepts simply and fast, codes along the videos in real-time doing super interesting projects, and gives you fun programming assignments to do in order to practice. He also takes you through an overview of the different roads you can take as a Python developer, such as Machine Learning and Web Development, so you can decide on your next steps in your programming journey.
Apart from the course, there is an awesome community on Discord that helps a lot in the learning journey, with students and teaching assistants literally from all over the world. They do programming challenges, answer questions and in general help a lot whoever needs community help. Be sure to get a taste of the awesome community here. The people inside are all in the same shoes, struggling sometimes with accountability and imposter syndrome on the road to becoming world-class developers. The support and community spirit in that regard alone are priceless and will help you reach your goals that much faster. For example, you can check out this AMA (Ask Me Anything) that one of the Academy instructors, Yihua, did on YouTube about how to get hired and succeed in tech, to get an idea about the kind of support you can expect from the Zero to Mastery community.
Be sure to use the coupon code FRIENDS10 at the checkout page to get your 10% discount.
After the course
After finishing the course, your work is of course not done. You should not feel like you became an expert by completing an online course. Far from it. Your journey only starts there.
You should start building a nice professional profile, network relentlessly, and apply to jobs. Once you get yourself a professional position as a developer, that is where you can skyrocket your learning while earning a salary at the same time. Pretty sweet deal. I also suggest that you watch this nice video from Andrei on YouTube (completely for free), where he discusses very nicely the professional roadmap of a Python developer. You can check it out below.
What if I am lacking experience?
In that case, I suggest two things. First, create a nice portfolio of projects that you have done (through online courses, University, or whatever) and share them with potential employers. That alone can turn the probabilities in your favor.
If that is not enough, the only way is to keep learning. Do more courses, start working on your personal projects, become involved with open-source and Github. Whatever the case, never stop improving and working on projects and you will reach your goal sooner than you think. Add new projects and skills to your portfolio, update your resume and LinkedIn, and keep applying to jobs until you find your tech dream job ;).
This blog post is already growing a lot longer than I planned it :P. I hope you found some helpful tips on how to start learning Python in 2020. I truly believe that having a proven roadmap to follow will immensely help you in your Python learning journey.
Be sure to use the coupon code FRIENDS10 at the checkout page to get your 10% discount.
Whichever road you choose, be sure to focus on developing a passion for what you do and not doing it simply for the money and a good career.
Programming can open many professional roads for you as it has opened for me, but the best reward is to be able to fall in love with programming and what you are working on.
If you have any questions or remarks I would love to read them in the comment section below. Be sure to contact me directly here, connect with me on social media on the sidebar, and read my Data Science/Programming story here.
Cheers to your next dream job in tech, Antonios