I‘m learning to code at 56. Here‘s an epic beat-down of my critical inner self.
I‘ve always considered myself a lifelong learner, but even I didn‘t imagine I‘d be diving into computer programming at 56 years old. You‘re never too old to learn new tricks, as the saying goes, but try telling that to my critical inner self, who seems to think I‘m crazy for attempting this.
I‘ve affectionately named my inner critic CIS (Critical Inner Self). CIS is that little voice that questions every decision and plants seeds of doubt. He means well, trying to protect me from failure and embarrassment, but he can also hold me back from chasing my dreams and keeping me stuck in my comfort zone.
When it comes to my choice to learn coding at this stage of my life, CIS has been particularly vocal. He loves to whisper questions in my ear like:
"Why bother learning this stuff now? You‘re too old!"
"Who‘s going to hire a rookie programmer your age?"
"Coding is a young person‘s game. You‘ll never fit in!"
These are the kinds of discouraging thoughts that could easily persuade me to quit before I even get started. But I‘ve decided not to let CIS win. I‘m determined to become a proficient programmer, and I won‘t let a few (or even a symphony of) critical thoughts stop me.
So allow me to address CIS‘s concerns one by one and lay out my case for why learning to code in my 50s is not only completely reasonable, but one of the best decisions I‘ve ever made.
The science of lifelong learning
One of the most pernicious myths about aging is that you can‘t teach an old dog new tricks. We‘ve long assumed that our brains become less malleable as we age, making it harder to learn complex new skills past a certain point. But an explosion of research in neuroscience over the past few decades has shattered this misconception.
We now know that the adult brain is far more plastic than previously believed. Through a process called neurogenesis, we continue to grow new neurons and build new neural connections throughout our lives in response to novel experiences and learning. A 2013 study published in Cell Stem Cell found that healthy older adults in their 60s and 70s showed similar rates of neurogenesis as younger adults in their 20s.
What does this mean? Put simply, you‘re never too old to rewire your brain. With focused attention, dedication and a growth mindset, we maintain the ability to learn even the most complex skills well into old age. And arguably there is no skill more empowering to learn in today‘s world than computer programming.
As digital technology continues to eat the world, coding has become the closest thing we have to a superpower. The ability to bend machines to your will, to bring ideas to life in code, to automate solutions to problems – these are the kinds of skills that will be increasingly valuable and in-demand for decades to come as software continues to transform every industry.
Learning to code is hard, no doubt. It‘s a completely new way of thinking for most people, myself included. But the science is clear: my aging brain is more than up for the challenge. It just requires a commitment to pushing past those initial frustrations, sticking with it day after day, and trusting the process.
There are many paths to a tech career
Whenever I mention my newfound coding obsession to people, they often jump to the conclusion that I must be angling for a job at a FAANG company or a trendy Silicon Valley startup. When I tell them that‘s not the case, they look at me quizzically, as if to say, "Then what‘s the point?"
What many people fail to realize – my inner critic included – is that software developer jobs come in all shapes and sizes. Yes, FAANG companies are the most visible and get most of the media attention. But they represent a tiny slice of the overall job market for programmers.
The reality is the overwhelming majority of developer jobs are at "normal" companies outside the tech industry. These are the unsexy businesses that form the backbone of our economy – banks, hospitals, government agencies, big box retailers, manufacturing firms, etc. All of these organizations have significant and growing needs for software, yet many struggle to attract and retain programming talent.
According to the Bureau of Labor Statistics, the number of software developer jobs is projected to grow 22% from 2020 to 2030, much faster than the average for all occupations. That translates to an estimated 1.2 million new positions over that timespan. Yet the supply of new CS grads and bootcamp alumni is simply not keeping pace with demand.
This growing developer shortage presents a massive opportunity for non-traditional candidates like myself to break into the field, even at later stages of life. More and more companies are dropping degree requirements and embracing alternative credentialing and skills-based hiring. Many are also investing in apprenticeships, on-the-job training and returnships to fill roles.
So while yes, ageism is still a problem in the industry, it‘s far from an insurmountable barrier – especially for programmers willing to look beyond the usual suspects. With a solid portfolio and a willingness to start at the bottom and work my way up, I‘m confident I can chart my own path into a fulfilling tech career, linear and traditional or otherwise.
Coding skills are a means to an end
At this point, CIS usually chimes in with something like: "I admire your optimism, but let‘s be real. The odds of you landing a high-paying FAANG job and working your way up to the senior ranks are slim to none at your age. You missed your window. You‘re setting yourself up for disappointment."
Here‘s the thing though. My end goal is not some specific job at a specific company. It‘s not a certain salary figure or job title. Tying my self-worth and life satisfaction to those things is a recipe for perpetual dissatisfaction in my experience.
No, my real goal is to master a set of skills that will allow me to do three core things:
- Solve interesting problems
- Work with passionate, growth-oriented people
- Have autonomy over my time and lifestyle
Notice none of those things require a FAANG job or a traditional career path. The beauty of coding is that it‘s a skill set that can be applied in infinite ways to create value and open new doors, many of which look nothing like a standard tech job.
For example, I have a friend who taught himself web development while working as a park ranger in his 40s. He had no intention of ever getting a full-time developer job. Instead, he used his newfound skills to build a web app that helps people find and book campsites at national parks. He now runs this business from his laptop while traveling the country in an RV, earning a solid income from a combination of affiliate commissions and advertising.
Another example is my cousin, a former elementary school teacher who reskilled into data science in her 50s. She now freelances part-time, taking on projects that interest her and that fit her schedule. With her domain expertise in education, she‘s been able to carve out a lucrative niche doing data analysis and visualization for school districts, education non-profits and edtech startups.
These are just a few examples, but they illustrate an important point. Learning to code is not just about chasing prestige and a paycheck. It‘s about unlocking a potent problem-solving toolkit that can be leveraged in all sorts of creative ways. It‘s a means to an end, not the end itself.
Find your community
One of the biggest challenges (and opportunities) of learning to code later in life is being surrounded by people who don‘t "get it." When you‘re the only 50-something in a sea of 20-somethings, it‘s easy to feel like an outsider, like you don‘t belong. Imposter syndrome can be especially intense for older career pivoters.
This is where plugging into a community of like-minded learners can make all the difference. Thankfully, there are more resources and support networks than ever for older folks learning to code. One of my favorites is Code with Friends, a group that hosts weekly Twitter chats and Zoom hangouts for adult learners to connect, share ideas and cheer each other on.
Indie Hackers is another great community for meeting other non-traditional developers, many of whom are using their coding skills to build profitable side projects and startups later in life. Then there are the countless "code newbie" Slack and Discord groups that welcome aspiring developers of all ages.
The key is to find your tribe and surround yourself with people who share your goals and values. These relationships not only provide much-needed moral support, but they can also open doors to unexpected opportunities down the road. Some of my closest friends and collaborators are people I‘ve met through coding communities over the past few years.
It‘s a marathon, not a sprint
Perhaps the biggest advantage of learning to code at this stage of life is having the wisdom to play the long game. Many young people approach their careers with a sense of urgency, hopping from job to job in search of the next pay bump or prestige project. There‘s a keeping-up-with-the-Joneses mentality in the tech world that can be exhausting and demoralizing.
In contrast, as an older developer, I have the benefit of perspective. I‘ve already climbed the corporate ladder, experienced the diminishing returns of chasing status, money and external validation. I‘m no longer seduced by promises of overnight success or rocket-ship growth. I‘m not here to cash in on some trend or make a quick buck.
Instead, I‘m playing a different game entirely – one of sustained, incremental progress and continuous learning over years and decades. My goal is not to "win" in the short-term, but to build durable skills that compound in value and optionality over time. It‘s a marathon, not a sprint.
This long-term mindset is incredibly freeing. It means I can focus on the intrinsic rewards of the work – the joy of solving thorny problems, of collaborating with great people, of seeing my creations come to life. The external stuff – job titles, compensation, recognition – those are all just nice-to-haves, not the main event.
It also means I‘m willing to invest in the hard, often unglamorous work of mastering the fundamentals, not just chasing the latest shiny frameworks and tools. I have the patience to wrestle with bug-ridden legacy codebases, to learn the ins and outs of dev ops and cloud computing, to do the sometimes tedious work of writing documentation and tech specs.
These are the kinds of grounding experiences that separate the dabblers from the true craftsmen. They‘re not always fun in the moment, but they pay huge dividends over a long enough time horizon. They‘re the bedrock of a sustainable and fulfilling technology career.
Embrace the journey
So my message to anyone out there considering a plunge into programming in the second half of life is this: ignore the doubters and dream killers, especially the ones living inside your own head. Don‘t let someone else‘s narrow definition of success dictate your path.
Learning to code is so much bigger than getting some specific job or winning some imaginary race. It‘s about cultivating a resilient, flexible and creative mindset. It‘s about embracing lifelong learning as a core value. It‘s about finding joy in the act of making, of bringing something new into the world that didn‘t exist before.
Will this journey be easy? No. Will there be moments of frustration, imposter syndrome and self-doubt? Absolutely. That‘s just part of pushing outside your comfort zone and attempting difficult things. But on the other side of that discomfort is a profound sense of competence and possibility. It‘s the thrill of cresting the top of the learning curve and looking out at a vista of exciting new challenges to tackle.
I think Saron Yitbarek, founder of the CodeNewbie community, put it best:
"The day you stop learning is the day you stop living. We learn by pushing ourselves and finding what lies at the outer reaches of our abilities. So the next time you face that familiar fear of the unknown, listen to that voice in your head that says, ‘You can‘t do this. You don‘t know enough. You‘re going to fail.‘ Then tell that voice, ‘Challenge accepted.‘"
To my fellow 50-something aspiring coders, I say to you: challenge accepted. Embrace the struggle. Savor the small wins. Adopt a beginner‘s mind and trust the process. But most of all, enjoy the journey. You‘re on the adventure of a lifetime.