Original Link : https://medium.com/better-programming/age-is-just-a-number-413e91f17a0e

Why you are never too old to learn Java

“I am afraid it’s too late for me to change my profession… To change something in my life, in general. I am (enter an age of 30 or 40 or more here). Too old…”

If I had a cent every time I had heard the phrase like this, I would get a million. Moreover, every person that said this had a face like the cat from Shrek. Or, the face of a real tomcat right before an irreversible operation.

Here I have to explain myself. I listen to all those jeremiads because a few years ago, I started to teach people Java. I like to teach, so I turned my hobby into my second job — the first one is senior Java developer.

By the way, I became a tutor when I was over 30. However, the topic of this article is not tutoring, but learning Java as a mature student.

Plenty of potential switchers worried that they have already missed all their chances to change their life because the number of years lived does not start with 1 or 2. Is this so?

Here we try to parse the following questions:

  • Can people learn everything they want if they are already 30, 35, 40, and so on?
  • Can the people mentioned above become a professional programmer if they have not been connected with this profession before?
  • What are the real problems that can prevent a mature student from becoming a professional programmer? How to deal with them?

Let’s start.


Are Older People Worse at Learning Than Young People?

My younger cousin, Bo, is a professional academic pianist. This year, he graduated from musical college. So, let me count… his study took 18 years! Classical musicians learn for a long time and usually start very early.

The same situation, say, with dancers and athletes. If you want to be successful in sports, you need to start at that tender age when you do not understand that you want to achieve any results.

There is a physiological explanation for this. According to Bo, a high-quality set of pianist’s hands is possible only in childhood, before a kid turns 12. To be successful in gymnastics, you need muscle-tone characteristics of only very young people.

You are not accepted into the boys’ choir if your voice has already changed or if you are a girl, even if you sing beautifully. Of course, this does not mean that you cannot do all of the above at an amateur level at any age (except boys’ choir, sure).

The problem is to make it your profession due to physiological reasons. But what about programming?

I authoritatively insist on the thought that there are no similar physiological reasons that would prevent you from mastering programming and gaining a new profession at the age of 40.

  • If your way of thinking is somewhat logical and you don’t have memory problems.
  • If you are interested in creating something, there is no fundamental difference, whether you are 40 or 20.

There are no specific processes with the ossification of the brain and the inability to shove new knowledge into it at this age.

Sure, I have heard many times that adults show worse results with learning in general. Do they? It depends on what the adult does with their life.

Say, you graduated more than ten years ago and didn’t do any learning, you have probably weaned of the learning process as is. In that case, it will be difficult for you. However, you can solve it, have patience.

There are no physiological reasons for adult switchers. The bad news: there are many other difficulties. The good news: you may solve these problems.


Problem 1. Psychological Pressure on Yourself and Fear of Failure

If you are thinking about switching to the other profession, you possible are not happy with some aspects of your current job or life in general.

The older somebody is, the more vibrant a collection of failures and wrong choices. Therefore, each new failure seems more real, and the person does not want to experience another “fail”.

“I’m 38 now, how is it to start all over again? What if I don’t have enough energy, and indeed, why did I decide that I could?” said Arnold, my student. He didn’t say that right away, but when he faced one of the first difficult tasks.

Looking ahead, I’ll say that he coped with them entirely, but not immediately. And most of all, it was not age that bothered him (brains did not dry out, the information is accurate!).

The problem was not in the lack of knowledge. It was disbelief in his strengths and opportunities.


Problem 2. Public Resistance and Stigmatization

“You are an adult, your boss may be someone who is 15 years younger!” Well, maybe. So what? No need to compare yourself with this younger person. It’s better to compare yourself today with yesterday.

Sometimes, the problem of public resistance is more tangible. For example, you have a family or similar responsibility and can’t afford to quit your job or spend a lot of time on your learning.

“My wife was angry with me. I couldn’t pay enough attention to her and our kids because of my training. I had a good job, and nobody realized why I had started this new page of coding.”

“My friends thought that it was a manifestation of a midlife crisis,” said my student Casey, 41. Now he is 43 years old and a Java junior developer.


Problem 3. Lack of Time and Energy

This problem has a number three but is the number one problem. It is the most challenging problem to solve, especially if you have obligations, say, family and work that you can’t abandon.

You need not only to find the time, but you also need to accustom yourself to allocating energy to regular classes.

Yes, this is unlikely to be news for you, but your learning should be daily. If you want to achieve a stable result, it is better to do it every day, at least every other day.


Problem 4. “Youth Cult” of Some IT Companies

This problem partially overlaps with problem number 2 but is more local and specific.

Most companies do not require age in a resume, because this is personal information. Nevertheless, almost all HR managers will look at your pages on social networks, and try to determine how old you are, whether you have children, and so on.

It is unpleasant to admit this, but very often, these points may affect your application, and not in favor of the adult candidate. Especially when it comes to entry-level posts, such as trainee or Java junior.


How To Resist the Problems

1. Remember that you are not the only mature programming student in this world

For example, about half of my trainee program students are over 30. You may find a lot of success stories from adults who changed their profession on the internet. So, don’t hesitate. Fear is the first killer of success.

2. Remember that self-development is of paramount importance

A person who is fond of something will never feel alone, boring, and mediocre. I mean, it wouldn’t be a waste of time for any result.

3. If you’ve studied nothing for a long time, like 10 years, you might forget the learning process

Here is a real problem for mature students, not “elderly.” Don’t try to remember the process by yourself (exception: you are a keen self-learner, but if you are, you’ve been learning something all the time).

Perhaps you should try to work with a tutor or sign up for courses. It helps your brain to remember what it is like to go to school and absorb new knowledge.

It is worth understanding that learning should be regular, not from time to time. By the way, it could be not only programming but something else. However, if you are trying something systematically, it is not a problem.

4. Programming does not require flexibility of the body and speed of young neurons

It requires patience and a systematic approach. Hence, the right idea is to make your curriculum up.

If you are learning using courses or have a tutor, it is not a problem. If you decided to learn by yourself, find a good online course and use its curriculum tailored for you.

5. If you’re serious about coding and intend to become a Java developer, study every day for four to five hours, or at least for two hours

Where to find the time for all this learning? First, you need to realize whether you don’t have enough time, or whether it is just an illusion?

Sometimes, the lack of time is based on the inability to organize it. On unnecessary habits. On a lack of energy. Energy is taken from another type of energy.

Here is a story of my 37-year old student:

“I worked as a sales manager, and the church choir was my hobby. I visited it twice a week. Sometimes, there were additional rehearsals and concerts. When I started with my programming, I realized that I wouldn’t pull it all together.

Reluctantly, I dropped the choir… Also, I began to watch less TV in the evenings. I was sad, and when I thought about dropping out of my learning, the first thing I remembered was the choir.

Six months I devoted to painstaking study. And, voila, now I’m a junior programmer and sing in my favorite choir again!”.

If you can’t leave your job, try to rethink what you can refuse, at least temporarily.

6. Programming is a practical skill that you need to train every day

The best way to learn how to code is… to code. To code a lot. Read the lectures studying a particular subject and do a few coding tasks. Three, five, or even twenty.

80% of your learning dedicated to practice, 20% leave for reading lectures or documentation.


Resources for Coding Exercises

Where to find practice tasks? Now it is easier than ever before. Here are some resources with excellent coding exercises:

CodeGym— This is a nice online Java Core course for beginners to intermediate students. The star feature here is a practice system. There are about 1000 problems for different levels and verification systems to check your code.

The CodeGym course consists of 40 levels; each includes 15–30 coding tasks, 10–20 Java lectures, and some motivational articles to cheer the students up.

GeeksForGeeks is one of my favorite learning sites. It is full of different articles, courses, and challenging tasks. Try it out, well, I am sure you’ll find something interesting there for your learning.

Codewars is a place where developers achieve code mastery through challenges. It’s suitable for intermediate to advanced Java students. You’ll find challenging tasks here rather than lectures.

7. Ask your questions without hesitation

Yes, that’s a weak point of almost all 30+ students. They are shy and tremble to ask something stupid. You know what? Every coding student has asked something stupid, not once or twice…

Even more: every programmer on this planet asked something stupid during their learning and their work. Join the community, and it will make your education more effective.

Try Stack Overflow’s Java section or Coderanch (the last one is beginner-friendly). Also, you may use Reddit communities, for example, learnprogramming, Java, and learnjava. There you can ask questions or find useful tips on learning Java.

8. Let HR managers judge you not by your age, but by your ability to reason and knowledge of your language

Try to do a project from your learning and upload it to GitHub. Open your social network and information about your age for your friends only.

P.S. Almost all of this advice works for students of all ages.

P.P.S. It is not too late for you if you are ready to change. If you are too lazy and not ready to sacrifice anything for the sake of your Java learning, it could be too late even if you are still a kid.