Can I master Python in 9 months?
You won’t become a master but you can become a very good Python developer in 9 months.
Do these 9 things in 9 months.
- Python Basics: Get familiar with Python Basics like variables, conditionals, list, loop, function.
- Problem-solving Skills: Solve 100+ coding problems. Reverse string, check palindrome, GCD, merge sorted array, number guessing game, etc. Try to understand the solution. After solving each problem, search online for alternative solutions.
- Data Structures: You must practice data structures like stack, queue, dictionary, tuples, tree, linked list, etc. Know the relative pros and cons of each data structures.
- OOP: Understand the concept of class, object, inheritance, encapsulation, and polymorphism. Try to use OOP concepts like inheritance, objects, and classes in a practical situation like a parking garage, grocery store, banking system, etc.
- Three projects: It doesn’t matter how good you are with the concepts. If you can’t apply them in a practical situation, you won't become a good developer. So, build three different projects. Struggle to find out the solution. Get familiar with stackoverflow, github, etc. While developing these projects, learn shortcut keys of an IDE— VS Code, or Pycharm or Jupyter, etc. And checkout unit test, debug, log, etc.
- Algorithms: Practice basic search (binary search) and sorting algorithms(bubble, merge, insert, selection, quick). Also, learn the time complexity to measure the efficiency of each algorithm. If you have time check out dynamic programming and graphs.
- Full-stack: Get familiar with the database. Learn database concepts. You have to be familiar to know how servers work. How to open up an API, how to consume an API. How to set up a server? How to host/deploy a project. The full stack experience is very important.
- 4 frameworks: You must learn at least 3 popular frameworks. Read framework documentation, find video tutorials on youtube. Must start with Numpy, Django, pandas, and Scrapy. And you will find a few build-in libraries as well like random, datetime, re, etc. Exploring those.
- Online footprint: Most of the nerdy developers ignore this. But you must develop your portfolio website. A very good LinkedIn and GitHub profile. Network with recruiters and other developers. And don’t forget to take a shower every other day 😎
.
Be careful:
If you are not careful, you will procrastinate the first 3 months, will try multiple plans in next 3 months and blame yourself for not learning anything in the last 3 months. Don’t do that.
Instead, become serious now. Build a daily learning habit. Be strict to utilize your weekends. And ignore those distant cousin’s hot friend’s birthday. Trust me, birthday will come back next year as well 🤓
.
Detail Plan:
If you want a more detailed plan, check out this blog: Learn and Master Python Guideline
.
Where to learn:
There are so many different resources to learn Python. I personally recommend this android app named Programming Hero. You can start from the beginning and then explore intermediate and advanced contents. Also, you can run Python code right on your from. If you want more resources, check out this Data Camp Python Course. Alternatively, you can watch youtube videos as well.
Wrote a guide on overcoming Imposter Syndrome for software engineers. I feel it's pretty complete!
ReplyDelete