How to Learn Constantly (Without Burning Out)
By Megan Kaczanowski
In tech, constantly learning (both in and out of work) is an unstated job requirement.
When I was growing up, I would go to the bookstore with my dad every weekend, and every time he would pick up a new book on coding. At the time, I always asked why he was working on the weekends. Now I understand, because I now spend my weekends the same way.
Working in tech requires you to constantly learn new skills. The industry moves so quickly that those who do not continue to learn fall behind. Continuing to succeed at your job is dependent on your ability to learn, but it can be an overwhelming prospect to finish a long day of work only to go home to study.
So how do you do find the motivation to study and ensure that the time you spend learning is productive?
#1: Set a Goal
Set a SMART goal (specific, measurable, attainable, relevant, and time based). It will help you structure your thinking. For example, a general goal would be ‘I want to learn how to code.’ A SMART Goal would be ‘I want to build a website with HTML and CSS in the next 6 months.’
- Specific: Going from ‘learn to code’ (general) to ‘build a website using HTML and CSS’ (specific). This should be something which motivates and focuses you. What do you want to achieve? Why?
- Measurable: How can you track your progress toward your goal? Does writing a script count as ‘learning to code’? Think about how you can measure your progress toward your goal. If it isn’t measurable, it’s a lot easier to get unmotivated. Something like ‘build a website using HTML and CSS’ is much easier to track your progress toward.
- Attainable: Think realistically about your own limitations. If you’re used to coming home and watching TV every day for 3 hours, you’re probably not suddenly going to start coming home from work every day and spending 3 hours studying. That’s okay. Don’t plan for very dramatic change – it’s very hard to make that kind of change sustainable.
Instead, think about small changes. Plan for 30 minutes to spend on a new skill. Think about what you’ve accomplished in the past and if this goal is achievable for you. This is also a good time to think about whether or not you are overcommitting. Are you trying to learn Spanish, play the Oboe, and learn a new framework all in the next month? Pick one thing and stay focused on it. That will make it easier to accomplish one goal, and you can always choose a different goal for your next project.
- Relevant: Is this goal relevant to what I want? For example, if your goal is to become a software developer, what are the top skills you need to develop? Prioritize learning those skills first. Ask yourself if this the best time for this goal.
- Time-based: The first goal doesn’t set any time limit, which can be hard to motivate yourself to pursue. After all, when you have forever it’s much easier to think ‘I’ll start tomorrow.’ The second goal gives you a hard timeline to accomplish it (6 months).
While it’s definitely harder (and takes more time initially) to set SMART goals, it will save you time in the long term.
In Sprint, the authors point out that all of us have limited decision-making capacity each day. It needs to be conserved for the most important tasks. With the first goal (learn to code), you now have to decide what language to program in, what kind of project or projects you want to build, and when you’re going to do it. The second goal (build a website using HTML and CSS) answers all of those questions for you.
#2 Break it Down
Now that you have your goal, break it down into monthly, weekly, daily, or hourly steps (as far down as you need to go). For the example earlier, if your goal is to build a website with HTML and CSS and you don’t know how to code, break it down into manageable steps. For example:
- Find resources to learn HTML and CSS (like freecodecamp.org)
- Spend at least 30 minutes every day working on programming challenges
- Start building a website and dedicate at least 30 minutes every day to working on it
This is a pretty simple example, but the goal looks more manageable already. Build a website? That seems really hard. Spending 30 minutes every day working on learning a new thing? That’s much more manageable. Pretty much everyone has a spare 30 minutes they can work into their day for something that matters to them.
#3 Block out Time
Now that you have your goal, figure out how to spend a solid block of time on it every day (or as often as you can). Small chunks of time (say 5 minutes) here and there are easy to get erased in favor of other things, or may not be long enough for you to focus on the task at hand.
Research shows that regaining focus after an interruption can take (on average) more than 20 minutes. It’s more effective if you can identify an hour (or even 30 minutes) every day and block them out to only focus on this goal.
This is also why time-sensitive goals are so important. It’s much easier to block off time if you can say ‘this is just for 1 month, or two months, etc.’ Blocking off indefinite time is much harder to do.
Plus, blocking out just a small chunk of time means you can work on your project for the assigned time, then go do something else, knowing you accomplished something. Blocking off specific time to work on a personal project means you can work for 30 minutes, then relax without having to worry, as opposed to working on and off while trying to multitask 6 other things (watching Netflix, checking texts, cooking, etc.) is probably going to end with you even more stressed out and feeling less productive.
Studies show that very, very, very few people can truly multitask (I'm definitely not one of them), and that trying to do so just makes accomplishing tasks much harder. Don't try. Block off time, use it for your project, then do something you enjoy.
#4 Stay Focused
It can be very, very easy in tech to start learning one thing and get side-tracked. There are tons of free resources to learn just about anything and it can be overwhelming, and difficult to know where to start (to the extent that it can be paralyzing and impossible to begin learning everything at all).
Escape some of this paralysis by picking just one goal, and sticking with it. It will be a lot more helpful if you can do one thing well (for example creating a website) than a lot of things just a little (for example, printing 'Hello World' in every possible language). Take time to make sure that what you’re doing is helping you accomplish your goal. Ask yourself ‘Is this helping me accomplish my SMART goal?’ If not, it’s probably time to re-evaluate.
Remember, you’ve already done the hard part when you set your goal. You’ve decided this is important and blocked off time. Now you just need to work on it.
If every time you sit down to study, you have to motivate yourself to do so, you won’t have the energy to study. Making the studying a habit saves your energy for the actual task. Ideally you'll get to the point where you come in, sit down, and just start working, without thinking about it.
Now, go learn something!
Looking for more resources? Check out these really smart people:
Subscribe to my newsletter
Read articles from freeCodeCamp directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
freeCodeCamp
freeCodeCamp
Learn to code. Build projects. Earn certifications—All for free.