Why ‘Learn To Code’ Is Lazy Career Advice


I don’t agree that everyone needs to “learn to code” to have a good career. And this is coming from someone who runs a technology team. I love working with software developers, and I enjoy hacking together my own code every now and then. I’m all for everyone playing around with some programming to see if they like it and then building a career in software if that’s what they want. But I disagree with so many career coaches who proselytize the “learn to code” dogma to the masses as the only path to a successful career.

I believe telling everyone to learn to code as if it’s the golden ticket to career success is patronizing. It is narrow-sighted to suggest coding is the only useful skill to learn for career advancement in all fields. Learning to code is useful if you want to be a software developer or go into a related area such as analytics. It can be nonsensical career advice if this is not the path you want.

Programming is not something you learn once and remember forever. You can lose progress quickly if you don’t keep up with it regularly (much like the fitness plan I never stick with). It is changing all the time. If you want to get good enough at coding to derive substantial career benefit from it, you’ll need dedication and constant practice. And you generally need to like it to get good at it. It can be a torturous grind if you force it on yourself.

But what about career advancement opportunities and all those people you hear about who are making more money because they switched careers after learning to code?

I’ve worked with many developers who were just going through the motions for the money. They are some of the most unhappy people I’ve ever known. A developer’s job is not just a bit of coding here and there. It is the entire job — every day and all day. And it’s not always building cool new things. A lot of the job early on is fixing bugs, rewriting someone else’s code, and spending days reformatting your own code to meet programming standards.

There are plenty of better places to focus your effort other than learning to code if career development or an increased paycheck is what you are after (and you don’t want to be a developer). Here are a few examples.

Adding Value To Someone’s Life

I know someone who is the CEO of a billion-dollar biotech company who got the job simply because he had helped a former colleague with a few papers when they were both in academia. This CEO doesn’t know the first thing about coding. He would think Python is an incorrectly capitalized, elongated reptile with no legs rather than a programming language. But he did know the timeless wisdom of lending a hand to people that needed help throughout his life.

Learning More Directly Relevant Skills

Here’s a thought. If you want to be a writer, focus on putting in your 10,000 hours and become the best writer you can be rather than learning to code on the side. Coding doesn’t help you write better fiction. Putting your thoughts on paper does (or, more likely, putting them onto a screen). If you spend your entire life doing things that other people say you should be doing to get ahead, you will end up somewhere you don’t want to be. Put the work into developing the skills you want so you can build your career on your own terms. It will be a much better use of your time.

Building Some Meaningful Relationships

Grab coffee with old colleagues you haven’t connected with in a while. Go to meet-ups and talk to interesting new people. You never know what kind of world-changing ideas will magically pop into existence when you meet new people with fresh ideas — or who may one day refer you to someone that can give you your dream job. Career development aside, research (via The Harvard Gazette) has shown strong relationships are one of the most important drivers of happiness.

No sane person would doubt that software is becoming an increasingly ubiquitous part of our lives. There are plenty of programming jobs out there if you like and are good at writing software. But it’s a big leap to translate that to mean everyone needs to learn to code. There are plenty of other ways to build a successful career.