EFFECTIVE STRATEGY TO LEARN TO CODE AND AVOID TUTORIAL PURGATORY – WORKING ON A PROJECT
Dear programmer OR soon-to-be-programmer,
Have you ever had this dread and questions in your career life –
“I am not moving on… I keep circling back between tutorial after tutorial.“
“I keep purchasing courses.”
“I attended this great coding Bootcamp or seminar, and my life as a developer seems to be the same”
That, my friend, is called Tutorial purgatory!
A tutorial purgatory is a phase in your programming career when you keep watching tutorials and reading many books without making progress.
You consume a great resource this week, you get burnout within the middle of the week, and the following Monday, you read the same concepts, and you know nothing.
No progress that you can evaluate or show to other people that you have been doing something.
Well, I have been there. I have lived that life. And it sucks!
It’s like I was reading great concepts and content but then…
“Telling it to the birds!”
Hmmm, hold on, Steve, are you saying that you have mastered the art of chirping and birds understand you.
Well, don’t take it seriously, Delilah!
Take it this way.
If you are reading a book after a book without taking action — it seems as if you’re reading a poem to the birds, ideally.
To make matters worse, you are that person that feels motivated to read through the night – a lullaby for the birds.
You are learning something at this moment, but then the next moment, all the content has disappeared into thin air.
To the birds!
Next time you read the same concept, it seems like you’re doing something new.
What you need is action.
Action is King!
It is better to read half a chapter a day or a topic, spend a couple of days practicing it, and understand the concept really well.
Don’t go back to that tutorial!
So, how do you do it?
Figure out why you’re becoming a programmer.
What is it that you want to do when you become good at programming with Python?
Mostly, you will realize that it all comes down to problem-solving.
You’re learning how to code so that you can provide solutions to people.
Solutions to the problems facing the world or the people living around you.
Maybe, people are getting frustrated with how they have to find information to learn new things.
Well, you can provide a software solution that enables such a demographic to access new information without overinvesting in finding the information.
That is a project you can start working on – create an app or website that will help people easily access curated information. Let’s name the project infoFind.
Or whatever problem that you identify, ask yourself if you can provide a better solution to the problem.
Here’s how you start learning how to code.
Maybe you have heard about modularity or not. But, modularity or modular design in programming means dividing a huge project into smaller sub-projects. These sub-projects operate independently toward fulfilling the objectives of the larger project.
Now, you will have to divide the whole project of creating an infoFind website into various sub-sections that contribute to the entire project.
For example, individual features could be:
- A place to save the data. The data would be a person’s profile or a resource containing how-to guides.
- A feature to search for information
- A feature to filter information that the user wants to find
Now that you know what will be included in your whole project, you can start learning how to code.
For example, let’s say you are taking a Python course as a beginner and coming across a topic about data structures.
You will be thinking about your project while learning how to store data and how data is stored.
You will actively learn how data is formatted before it is stored.
You will find it interesting to learn that data can be stored in the form of strings or numbers, or lists.
Another thing you will realize is that data is stored permanently in a database. Go ahead and learn about databases and implement the simple concepts about databases in your project.
Now that you have the concepts in mind, you APPLY THE CONCEPTS TO YOUR PROJECT.
To save data of a person’s profile, you will need their names, and you learned that alphabet letters are stored in the form of string data types.
Go ahead and apply that!
Within no time, you will go through each programming concept and apply these concepts to your project until you realize that you have solved almost all the basic subprojects.
After you have solved how to save data and search for information, you realize you need a way to present the data to the users.
So, you search for a resource on the internet and find out that you can use HTML and CSS to display information on a web browser.
Learn how to use HTML and CSS to present and format data.
After learning all that, you realize you need to retrieve the information stored in your database.
You search all over the internet and find a tutorial showing you how to use Django to store and retrieve data in and out of the database.
You learn the basic Django concepts and implement them in your project.
Within a period of time, for example, six months, you will have learned the basics of HTML, CSS, Python, and Django.
You will have a project that you have completed building without copying code from tutors.
You get the concept.
Learning how to program is not a matter of going tutorial after tutorial and copying everything the tutor writes.
It’s about applying the concepts and taking action, even if it is small.
After completing a project, you will feel content and fulfilled.
That sense of achievement drives you to learn more.
To learn more advanced concepts about the programming, scripting, and markup languages that you used to build a basic project.
That, my friend, is how you become a beginner to an intermediate programmer.
If you have the drive and motivation to push through even when your project doesn’t work, you are destined to be a great programmer.
Programming is all about learning new things: new technologies and programming languages.
That is what makes you a good programmer and a better problem solver.