January 26, 2020Podcasts I listen to (Jan 2020)
January 23, 2020Are you too old to start programming
January 22, 2020Use tabs not spaces
October 18, 2019Refactoring Overgrown React Components slides
October 2, 2019Book Review: Factfulness
October 1, 2019Yes, it's a good time to add TypeScript to your project
September 24, 2019Code Review – Best Practices, Guidelines & Process Insights
June 10, 2019Why I read on the iPad
March 18, 2019Software & Hardware I use
March 16, 2019Why I dont use React Router Link component
November 15, 2018Why public money software is not open source?
July 5, 2018How learning Angular made me better React developer
May 23, 2018My 12 tips how to increase your frontend coding productivity

harold meme

Are you too old to start programming

My friends ask me about becoming a programmer. They know IT as a profitable industry and they hear success stories of people who became programmers during their 30s or 40s. It's especially propagated by programming boot camps who make a living by selling the dreams. But the most common question they ask is: "Am I too old to start programming?". They don't ask the right question.

Programming vs being a programmer.

There is a huge difference between starting to program and becoming a programmer for a living. It's the same difference as playing football and make a living by playing football.

You always can do things. And it's great. No matter what activity, new hobby or skill you learn, you are giving yourself a gift. You increase your mental capacity and give yourself a boost, even if you do some stupid things (maybe except some super stupid things like watching TV).

Technically you can even try with the technique of "learning any new skill in only 15 hours". I don't think it will always work, but if you have a good approach you might be more successful than you think. The technique relies on dividing complex skill to simpler skills and than training them every day (or probably better every few days) for 30 days, 30 minutes a day. Theoretically, it's a very optimal way to learn e.g playing the guitar on some decent level.

But to make money on some skill, you will need more than 15 hours.

You need time

You need a lot of time to become proficient in any skill to make a living. Of course, different skills have different complexity level required to start. If the industry's demand is high, you will need less skill to start being paid. A few years ago (at least in Poland) programming industry was quite easy and half a year of good training was probably enough to get a first junior position. But you will not become a doctor in half-year (but you will probably be good enough in some narrow piece of medicine, just like programmers are specialized on particular technology). You will also not become a football player in half a year. And if the industry is very full - let's say market shrank and there are many people in the market - you will have to be far, far better than average to get a job. Simple supply-demand model.

Ask the right questions

Don't ask if you can start programming. Yes, you can. Always, no matter if you are 5 or 80.

Don't ask if you are too old to be a programmer. I don't know. No one knows because it's just not related to age.

Ask yourself:

Can I sacrifice a significant amount of time to develop a new skill to make this career move?

Why we assume age matters

People change their career paths few times in their life, but we still follow the model of making "big life decision" early, choosing a university and defining our careers and our lives when we are 16-18yo. It's crazy...

But, people, especially after 30 or 40 know that they don't have "this energy" or "they have other responsibilities" in their age. After all, when you are 18 you have time to learn to code, having classes and still drinking whole night and not dying for a week. So they assume there are just lucky guys who chosen right in high school with their careers and the rest is doomed in life-sucking corporate life.

I might have bad news

If you follow "the standard model" - have a mortgage, kids and duties. If you never learned (I mean true learning, not school learning). If you were never interested in self development. If you just woke up having a shit life and now you want to make a ton of money being a programmer - you might fail, because you might not have a proper mindset here. And I think the same for any other larger life choice or skill. You will probably not be ready to sacrifice months or years for a promise of a better life, having a lot of stress-related to your situation, family etc.

I might have good news

But if you are curious about the world, if you like to learn new things, if you feel brave enough to extend your comfort zone - you have a good mindset. And if you luckily ended up being 30 without any serious responsibilities, you will "only" a ton of willpower to develop a habit of learning every day for the rest of your life ;)

What else you should ask yourself

  • Can I spend an hour a day learning a new skill every day for a year?*
  • Can I spend 2 hours a day learning a new skill every day for half a year?*
  • Can I work out/train in the gym to get fit? If now, why do I assume I can train my mind similar way?
  • Can I afford to reduce my salary (depending on the country and when you read it and how much you earn now it can be a huge difference) for at least few months or maybe years at the beginning of my new career?**
  • Am I aware I will have to constantly improve my skills and knowledge to remain a valuable employee (IT changes very fast. Faster then medicine, and all of us know "doctors learn whole life")?
  • Do I have a family or close friends who can support me when I have moments of doubt?
  • Do I know people who might join me so we can share our knowledge and learning progress?
  • Does the time required to learn will I take from valuable sources (e.g family, kids, cats) or not valuable (TV, games)?
  • Am I at least basically proficient with technology, computers?
  • Do I know English enough to at least read and understand what I read?
  • Do I have enough money to quit a job for a while so I can learn and prepare? Do I have a partner who can provide for me for that time?

* You will probably need much more than this

** You might even be forced to work for free (internship) at the beginning. Work should be paid, but as an intern you don't bring any value, but you are a cost to employee. Company invests in you with time of senior programmers. I'm not saying it's a standard, but you should be ready.

I don't want to discourage

I saw too many people fooled by companies who suck their money promising everyone can be a programmer, no matter if they even know what a computer is.

Programming isn't anything "magical". It's a skill like any other and luckily today it's profitable and it doesn't require any degree - which is reasonable, because IT is a quite reasonable industry.

Just ask yourself the right questions