Software engineering is a field that is regularly changing. Thus, developers must be continual learners to stay sharp.
However, motivating yourself to learn and creating a lasting habit can be difficult, especially if you're self-studying outside of school or work. Below are four techniques that I use to stay motivated while learning.
- Set deadlines
- Spice it up
- Identify the end goal
Learning without structure can feel like an endless task with no end in sight; it's often nice to have a sense of progress. I've found that artificial deadlines give me something to work toward and cleanly mark progress.
Here are some examples of deadlines you could set for yourself:
- I will study Python for 30 minutes by the end of the day
- I will finish two projects by the end of the month
Make sure to create manageable deadlines; experiment until you find something right for you. You may want to try a large interval at first and narrow it down until you find the sweet spot.
For example, when I first started blogging, I wanted to publish bi-weekly. I quickly realized that writing and researching a quality post in two weeks wasn't possible for me, so I changed to a monthly schedule.
Deadlines aren't for everyone: you might have better luck incentivizing yourself through gamification.
For instance, you could implement a basic point system in which you earn a point every day you study SQL. You can use 14 points to treat yourself to a small meal or pay yourself five dollars. Or, you could reward yourself some other way when you've done something five consecutive days.
I find the most motivation from the Seinfeld method. The idea is that every day you do something––learning in some way, in our case––you put a red X through the day on a calendar. The more days you add X's, the longer the chain of X's gets; your goal is to "not break the chain." This method is essentially point-earning and provides an incentive for showing up consistently.
I've found it helpful to vary how I study the material. I find that learning through one medium can be tiring after a while. Temporarily switching the medium motivates me to keep learning.
If I'm learning one topic, I find a preferred, primary medium for studying it––typically text. I'll then augment this material with other media such as YouTube videos and podcasts.
Finally, learn with a clear goal in mind, and use this goal to remind yourself why you're learning.
Why are you learning? Maybe you're preparing for a career change that will boost your income. Or perhaps you're learning in public to help others and gain credibility. (Upward mobility has been a good impetus for me.)
Remind yourself of this goal frequently: write it down on a sticky note attached to your computer or set a reminder on your phone; whatever is visible to you.
Most importantly, find a goal that motivates you when you're the most unmotivated. A resilient objective can carry you through the periods when you'd rather watch Netflix or stop learning.
All of these methods might not work for you, but hopefully, you've been able to pick up something helpful. Let me know in the comments if there's a motivation technique you use that I missed!