Your Learning Plan
Tags: productivity, beginners, codenewbie, webdev
Published: 2020-11-10 09:06:05

At some point I think we have all realised that we are always learning something new every single day. It can be simple as a new word from a book you were reading or a podcast you where listening to, a shortcut on a keyboard or a new recipe. It can also get as complicated as learning a new programming language, building a certain component using a new framework or finally figuring out how to restructure your algorithm to solve a problem.

So, as compared to the the more simpler forms of learning that tend to happen without even trying or without knowing, the complex type does not follow the same pattern. When you are learning something complex, you may need a more structured approach, you need a plan.

## Why do you need a more structured approach?

Our minds are officially one of the most complicated structures you can ever find. Despite this, there has been numerous researches to figure out how it works. However, in this article, we will mostly focus on how it stores information. 

Our minds store information using an *incremental design*. An incremental design is more like a growth pattern, you *start small and then end big*. 

This is how it should be and while there is nothing wrong with a deep dive, there is very good chance that you may miss the fundamental aspects of the new skill that you are trying to learn. Take it from the ground and build it right up.

## Steps to planning your learning?

1. **As yourself why**:
    
    Everything has to start somewhere, right? You can start by asking yourself why do you want to learn the skill so badly? Your '*why*' is the reason you will keep moving when things get hard. Your why will be the reason you stay up for long hours and make sacrifices. 

    We all have different reason for why we want to make changes in our lives. Some it's because the people around them look down on them, some for someone they love, others want to grow, others it's a memory they are trying to honor and others do it to improve the life of their family. Let your learning be personal.

1. **Have an overall Goal**:

    Where do you want to end up after your learning? Do you want to get a job or you just want to be well versed in the subject?  You overall goal can be, "*Becoming a MEAN Stack Web Developer*" or "*Becoming a Data Analyst*". The more specific you are about what you want your major outcome to be the better.

1. **Identify the *resources* you will use and your *learning method***:

    While it is quite traditional to just pick up a book and start going word after word, it is important that you yourself understand your style of learning. Others learn from:
    - Books
    - Blog posts
    - Videos

    There are so many platforms out there to use, you can take a look at some of them in this article [A Developer's Resource Inventory](https://dev.to/matthewrungwe/a-developer-s-resource-inventory-561e) published on DevTo. This stage includes a lot of research and time but it is worth it. 

    If you are not sure which method works best for you, it is safe to stick to the method you have always used. However, you can still continue to explore other methods as you go.

1. **Create some milestones**:
    
    If there is anything a lot of us forget to do during our learning it to give yourself a deadline for a particular section. How do you identify these sections? When you are busy identifying what resources to use in **Step 3**, you will definitely catch on to what needs to be completed first and so on. 

    The time frames you create can be in weeks or months. Keep it short enough to give yourself a little pressure and responsibility, and keep it long enough to be realistic and give yourself a break e.g. Finish the Introduction to HTML module or lesson in a month.

1. **Identify platforms that will help you practice**:

    Practice, practice and practice. If I could put this at the top of the list I could. To become competent at what you do, you need to practice as much as you can. A few platforms you can try to test your knowledge are:
    - [Codewars](https://www.codewars.com) 
    - [HackerRank](https://www.hackerrank.com)
    - [CoderByte](https://www.coderbyte.com/)

    Practicing is an essential part of your learning as much a learning the skill.

1. **Take down notes**: 

    One of the things I realised over time it that notes are precious. These help you to refresh your memory or to work offline. For me, a concept makes more sense when I put it down on paper. I guess my mind will be more concentrated.

1. **Join a community**:

    A community can be as simple as a blog that you follow [Skillcrush](https://www.skillcrush.com/blog), [Sitepoint](https://www.sitepoint.com/blog), [Medium](https://www.medium.com), [DevTo](https://www.dev.to). It can be chat groups [Twitter](https://twitter.com), [Slack](https://slack.com), [Quora](https://www.quora.com) or [Stackoverflow](https://www.stackoverflow.com). It can also be meetups or conferences in your area that you can attend. This list can be different provided the path that you have taken but the idea holds. It is nice to have a group that you can learn from or those who are where you want to be.

    Don't forget to be active on these communities. Leave replies, comments and you will be surprised how much you know already.

    Don't forget to ask for help when you get stuck. Don't spend more than a day on a problem when you can learn from others.

1. **Reward yourself**: 
 
    Don't forget to give yourself a pat in the back when you complete a milestone. This stage is important because you need to recognize your efforts and celebrate. You can take a night off, get some snacks, go out or anything that you would love to give or do for yourself for the commitment.

1. **Start your learning**:

    Planning can take some time but it is all worth it. **Abraham Lincoln** put it well, you can see the image blow. Learning should be as serious as it should be fun. 

*I leave you with one of my favorite quotes that reminds me how important planning is.*

![Abraham Lincoln's Quote](https://i.imgur.com/5iZvPH3.jpg)

*Image by Quotelancy*   

Please, feel free to reach out in the comments.

Thank you.