Hello to my fellow ever-growing devs!
It’s that time of the year at my work where we’re asked to gather feedback from our fellow colleagues on how we work within our teams.
I love getting feedback as it gives me a chance to reflect on things I do well and the things I need to improve on.
It also made me think that I’d love to have some feedback from you my lovely readers!
If there’s anything you’d like to see more from me (or less) I wanna know 😁.
Or if you have any comments or questions at all, please feel free to leave a comment or alternatively you can reach out to me on 𝕏 @evergrowingdev.
I’ll look forward to it, and if I don’t hear from you, I’ll take the no news as good news 😅.
Anyways, let’s jump to it…
If there were two things that had me by the neck when I first started learning how to code, they were:
1) consistently feeling overwhelmed, and 2) being stuck in tutorial hell 🔥.
Both of these things drove me insane!
Not to mention put me in a massive amount of doubt about my ability to learn programming.
No matter how many tutorials I completed or projects I started, I just couldn't shake the nagging voice in my head saying:
"you're not learning fast enough.”
Perhaps you can relate?
If you’ve heard it too, let me tell you something - that voice is lying.
There is literally no universally agreed-upon pace for learning to code.
The perception of whether you are learning "too slowly" is entirely subjective.
What may feel painfully slow to you may be perfectly acceptable and even above average to others.
The speed at which you pick up new coding skills depends on so many individual factors - your background, past experiences, learning style, and more.
Everyone follows their own unique learning curve when absorbing the complex world of programming.
Comparing yourself to the progress of others is a recipe for self-sabotage.
Rather than obsessing over speed, it is far more valuable to focus on consistency.
Little by little, day by day, building up your knowledge and skills through steady practice and application.
With patience and perseverance, the pieces will come together in your brain on their own terms.
I know this is all easier said than done, so let’s dig a little deeper and explore practical solutions for persevering at your own pace.
Examining Your Learning Approach
Feeling like you're not progressing in coding as quickly as you should be can often come down to how you are approaching learning.
Here are two common factors that can make you feel like your coding journey pace is stalling, along with tips to help get your learning on track:
Build a Solid Foundation First 🧱
When eager to start building apps and languages, it's tempting to jump right into tutorials and projects.
However, taking the time to build foundational coding knowledge will pay dividends down the road.
Understanding core concepts like algorithms, data structures, and program design principles will provide the groundwork for learning any language or framework much faster.
It may feel tedious at first, but will accelerate your progress greatly in the long run.
Find Efficient Learning Resources 📚
Using ineffective learning resources can definitely make you feel like you're not learning at an optimal pace.
With so many courses, videos, blogs and coding websites out there, it can be challenging to identify the best ones for your experience level and learning needs.
Seek structured resources that methodically build up your skills, moving from beginner to intermediate and advanced.
Also, look for hands-on coding exercises with solutions to practice applying your new knowledge.
Don't be afraid to switch things up if your current resources aren't helping you progress.
By taking the time to solidify your foundation and find quality, efficient learning materials, you will be setting yourself up for coding success at a pace that matches your needs.
Implementing Effective Learning Strategies
Once you have a solid foundation and efficient learning materials, implementing active, hands-on strategies can help boost your coding progress.
You may want to try out the following techniques:
Active Learning 🕺
Active learning involves going beyond passive activities like reading and watching videos.
Instead, focus on techniques like writing code, participating in coding challenges, explaining concepts to others, and working on coding projects.
Active learning accelerates skill development through practice and application of knowledge.
Set aside dedicated time each day for these kinds of hands-on activities.
Feedback Loops 🔁
Receiving frequent code reviews and feedback works great for improvement.
Set up a routine for having peers, mentors, or instructors review your code and provide constructive comments.
Use their insights to continually refine your code and address any gaps in your skills.
Be open to critiques, as feedback is a valuable part of the learning process.
Peer Learning 👭
Connecting with a study group or partnering with a friend can add accountability and motivation.
You can brainstorm ideas together, work through problems, and teach each other concepts.
Online communities like Discord also provide opportunities to learn alongside peers.
Surrounding yourself with others learning coding will help you stay on track.
By supplementing your learning with active practice, feedback, and peer support, you will gain better coding understanding and confidence.
Assessing Your Progress Effectively
When you feel like you aren't learning fast enough, it's natural to compare yourself to others.
But in coding, the most valuable comparisons come from within.
Compare Yourself to Your Past Self 🪞
Comparing yourself to others will likely leave you discouraged, as everyone learns at a different pace.
Instead, focus on how far you've come compared to your past self.
Set small goals and track your progress.
Seeing your growth firsthand, like being able to implement features you couldn't before, is powerful.
Use self-comparison to stay motivated.
Establish Individual Milestones 🏅
To supplement self-comparison, set mini milestones tailored to your personal goals and experience level.
These could be completing a course, mastering a syntax, building an app feature, etc.
Space these out in a timeline to mark your advancement. Take time to celebrate each milestone, no matter how small.
They are tangible markers of your coding journey.
Stay focused on your own path when learning to code. Self-progress and personal milestones will assure you that while the pace may vary, the learning does not stop.
With consistency, your skills will steadily improve one step at a time.
Tracking and Measuring Your Coding Progress
When you feel like you are moving too slowly, having concrete ways to track and quantify your progress can provide reassurance.
You can keep track of your progress by doing the following:
Keep a Learning Log 📓
Actively logging your learning activities, challenges, and wins can make your progress more visible.
Use a notebook, spreadsheet, or online journal to record concepts learned, projects completed, books read, etc.
Periodically review your log to see how far you’ve come.
Set Measurable Goals 🎯
Set specific, measurable goals to work towards, like "Complete the Python syntax section on CodeAcademy" or "Build a weather app that makes API calls".
These tangible goals are key points to celebrate when achieved.
Make sure to set new goals as you meet existing ones.
Use Coding Checklists 📝
For larger learning goals, break them down into checklists of smaller milestones.
Checking off each one gives a sense of accomplishment and shows you moving closer to your end goal.
Apps like Notion, Trello, Asana or even basic Spreadsheets help organise checklists.
Quantifying achievements on your coding journey, no matter how small, provides motivation.
Don’t just think about how far you have to go, but also how far you've already come.
Conclusion
Learning to code takes time, and feeling like you are progressing too slowly is common.
But remember, there is no objectively "right" pace.
Each person follows their own coding journey.
If you feel stalled, first examine whether you have built a solid foundation and are utilising efficient learning resources.
Implement active learning strategies like writing code daily, seeking feedback, and joining peer groups to accelerate your skills.
Reframe comparisons to track self-progress rather than others. Set measurable milestones tailored to your goals. Quantify achievements in a learning log.
Learning to code requires patience and perseverance, but with the right mindset and techniques, your skills will continue developing, even if it feels slow.
Stay positive by focusing on how far you’ve come.
Draw motivation from small wins 🏆.
Keep practising regularly. Don't obsess over speed - instead, trust the process.
No matter where you are in your coding journey, you are making progress.
So don’t worry, you’re not learning too slowly 🙂.
From your fellow ever-growing dev,
Cherlock Code
Thinking of Building Something New? 💡
Check out Dev Pages - An Ultimate Hub with 100s of Developer Tools & Resources built by yours truly.
No more Googling: “what’s the best tool for X…?”
Easily find the right tools to build awesome things! 🚀
Cached by Cherlock ✨:
🛡 5 Best Free Angular Tutorials and Courses for Beginners
Programming & Productivity Picks of the Week 🚀:
🧠 Brain Bites
10 Github repositories to achieve Javascript mastery
🛠 Tools of the trade
Rellax JS - A Lightweight vanilla javascript parallax library
💡 How-To's and Woo-Hoo's
Build a Project Management Application in Django
Still here enjoying my content and want to show your support?
How about sponsoring my Green Tea addiction? 🫖 (It’s not as bad as it sounds I promise 😅)
Your support will help me massively in continuing to give you great quality content. Thank you!