Helpful Tips For Learning To Code If You Are Neurodivergent

Helpful Tips For Learning To Code If You Are Neurodivergent

Learning to code is a very personal and individual process — there’s certainly no one-size-fits-all strategy, because we all have different thinking styles, abilities, and experiences. 

You may have heard the term “neurodiversity” used to acknowledge that people’s brains function in a range of different ways. Part of neurodiversity is recognizing that many people are “neurodivergent,” a nonmedical umbrella term that categorizes certain developmental or mental health conditions like ADHD, autism, dyslexia, and dyspraxia. 

Roughly 10-30% of the population have neurodivergent traits, and these differences can show up in the way people learn, work, and communicate. When it comes to learning to code as a person who is neurodivergent, for example, there are unique characteristics and challenges that can both help and hinder someone’s progress. 

“Being neurodivergent can mean lots of different things to different people — there’s a huge spectrum,” says Nathan Whitbread, Founder of The Neurodivergent Coach, an organization that helps individuals and companies create neuro-inclusive workplaces. “It really is all about the individual.” Understanding the learning methods that set you up for success is one way that you can embrace your neurodiversity and ease some of the pain points you might encounter in your coding journey.

For Mental Health Awareness Month, we’re sharing learning tips that are based on the experiences of people who are neurodivergent. This is by no means an exhaustive list, and what works for one person may not work for another. We hope some of these ideas can be a helpful starting point for folks who are struggling or wondering if coding is for them. 

Repurpose your go-to strategies

We’re constantly collecting strategies that help us out in our personal and professional lives. For instance, you probably have personal hacks you rely on to remember to feed your pet, make car payments, or arrive at work on-time.

The key is finding ways to transfer the tools we have to other situations, Nathan, who is neurodivergent, says. In this case, what habits or practices do you use in other areas of your life that could be applied to learning how to code? “Think about how we can take the gold we’ve already got and repurpose or redeploy it in other contexts,” he says. “It won’t be exactly the same, but we can use the lessons that we’ve learned before about what works for us.”

As an example, say you’re someone who always logs your exercise in an app or journal so you can remember what types of workouts you complete each day and plan your future workouts. See if taking notes about the coding skills you’re learning and practicing helps you capture important information and ideas. You can use your notes to reflect on what you’ve picked up, and to inform what you learn next — just like you do at the gym.  

Or, if you’re someone who lives by checklists, perhaps you could make a checklist of the coding concepts or lessons that you want to tackle in a study session and use it to hold you accountable. Curious what other folks do? Read this blog for time-management tips from other Codecademy learners. 

Don’t try to do this alone

Having a strong support system can be a guiding light in your coding journey. Seek out trusted mentors who uplift and inspire you, and can provide practical guidance along the way. There are lots of vibrant online communities where you can connect with other like-minded aspiring programmers, including spaces for the Codecademy community specifically. Join the discussions in our forums, attend a virtual event with other learners, or explore local Codecademy chapters in your area. 

Whether it’s your team leader at work or a fellow Codecademy learner you met on Discord, having someone who genuinely cares about your progress and holds you accountable can make a world of difference in your path to success. (Read this blog for some specific tips about how to find a tech mentor.)

Treat learning like a project

At its core, coding is a project that involves change, deployment, and testing. It can help to frame your learning journey as a project, too, Nathan says. Don’t be afraid to play around so you can figure out what’s most useful for you, and identify the habits that don’t serve you, he says. Maybe that means experimenting with your schedule or weekly learning target, trying out different forms of practicing, or shifting your workspace to see if it refreshes your perspective? Be flexible and maintain a growth mindset as you discover the approach that resonates with you. 

Pace yourself

A common challenge that some people who are neurodivergent encounter when they’re learning a new skill like coding is feeling inundated with information or like you’re learning too quickly. “Some neurodivergent individuals like to dive deep into a subject,” Nathan says. For example, you might be able to go into great detail about a specific area, but may not have a broad understanding of the subject as a whole. 

Attention to detail and concentration can be crucial when you’re learning a new skill, or it can make things overwhelming. If that sounds like you, try segmenting and breaking topics or courses down into bite-sized pieces, Nathan says. Focusing on a short-term goal (like finishing a lesson in a path, or submitting a pull request) will help you pace yourself. Also use other opportunities to practice your skills outside of courses, like working on a project or contributing to Docs

Embrace outsourcing

Some people who are neurodivergent may struggle with a process called executive functioning. “Executive function” is sort of like the project manager of your brain: It’s the set of skills that’s responsible for making sure that all the different parts of your brain work together so that you can get things done. Examples of executive functions can include things like prioritizing tasks, managing time, filtering out distractions, and controlling impulses. A person with poor executive functioning might have trouble starting and finishing projects, following multi-step directions, or switching between tasks. 

Using organizational apps and tools can be a game-changer, because they allow you to outsource or automate some of those more difficult executive tasks. For example, if you tend to lose track of time while you’re in a flow state coding, consider setting calendar reminders to take breaks, check in with your team, or respond to Slack messages. (On the flip side, some people might need to snooze notifications in order to focus — in which case, there are apps and features for that.) Be sure to check out this blog for more apps that can help you manage work-life boundaries. 

These are just a few suggestions that you may want to try weaving into your coding routine. But remember: “You’re the expert in your own stuff,” Nathan says. For more inspiration and motivation, read these real stories about how Codecademy learners launched new careers after learning to code.