Gif by Author
Learning a new language can be confusing and challenging. You are bombarded with YouTube videos claiming to teach you Python in 10 minutes. In the end, you get more confused and give up.
"Don’t chase the hype. Find out ways that work for you."
Even if you understand the basics, you will get more confused in selecting and learning new tools. Furthermore, without structured learning, you will fail to pass any coding interview or test.
Just like any skill, you need persistence and practice. In this blog, I have converted my Python learning experience into 7 easy to follow tips.
Let's start the journey of becoming an expert Python programmer.
Learn Basics
Learning everything about Python is not necessary, but you need to build a base. For that, you need to understand the basics.
Learn:
- Data Types
- Math and augmented assignment operators
- Variables
- Comments
- Builtin functions
- Control flow
- Functions
- List, tuples, dictionaries, and sets
- Reading and writing files
There are plenty more things to learn, but for the starter stick to basics and practice.
Image by Author
It is ok to make mistakes, forget the syntax, and get stuck in simple things. It will come naturally. Do not force yourself to memorize. The most important thing is that you learn these things one at a time.
Don't assume that you know everything and start working on the project. Trust me, you will spend hours on Google in figuring out simple things.
Interactive Learning
I am a strong believer in learning through interactive exercises, quiz, assessment tests, and projects.
In an interactive learning environment, you will see a description section, code editor, ipython shell, and lessons. The only way you can move to the next task is when you have successfully typed the correct code and run it. In the description section, you will read the instructions and try to replicate them into Python code.
Image by Author from DataCamp’s Python course
I have used DataCamp and Codecademy to learn SQL, Python, R, and JavaScript. These platforms are gamified and addictive. Apart from gamification, it forces you to learn by doing, which is quite different from YouTube tutorials.
Following a video tutorial and replicating the results is the worst way of learning Python. You will eventually get frustrated. On other hand, the interactive learning platform provides you with hints, descriptions, a code editor, and lesson slides.
Setup IDE
Setting up your developing environment is crucial for success. You want the IDE (Integrated Development Environment) to work for you, not against you.
First, install and set up a code editor on your local machine. Then, add plugins to enhance the user experience and update the terminal.
Image by Author
First, I have installed Anaconda. It comes with all the required software and libraries.
Then, I installed VSCode as my primary workspace. It is fast, lightweight, intuitive, and comes with all kinds of extensions and plugins.
After that, I installed extensions to improve my Python development experiences, such as Pylance, GitHub Copilot, Gitlens, material icons, Python indent, and Jupyter.
Code Everyday
Code every day. You will learn something and forget it the next day. To reinforce your learning, you need to practice every day. You can try coding challenges, interactive exercises, review previous lessons and practice on your own.
Image from Author | Canva Pro
I have learned the most from practicing and debugging the code. I used to code for at least 1 hour every day. It has helped me a lot in achieving my goals and retaining previously learned concepts.
I will suggest you to code for an hour every day and split it into 30 minutes sessions. Try to modify the code, experiment with new things, learn new concepts, and work on your typing skills.
Work on a Project
After getting the necessary practice, dive into the project. Pick up any beginner project and try either to create it from scratch or replicate results using your knowledge.
You can also contribute to the open-source project or even volunteer to work on an NGO project.
By working on a project, you will learn the development life cycle, learn necessary professional skills, and the experience that you can add to your resume.
Image from Author | DAGsHub
After finishing the course, I worked on interactive projects. Most of them were guided. Then, I used to read a tutorial and try to replicate the results. Finally, I started participating in competitions to learn more about Python and various tools to improve data processing and analytics.
Share the Knowledge
After working on a project, share your experience and the lessons learned. You will learn more by writing blogs on a new topic than you will learn by taking a course. You can start by writing on Medium and with time, start writing for high-tier publications such as Better programming and KDnuggets.
Image by Author | KDnuggets
I have written blogs and coding tutorials on Python basics, multiprocessing, data science, machine learning, MLOps, and NLP. Majority of my success came from teaching complex tools and methodologies. In my blogs, I share my experience, technical concepts, code for interactive learning, and suggestions to improve my work.
"Put yourself out there and let the world teach you."
Keep Learning
To stay competitive, you need to keep learning. Even companies want their employees to learn new skills, tools, and concepts.
To stay competitive, you can learn from:
- Blogs and code-based tutorials
- Books
- Twitter, LinkedIn, and Facebook
- Read the documentation of the new tools
- Watch Youtube Video
- Take workshops and courses
- Participate in coding challenges
- Surround yourself with Python developers
Image from Python Cheatsheet
I am a lifelong learner. I usually feel excited about learning new tools or concepts. It challenges my brain, and I spend multiple hours just debugging and discovering the API.
"If you imagine a new tool as a toy, you will learn to enjoy the learning process. You will break and fix things."
Conclusion
Getting past the first few steps is hard as you are in a dilemma to put more time or quiet. Trust me, Python is the most popular language, and it is driving futuristic technologies such as robotics, artificial intelligence, data science, and fintech. It has a high demand in the tech industry, and if you are good enough to clear coding challenges, you are good enough to get hired.
Keep learning and improving. There are no shortcuts. Make mistakes and debug your program. Through hardship, you will become a shining star.
I hope you learn something from my blog, and in the future, if it helps, please use it to help others. Furthermore, if you have any questions, type it in the comment below.
Abid Ali Awan (@1abidaliawan) is a certified data scientist professional who loves building machine learning models. Currently, he is focusing on content creation and writing technical blogs on machine learning and data science technologies. Abid holds a Master's degree in Technology Management and a bachelor's degree in Telecommunication Engineering. His vision is to build an AI product using a graph neural network for students struggling with mental illness.