Matching your learning style to your programming journey
Remember the days back in school when the teacher would explain something and then ask questions?
And there would always be that one kid in the class that just got it.
It’s almost as though they had a photographic memory 📸.
They only had to see someone once, and it would click!
Maybe you were lucky enough to be that kid. If so then you may not necessarily need this article (but it’s still worth reading, I promise).
If you weren’t that kid, then like me, you may have struggled to find ways of learning things that would make the info stick.
Because there’s one thing for sure when it comes to education: not everybody learns the same.
That’s when the importance of personal learning styles comes into play.
What are Personal Learning Styles?
Personal learning styles are essentially preferences for how we absorb, process, and retain information.
If we can recognise and understand these different styles of learning for ourselves, we can significantly enhance how effectively we learn and apply new knowledge, especially in a field as diverse and wide as programming.
There are 4 main styles of learning, can you spot which one might suit you best?
Visual Learning Style 👀
If you’re a visual learner, you absorb information best when you can see or visualise it.
You prefer graphics, diagrams, flow charts, and other visual aids that help you picture concepts in your mind.
When learning to code, visual learners might find flowcharts or diagrams illustrating program logic or data flow particularly useful.
You also tend to benefit from integrated development environments (IDEs) that provide visual feedback, highlighting syntax errors and offering visual debugging tools.
Auditory Learning Style👂
If you’re an auditory learner, you thrive when you hear information.
You benefit from discussions, spoken lectures, and audio recordings.
In the context of programming, auditory learners might prefer video tutorials where an instructor explains the concept verbally or podcasts that go into coding concepts and practices.
Such auditory-focused resources can make complex programming concepts more digestible for you as you often have a knack for understanding and remembering spoken information.
Reading/Writing Learning Style ✍️
If you have a reading/writing learning preference, you gravitate towards textual information.
You absorb and retain knowledge best through reading and taking detailed notes.
Programming books, online articles, API documentation, and written tutorials can be goldmines for you.
When learning to code, you might find it beneficial to write out pseudocode or document your code meticulously, assisting your understanding and recall of programming concepts.
Kinesthetic Learning Style 🧑💻
If you’re a kinesthetic learner, you learn best through physical experience and hands-on activities.
You excel when you can manipulate, build, touch, or move during the learning process.
For learning programming, this could mean diving into coding exercises, building projects, or using interactive learning platforms.
You might find that your understanding deepens when you can 'play' with the code, experimenting and learning from your mistakes in real time.
Recognising your learning style is the first step towards understanding which one suits you best.
However, these styles are not mutually exclusive.
Many of us are hybrid learners, meaning that we can take aspects from multiple styles into our unique learning approach.
And that’s totally fine too!
Before we go any further into creating your unique learning approach, let’s look at how to choose the right learning resources.
How to Choose the Right Learning Resources
Learning resources are just as varied as learning styles.
Knowing which tools complement your learning style can make your journey in learning programming smoother and more enjoyable.
Here are some tips for the types of resources you can use based on your learning style:
Resources for Visual Learners 📼
Visual learners often thrive with resources that transform textual code into interactive, engaging visuals.
Online video tutorials, such as those found on YouTube or platforms like Coursera and Udemy, are a great resource for this.
These platforms have instructors that often explain concepts while writing code, allowing learners to follow along visually.
Websites that offer coding challenges often have visual representations to help you understand problems better.
And diagramming tools can be used to create flowcharts or system designs that can further enhance understanding.
Resources for Auditory Learners 🎧
For auditory learners, resources that leverage sound can help with understanding programming concepts more deeply.
Podcasts such as CodeNewbie, Programming Throwdown, or Syntax provide verbal insights into the programming world, and platforms like Audible have audiobooks on coding concepts.
Just like with visual learners, video lectures or webinars can offer auditory learners the benefit of hearing experts explain programming principles verbally.
Resources for Reading/Writing Learners 📚
Reading/Writing learners can find a wide range of information in text-based resources.
Programming books are a great resource to get in-depth knowledge. Whereas websites like Dev.to, Hashnode, or Stack Overflow provide a variety of articles and answers to coding problems.
Reading through official documentation, writing notes, or maintaining a coding journal can also enhance understanding and retention of information.
Resources for Kinesthetic Learners 💻
Kinesthetic learners flourish when they get their hands dirty with code.
Interactive websites like Codecademy or freeCodeCamp offer hands-on coding exercises that provide immediate feedback.
Project-based learning, such as building a personal website or contributing to open-source projects, allows learners to apply concepts in real-world scenarios.
Using tools like Replit or Glitch, where you can write, share, and collaborate on coding projects, can further support learning through doing.
Matching your learning style to the right resources will transform your learning journey, and help you avoid things like tutorial hell.
As mentioned before it’s perfectly okay if you prefer a mixture of these styles, so let’s take a look at how blending them together could look like:
Blending Learning Styles
Most people don't strictly follow any single style.
Instead, we often use a blend of styles, adjusting our approach based on the subject matter, context, or personal preference at that moment in time.
For example, while you might enjoy reading a programming book (Reading/Writing style), you could also find value in watching a tutorial to see the code in action (Visual style) or listening to a podcast on the same topic during your commute (Auditory style).
Integrating different learning methods and blending resources can help build a strong and all-round understanding of programming.
Reading about a concept provides theoretical knowledge (Reading/Writing) while seeing it in action deepens understanding (Visual).
Discussing it with peers (Auditory) or applying it in a project (Kinesthetic) solidifies that knowledge, transforming it into a practical skill.
Example of blending learning styles
Let’s say you want to learn about web development.
You start by reading a book or online articles about HTML, CSS, and JavaScript (Reading/Writing). You then watch YouTube tutorials or online courses that visually demonstrate how these languages work together to build a website (Visual).
Finally, you put your knowledge to the test by creating your own website (Kinesthetic).
The combination of these resources leads to a more wholesome learning experience, allowing you to understand web development from different angles.
It also shows that while identifying your dominant learning style is beneficial, it is flexibility and the ability to adapt to different learning methods that are equally important on your path to mastering programming.
Personally, I like to blend reading with kinesthetic.
I always seek documentation first and prefer written step-by-step guides to watching videos.
I find videos slow me down and I just want to get to the building part!
Therefore, if I can read through a tutorial, I can go straight to the bits I find most useful, and even highlight and save them for later.
When I do watch videos, I prefer documentary or lecture styles for learning rather than ‘code-alongs’ - but hey ho that’s just me!
The best thing is that there are so many resources available, when you find what style you like, there will always likely be a resource to match it.
Conclusion
Each individual's path in programming is just as unique as the person.
Personalising your learning journey isn't just about choosing a programming language or deciding which project to build next.
It includes understanding how you learn most effectively and selecting resources that align with that style.
Understanding your learning style can drastically boost the efficiency of your learning process.
Rather than struggling through resources that don't align with your style, you can select materials that complement the way you naturally learn.
By doing so, you're setting yourself up for success, ensuring that you not only learn but genuinely understand and enjoy the process of learning how to code.
As you continue your journey in programming, try to explore different resources, try out various learning strategies, and discover what works best for you.
Don't be afraid to step out of your comfort zone - it's often where the most significant growth happens.
Take time to reflect on your learning experiences, adjusting your strategies as you learn more about yourself and the awesome land of programming.
Find your unique style!
From your fellow ever-growing dev,
Cherlock Code
💙 If you liked this article...
I publish a weekly newsletter to a community of ever-growing developers, seeking to improve programming skills and stay on a journey of continuous self-improvement. Focusing on tips for powering up your programming productivity 🚀.
Get more articles like this straight to your inbox.
And stay in touch on 🐦 @evergrowingdev
Top comments (2)
Completely agree that awareness of your preferred learning style can boost your productivity! If you had to design onboarding material (and had very limited time), how would you prioritize the type of material? (ex: docs first, then videos, then workshops, etc.)
Hi Freddy, I think I would most likely start with written material, so yes documentation, as this would probably be the quickest to put together and most easy-access for everyone. As even if you went for videos or workshops first, you would still need to do some level of documenting, for scripts, notes etc. Written docs can allow you to have the information you need to expand and create other materials later :)