by Rick West
So much to learn, so little time
My top tips for learning, staying motivated, and achieving your goals
One of the most common questions I get asked is how I managed to find time to learn web development and to totally change careers, while working a full-time job and with a young family at home.
Heck, I even wonder that myself at times!
Similarly, these are also some of the most common excuses I hear for why people can’t learn, why people give up, and why they don’t progress further in their careers.
Now, I appreciate that we all have different lifestyles, commitments, motivations, and I most certainly don’t have the definitive answer. But I want share some of my key lessons and tips — for finding the time to learn, staying motivated, and reaching your goals.
Don’t let a perceived lack of time stop you from achieving your dreams and reaching your goals.
Deep and Narrow
This seems like a logical place to start. You might have a rough idea of what you want or need to learn. But have you carefully chosen some resources and a definitive path that your are going to follow?
Usually the answer is a resounding “NO”!
I was exactly the same. Like most people, when I first started learning web development, I didn’t really have too much of a plan. What this resulted in was me wasting countless hours learning a little bit of this, a little bit of that, and not really getting anywhere.
Time is precious, especially with the many commitments and obstacles that life often puts in our way. So you need to make sure that you maximize every second of what little time you do have.
This mean’s creating a learning plan, a curriculum, and sticking to it. But you can also maximize the return on your time investment by narrowing in on what you are learning instead of aimlessly learning a little bit of everything.
Therefore, if your goal is to freelance and build websites for small local businesses, you might decide that you want to learn WordPress. If this is the case, just do it. Learn WordPress and its associated technologies and learn them well. Go deep!
Similarly, if your goal is to get into enterprise level software development, learning WordPress isn’t going to be a wise way to spend the little time that you have.
That’s not to say that any of these technologies aren’t worth learning, or that you can’t learn and expand your skill set in the future. Just that if your goal is to become employable, get a promotion, or build a product — in the shortest time possible — then you need to maximize your time and concentrate your effort on the things that will get you there the quickest.
Consistency is key
This has to be the most important thing that I have learned and the best bit of advice that I could give to anyone learning anything.
I’ve found that learning something is not so much about the amount of time spent, but rather, it’s about consistency.
For example, if you only have 10 hours of free time each week to dedicate to learning — you will learn and retain more by studying for 90 minutes, 7 days a week, rather than trying to cram 10 hours in on a weekend!
Doesn’t 90 minutes daily sound like a much more achievable goal, too? It’s so much easier to get up an hour earlier, or go to bed an hour later, than it is to give up your entire weekend!
It’s all about forming a habit and making learning part of your lifestyle.
As humans, we are creatures of habit. So make learning part of your daily routine, make time, be consistent, and keep going.
As mentioned, you need to make time and you need to be consistent in doing so. This might mean that you need to make sacrifices in order to achieve that goal.
Whether this means sacrificing an hour in bed, not finishing that book you just started, or missing your favorite TV program — this is what you need to do. I never said it would be easy…
…However, the important thing to remember here? It’s not forever!
This is a short term sacrifice in order to achieve your long term goal.
For me, since I was working long hours, and had two kids under 3, I decided that my learning time would be 9pm onwards — once the kids were in bed. This would previously have been the time I would sit and watch TV with my wife and relax after a hard day. Instead, I would often stay up into the early hours, get minimal sleep, and be up for work early the next day.
That was the sacrifice I made…but now, through making that sacrifice in the short term, and achieving my goal of getting a job in web development, I no longer have to make that sacrifice. I work 8 hours at my day job, come home, and can watch all the crappy TV I want.
The funny thing is, I still spend 9pm onwards and stay up ridiculously late, learning new things and working on side projects. It’s funny how that consistent ‘sacrifice’ soon became a habit!
Recognize your motivation
Perspective is a wonderful thing. For some people, having a wife and young family might be the reason that you can’t learn to code. The reason that you have no time.
For me, this was my motivation.
I decided that I wanted a more stable career, with a brighter future and the possibility of a better work life balance (Who was I kidding!). Ultimately, I wanted to provide a better life for myself, my wife, and my children.
Recognizing that this was my motivation made making those sacrifices so much easier.
Whatever your motivation is, whatever your reason, keep that in mind.
When things get difficult and you feel like giving up, think back to the reason that you started in the first place.
Integrate your learning into different areas of your life
Learning comes in all shapes and sizes. For example, a common misconception is that if you want to learn how to code, then you have to be sitting in front of a computer. Don’t get me wrong, it certainly helps, but there are often other area’s of your life that you can take advantage of in order to maximize and support your learning.
While I was learning to code, working my full-time construction job, I had a commute to work of at least an hour every day. What a ‘waste’ of time…but it didn’t have to be!
I started listening to web development and business related motivational podcasts during my commute. While not learning directly, podcasts are a brilliant was of passively consuming content and a great way to get more context around you chosen area of learning.
Make use of every opportunity you have and immerse yourself in your chosen pursuit. Swap music for podcasts while at the gym, read a chapter of a relevant book or blog post during your lunch break, carry a notepad around with you and take notes as thoughts and ideas come into your head.
Find ways in which you can make learning part of your everyday life. Think outside the box.
Don’t put too much pressure on yourself
This is also one of the most important takeaways from my experience of learning to code.
In somewhat of a contradiction to my first point about consistency being key, you must also appreciate that this is life and life isn’t straightforward. Even the best laid plans don’t always work out.
So, don’t beat yourself up about it. If you miss a day studying, so what. In the grand scheme of things, a missed day here and there isn’t going to make the slightest difference! Just pick it back up the next day and keep moving forward. The odd missed day really isn’t going to matter.
This goes for staying up too late or forcing it too much too. If you’re tired, go to sleep! If you need a night out with the family, go enjoy yourself. Life’s too short.
Learning anything is going to take time and things don’t happen overnight.
While the goal is always to be productive and learn as much as possible as quickly as possible, you just need to remember that you’re in it for the long run and all will be good in time.
Too often we worry that things are taking too long, we’re not making enough progress, and we’ll never reach our target. I fully understand that, especially in the case of web development. Because there is so much to learn and the scope is so vast, it can be crushingly overwhelming at times.
But we’re talking about something that could materialize into a career that could span the next 10, 20, 30 or 40 years.
Again, put that into perspective — If it takes you 1 year, 2 years, 3 years or even more to get your first job. Does that really matter?
For some reason, in the self-taught development world, it seems to be all about how someone ‘got a job in 6 months’ or ‘landed a $100k junior role’.
But remember, we don’t always get the full context surrounding that situation. At the end of the day, that is someone else’s story, not your own. As long as you are moving forward and making progress, it will happen. Be patient.
Don’t compare yourself to others. Compare yourself to the person you were yesterday
There is no secret ingredient. Sacrifice, hard work and patience are all it takes.
Thank you for reading! ? If you enjoyed it, hit that clap button below. I really appreciate your support and it helps other people see the story.
I am always happy to hear from like minded people, so feel free to shoot me an email or say hello on Twitter.
I’d also like to take this opportunity to also say a massive thank you to Quincy Larson for acknowledging me as one of freeCodeCamp’s top contributors. Without Quincy and the freeCodeCamp platform, it wouldn’t have been possible to reach, speak to, and engage with as many people as I have this past year. Thank you to the entire freeCodeCamp community, everyone that likes, shares, supports and contributes to making the community what it is. You’re all awesome!