“Hey Joe, did you hear about the 49-year-old guy in the Academy of Computer Science at Lambda School? Yeah, that guy! What’s he thinking? He’ll never be able to compete with us for jobs. Wait, why are you laughing at me Joe? C’mon, I’m serious, he’s too old!”
Actually no, he’s not. I’m that guy and I’ve finally accepted that it’s never too late to learn to code. I started my training earlier this year and it’s going great. I haven’t felt this good about my future since I met my wife seventeen years ago. Doors are opening and great things await, and it’s all thanks to code.
Like I said, though, I used to think that it was too late. I stepped onto the coding path as a kid but fell off it about twenty-eight years ago. I thought about getting back on it many times, but I always convinced myself that it would be too difficult at my age and that it was too late to start.
I have never been more wrong about anything in my life.
Why did I think this? Because I’m married and have kids, a mortgage payment, cars, bills, and everything else that could be used as an excuse for why it wasn’t the right time to get started. I’d tell myself that I didn’t have the option to train now because I couldn’t handle my obligations if I did, but the reality was that I didn’t even try to find a way to make it work. I lied to myself and I believed that lie. Fast forward through twenty-eight years of lying to myself and I had gone nowhere.
Earlier this year I started thinking about going back to coding again, and instead of listening to the old lies I did some research. Sure, it would have been a lot easier to do it if I’d won the lottery or invested early in Bitcoin, but that wasn’t the case. I’d have to find a way to make it work, so I spoke with my family about taking a risk now in order to improve our lives later. After much discussion and evaluation of our options, we did find a way to make it work. It hasn’t been an easy road to follow, but the destination will be worth the journey.
So yes, it is harder to start coding at my age, but it can be done. I’m in a class with about forty other students and most of them have responsibilities similar to mine. Many are parents, and some are even single parents raising kids on their own. They all have bills to pay and obligations to meet, but you know what? They’re here to change their lives and they’re doing it. That will make all the difference in the end.
This is the second lie I told myself. I believed that I was so far behind all the coders out there that there was no point in trying. I believed that, even if I found a way to juggle my family and financial obligations, I wouldn’t be able to compete with those that had started years before me.
Luckily I managed to avoid telling myself this lie again earlier this year when I started thinking about returning to coding. What happened shortly after made me see just how ridiculous this lie had been from the start. After enrolling in training I told a 22-year-old friend about my decision. He was excited for me and thought it was great that I was going to finish what I started over thirty years ago. I knew he could do it, too, and I told him so. I couldn’t believe it when he responded with my own lie.
“No, it’s too late. I didn’t start as a kid like all those hackers that started at 8 or 12 or 16. They’re way past me and have more experience. There won’t be any jobs left for me because I can’t catch up to them.
I was stunned to hear him stating the same lie I’d told myself for years. Here I am at 49 telling a 22 year old that I’ve started training and he’s telling me it’s too late for him to do the same. I couldn’t believe it, so I asked him why he couldn’t do it at less than half my age.
“You started as a kid and went to college for it. You already have a background in it. I’m interested but I’ve never done it and I know nothing about it.”
Okay, so he’s right up to a point. That stopping point, however, makes all the difference.
Yes, I did start coding when I was a kid. I took my first class in BASIC thirty-five years ago in junior high school and I started a major in Computer Science at Rochester Institute of Technology in 1987. Then, because “Life is what happens while you are busy making other plans,”(1) everything went sideways. When I was about 21 I took a data-entry job to support my family. I never finished my Bachelor’s degree and I haven’t worked as a coder in the twenty-eight years since.
So yes, my friend was right in saying that I started coding as a kid but he was wrong in thinking that it gives me an advantage today. I’ve forgotten everything I learned back then except the most basic of concepts, which I could count on one hand and he could learn about in less than ten minutes on Google.
With that supposed “advantage” out of the way, let’s correct the fallacies in his argument.
“They’re way past me and have more experience. There won’t be any jobs left for me because I can’t catch up to them.”
It’s true, there are others out there with more coding experience than you. So what? Every coder was inexperienced and taking their first steps toward becoming a professional at some point, and they did it despite the fact that there were already experienced professionals in the field.
Let’s look at it from a different perspective. Every year high school graduates take their first steps toward earning Bachelor’s degrees in majors such as Business, Architecture, and Engineering. These students aren’t waiting for the current professionals in their chosen fields — professionals who are “way past” them in experience — to get out of the way; they’re getting on career paths now so they’ll be able to take their places among these professionals later. It’s exactly the same with coding. You’ll never be able to take your place among the professional coders if you don’t get on the path.
I’ll tell you a secret about experience, though: if you start coding now, a year from now you’ll have a year more experience than someone who is just getting started. A year later you’ll be two years ahead of someone who’s just starting out, and so on. You’ll be the one they think they can’t compete with.
Okay, you’re right, they do have more experience than you, but not all experience is the same. Maybe that coder who started out years ago hasn’t stayed current with changes in the field. All of their experience is now outdated, so that coder will not be nearly as competitive as you will be once you have training based on current technologies and best practices.
But what if they have stayed current? If you are applying for the same job as someone with that much more current experience than you, then one of you made a mistake. One of you reached too high or too low in applying for this job. Either you don’t have the experience to succeed at this job yet or the other person has too much experience and the company won’t be willing to pay the salary that level of experience demands. The worst that can happen is you don’t get this job. Keep looking and you’ll find the job that’s right for you.
There’s one last thing to consider about experience, and that is the fact that there are many areas of specialization in coding. An employer will not just look at how much experience an applicant has or whether that experience is current; they’ll also consider whether the applicant has experience in the specialized area that the job requires. You may specialize in front-end design or artificial intelligence development, so you won’t be pursuing the same jobs as a coder who is specialized in back-end development or database management. Neither of you are qualified for the same specialized jobs.
You couldn’t be more wrong. The tech industry is growing at an incredible rate and there are not enough coders to satisfy the current demand. Better yet, that demand is growing daily as tech-based industries continue to expand and traditional industries begin to integrate new technologies to stay competitive.
If you don’t believe me, here’s what the Occupational Outlook Handbook from the Bureau of Labor Statistics projects: “Employment of software developers is projected to grow 24 percent from 2016 to 2026, much faster than the average for all occupations. Software developers will be needed to respond to an increased demand for computer software.”(2)
As you can see, there are more than enough jobs to go around. Furthermore, different jobs require different levels of skill so you won’t be competing with a veteran coder if you apply for a junior developer job. Instead, you’ll be competing with others who have a skill set similar to your own, so if you prepare yourself properly you’ll be ready for the challenge.
I’ll be brutally honest here. You’re right, you can’t catch up to them. So what? That’s not the point at all. You’re not in a race against anyone but yourself. You are the only person you need to beat. You can only win this race if you get out of your own way and get started.
How do you do that? You focus on the first step, then focus on the next, and the next, and so on. Keep taking steps and one day you’ll be amazed at how far you’ve come. You’ll look back and you won’t even be able to see where your journey started.
“A journey of a thousand miles begins with a single step”(3) and coding is one such journey. If you have the interest, which I believe you do since you’ve stayed with me this far, it’s time to begin.
Right here, right now, you’re at your starting point. Join me. Take the first step on your path and don’t look back. A thousand lines of code from now you’ll be glad that you did.
1: Allen Saunders: https://en.wikipedia.org/wiki/Allen_Saunders
2: Occupational Outlook Handbook, United States Department of Labor, Bureau of Labor Statistics: https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm