Learning, upskilling, and staying in touch with the latest technology and trends are a part of any software developer's life. They are not optional extras but are vital to the successful achievement of a developer's career goals. However, there are some common learning mistakes that developers often make regardless of where they are currently in their careers.

The common learning mistakes are:

  1. Not having a learning plan.
  2. Not setting a clear end goal.
  3. Choosing too broad a topic.
  4. Having a consumption overload.
  5. Not keeping track of progress.

1. Not Having a Learning Plan

Image of person on laptop
Photo by Avel Chuklanov on Unsplash

There is a saying that if you fail to plan, you plan to fail, and this applies to learning too. Sometimes, developers get impatient and plunge straight into active learning without any preparation. For example, a developer might say they want to learn a JavaScript framework, React. They may start reading tutorials about React without any outline on what areas they want to focus on, or how to get to their end goal: being able to write React applications.

The better way of learning, in this case, will be looking at the official documentation, going through the step-by-step approach from main concepts to advanced guides and API references, and creating a sample application in React. After this, looking at and learning from other examples out there and setting SMART goals for each stage of their learning will be helpful. S.M.A.R.T. goals are good goals because they're specific, measurable, achievable, realistic, and time-bound.

2. No Clear End Goal

Image of a bullseye
Photo by engin akyurt on Unsplash

There are so many new technologies and new ways of doing things in the software development industry. Don't get me wrong; I believe continuous learning is a good thing. You can only grow your skill set and knowledge if you are open to learning. However, if a developer has too much FOMO (Fear of Missing Out) about learning every new thing that they hear about — then there will be no time left for being productive or putting her knowledge and skills to good use.

Before you learn something, I'd encourage you to think about why you're learning it — and where and how you'll use your newly learned knowledge or skill. For example, if you're a backend developer, and you're learning JavaScript, you're doing so because your goal is to move to full-stack development. Or, if you're a DevOps and learning AWS, you might be doing so to increase your chance of a new employment opportunity at a company that uses AWS.

3. Choosing Too Broad a Topic

Image of the sea and sky.
Photo by Matthew Maber on Unsplash

Ever heard of the saying — everything but the kitchen sink? Sometimes, developers get too greedy with wanting to know everything about a topic that they fail to narrow down and, instead, set a very broad learning objective. How broad is too broad, I hear you ask. In my opinion, a topic is too broad if you can't articulate your learning outcomes in a few words to another developer.

Learning outcomes are statements about knowledge or skill a developer should acquire by the end of their learning journey on a specific topic. Sure, you can learn about a particular topic forever, but there must be a point when you decide for yourself that it is enough, for now. Enough for you to feel confident in working toward and achieving your end goal.

For example, here are some learning outcomes for learning React Javascript framework.

By the end of my learning program, I should be able to create a new React app from scratch that can:

  • Consume JSON payload in a REST API
  • Refresh the content of the app every x mins
  • Navigate to different screens
  • Remember the last screen I visited before (if any)
  • Be Unit-tested

Note that the above learning outcomes are not too specific or detailed (like creating a component in JSX syntax, for example) because you don't know about the ins and outs of the React framework yet. They are not too broad either; there is a clear outcome for each statement instead of just a broad, generic one, like "Create a React app."

4. Having Consumption Overload

Image of multiple waterfalls
Photo by Mike Lewis HeadSmart Media on Unsplash

Tutorial fatigue — it's real. If you think you're learning something by going through endless books, videos, and tutorials then you're simply wasting your time. Pick a few options, be it books, videos, or any other format, and stick with them. Chances are what you learn in a video will be very similar to another tutorial that you're reading on the same topic.

To give you another example, I did a quick search on Amazon about React Javascript framework, and there were about 700 books on the topic — a few of them even have the exact same book title, Learning React. There is no way you can get through all the books, and even if you did, it is no guarantee that you'll become an expert at React, or is it a good use of your time.

5. Not Keeping Track of Progress

Image of a loading screen
Photo by Mike van den Bos on Unsplash

Having a clear plan and a definite goal is good, but they serve little purpose if you're not keeping track of how you're progressing — and if you're reaching your goals. Review your progress every fortnight, or at least every month, and ask yourself whether you are heading in the right direction.

I recommend setting up a reminder in your calendar to review your progress at a regular interval at the start of your learning journey — so you don't forget about it. If you're not achieving your goals timely, it's a chance for you to understand where you may be struggling with and revise your plan. On the other hand, if you're achieving your goals, celebrate them to keep your momentum and motivation going.

6. Be an Efficient Learner

Image of an apple, some book, crayons
Photo by Element5 Digital on Unsplash

In this day and age, being an efficient learner gives you an edge and sets you up for your career success. I'm a firm believer that you can get better at anything in life if you take the time to understand the process — and have the willingness to improve. Learning is no exception. It is a skill that can be improved with practice. And knowing what not to do is sometimes as important as knowing what to do when it comes to learning. Just like what Confucius, a Chinese social philosopher, once said:

"Learning without thought is labor lost; thought without learning is perilous. "— Confucius