May, 27, 2021
Why 90% of the Python self-learners give up
4 stages and the obstacles in the learning journey
Learning programming is not easy, especially when you learn it alone. It’s not a matter of whether you are smart enough. The journey is full of hurdles, and most of them are difficult to overcome without guidance. I know it because I experienced it: I am a self-learner. I still remember the days and nights I spent in the Learning Common and how helpless I was. That’s why I am not surprised when I read a post mentioning only 4% of the students completed their courses on online learning platforms.
In later sessions, I will share with you my personal experience in learning Python. There are roughly 4 stages in the learning journey: Honeymoon, Learning Threshold, Twilight, Good View. At each stage, I will tell you the situation.
First Few Hours: Honeymoon
In the first few hours, you would learn the basic syntax of Python. Usually, the lecturers would tell you what Python can do: data science, trading, web/app development, etc. I was very excited when I learned how multi-purpose Python is. More importantly, as the basic syntax is quite easy to understand, I was soon imagining I would be a hacker who can easily build things like Blackmagic.
10 Hours to 30 Hours: Learning Threshold
The fantasy would stop when you receive the first assignment set. The feeling is like throw you to the pool before teaching you how to swim. The challenge is you don’t know how to ensemble the building blocks you learned in the lectures to create really useful stuff. Even worse, you would start facing bugs: a nightmare you can never get rid of in your programming life. Programming is a paranoid exercise that requires absolute precision. However, as a beginner, you have no clue how to fix the bugs.
I was so frustrated when I do my first assignment in Python, which is offered by MIT. I am so thankful that I attended this course as the lecturer is a big name in the field and his explanation is wonderful. However, I spent several days fixing a bug that is not observable if you’re not experienced enough: I mixed up space and tab, and you can only choose either one but not use them interchangeably in a single script.
I tried multiple ways to seek help. I asked questions in the forum, tried to find the TA, and so on. But you know, you always have more questions than what TA can handle, especially when you are not asking face-to-face.
30 Hours to 50 Hours: Twilight
After passing the Learning Threshold, you will see the Twilight. You now get a feeling of how different building blocks work together. You can make sense of the syntax you learned before, and why you have to learn it. What you lack is the experience to solve real-world problems by programming. Once you solve one or two successfully, you would build up the confidence and gain the resources to continue the journey on your own.
It sounds easy but is equally challenging as the Learning Threshold. The thing is you learn everything in a controlled environment, but the reality is full of uncertainties. You may find that the functions of Python don’t work as you expected because the inputs, in the real world, are not as clean as in assignments.
My first meaningful work is a program to automatically download files from a website. My program crashed after downloaded several thousand files. The logic works perfectly; otherwise, it would not run so many times. Finally, I figured out the reason is my IP is blocked because I access it too frequently. It’s weeks after the crash. I got this insight because I found that I cannot access my bank account if I log in too frequently.
50 Hours+: Good View
Finally, you will get to the Good View stage. You are resourceful enough to build things confidently. Of course, you still have to learn. The world of Python is so large that 99% of it is still unknown. However, you know how to seek help and overcome challenges by yourself: you know where to find relevant solutions, how to read the documentation, how to make use of tools, and how to read the error messages.
What should I do
I hope you are not discouraged now. I am here to write this post because all these obstacles can be overcome.
Form a study group: Find buddies who are willing to discuss with you
Find a mentor: Find someone who is more experienced than you, but not necessarily an expert
Set a goal: Find a field you are interested in, such as trading, and start learning Python based on this goal
Of course, you can also join the courses provided by MasterPython. The courses are designed to walk you through the Learning Threshold, and also give you hands-on experience to solve real-world problems by mini-projects. Our goal is that every graduate of our courses can see the good view.
Ranked as the most popular programming language in the world. It means it is most needed.
Python is designed for easy understanding and it reads like plain English.
Python is like the default language for AI & Analytics as most related tools are in Python.
Python is a general-purpose language, which means that it can be used to build about anything.
From the Developer Survey, Python was one of the most in-demand languages in recent years.
Our In-person courses are For all the beginners who want to get into tech world
“Why it doesn’t work?”, “It’s another Error Message and I don’t understand…” There are too many pitfalls at the start of learning a programming language. We know how difficult it is to learn Python without any help when you do it completely online, that’s why we tailor all of our course in in-person setting to help you pass through the hardest part in your learning journey – the Learning Threshold.
Walk you through the learning threshold
Everybody needs help at the beginning, especially for programming. Our in-person courses are deliberately designed to make your success easy by walking you through the learning threshold.
Learn, Checkpoint, Apply - We make it engaging
Effective learning is a systematic process. Learn – to absorb new knowledge. Checkpoint – to check if you fully get it. Apply – to ensure you can put it into practice. Engaging learning starts here.
Ask your Questions in class, get clear as you progress
It is not unusual to spend a couple of hours just on solving one little error in Python when you just start learning, and that’s really discouraging. That’s why we are here in class to answer your questions to make sure you progress.