Discouraged While Learning Software Development?
So, are you someone who is trying to learn something new like software development, and feels discouraged?
Well, trust me, you are not alone.
I get these reactions from students saying that:
“I have been learning this skill for a month now, and it’s not registering”
“I have learned this but then I forget what I learned quickly”
“It’s not going to work for me. I am going to just give up. I’m quitting.”
So, sometimes people just end up quitting. Especially while learning software development.
The reality while learning software development
Let me shed some light on what you should expect from the process of learning software development. You see, any new skill that you are learning is not supposed to be easy. You will have to put in the hard work. There are no shortcuts.
No one was born a good software developer. Even, Bill gates was once a beginner. Any software developer in the world, any prodigy coder that you see out there has put in the work. It depends on how much passion you have for a given field. So, whether it’s me or you, we need to have a passion for software development.
It’s when you have a passion for this field, you will start to enjoy it. Now, when you start to enjoy it, you will be able to push through the process and master it. So, if you have a passion for software development and find yourself struggling with it, keep at it. Trust me it’s completely natural to struggle, you have nothing to worry about. Learning anything new takes time. So, don’t give up!
Best way to learn – Forget & Recall – Repeat
Now, let me share the best way to learn a new skill. When you are learning anything new, you need to forget it. It’s about the process of repetition. You learn something and then you forget it. Then you learn it again and forget again.
The more iterations of the Learn-Forget cycle you go through, the faster you will master concepts. And that’s how your brain works. Your brain rewires the neural pathways when you start to apply repetition.
This technique worked for me when I took acting classes. I understood that learning a script, takes a lot of work. But, it is very effective when you force yourself to memorize a script and forget it quickly. Memorize it and forget it quickly. Don’t try to keep memorizing and not allow yourself to forget.
Tips from acting classes
So, here’s what I did in my acting classes. When I get a script for each class, I would read through it, then I would put it away and start recalling. The faster I got into this forgetting mode and then did recall in my mind, the faster I was able to learn the scripts. Each time I was going through this process of remembering and forgetting, I would ask myself “What was the first line about?” and that’s how I learned faster.
So, that was a different example. But any new skill like singing, lifting weights, or anything else, requires you to forget. The same goes for the process of coding. If you can apply the Learn-Forget-Recall cycle, you can master the concepts faster.
Kid’s analogy on learning to write
There’s another example where you can see the same trend when we were kids while learning a new language for the first time. In pre-k and kindergarten, kids are first taught letters from the Alphabet, then learn about words, then slowly learn how to put the words together to form sentences. Then they get to a point to form paragraphs with these sentences, then learn how to read and write stories and books.
That’s the kind of learning curve required for a software developer. Any technical profession is also going to require a similar kind of effort. So, think about it. If it takes a kid about to learn a language for about three to four years, just imagine how much time will it take you to absorb the concepts and master software development.
From my experience as a software developer, it takes about four years to be fully confident for you. You will get to a point where you can just look at the code and say “Okay, let’s get started”. Most students take a lot of time to learn. So, it will take a lot of work for you to learn as well.
I remember when I was learning to code, I was weak in algorithms and Data structures knowledge. So, I picked a book on this topic and started learning the concepts. But the one data structure that was giving me the hardest time was red-black trees. And it is a complicated data structure that took me almost 3 months. I was bashing my head across the screen to get to a point where I could comfortably start coding read-black trees.
Back then, I already had a job, so I was putting in extra time each day for those 3 months to learn this stuff. Even when I was not a beginner in coding, it was a struggle. It takes time. So, you can’t give up! If you’re learning a new skill for 3 weeks or 6 weeks or 6 months, come on! It’s not time to give up yet.
YouTube Video
Resources
- Join Job Ready Programmer Courses and gain mastery in Data Analytics & Software Development.
- Access our free Programming Guide (PDF) to explore our comprehensive Job Ready Curriculum today!
This blog is dedicated to the Aging Software Developer out there. And this topic was inspired by an older gentleman who reached out to me through the mail. His concern was based on the restructuring that took place at his company where the executives were planning to replace their workforce. And this aging developer was […]
Learn the basics of Google’s new Gemini AI model in under 1 hour! Course Description Free Google Gemini AI Crash Course with Python Unlock the potential of Google’s Gemini AI model in just one hour with our comprehensive beginner-friendly course! Designed for enthusiasts at all levels, this course will guide you through the fascinating world […]
In this blog, I want to share with you the concept of the “Conscientious developer”. A conscientious developer is someone who can make certain decisions in life to succeed in their career and future. So, the qualities of a conscientious developer are: Number one, who is aware of themselves, their strengths and weaknesses, Number two, […]