Don’t Panic! 

Learning something new is so overwhelming. You can get nervous or feel lost. You might give up when you feel things are getting more complicated. You may look at others who become really good at what you are trying to learn and then you get so frustrated. All these feelings are normal when you expose yourself to something completely new. So no need to panic. 
Here are the eight pillars I figured out (the hard way) during the past decade of learning programming. I’ve taught myself how to avoid unnecessary methods to learn something new, how to overcome obstacles, how to focus, how to learn fast, and how to retain everything you learned. I came up with what I call the eight pillars of learning.  
Before you say anything, yes these pillars are not something new. You probably know all of them and probably know more than that. I admit that I’m not teaching you something new or you don’t already know. What I’m going to tell you is my side of the story and how I struggled because I couldn’t find anyone to guide me through the journey I took. I learned about each one of them the hard way.


My Eight Pillars 

1- Passion 
The first thing to keep in mind is having passion to what you want to learn. Wanting to learn something just because you like is not considered a passion. When you like something, try it and if you find yourself can’t get enough of it no matter how long it takes, that’s when you know that you are on the right way to passionatesvill. 

Passion is the boat that is going to carry you during your journey of learning. 

I’m emphasizing about passion because it’s the boat that is going to carry you during your journey of learning. Without passion you’ll find yourself quitting too early or just spend the minimum effort to learn.

2- Goal
Now you are so passionate about what you want to learn. You’ve already picked the boat and now you’re ready to sail. But to which direction? 
You need a purpose for what you are trying to learn. You need to set a goal for yourself and what do you want to accomplish eventually. This goal might be personal to have more skills and be able to build whatever you need. It could be a career improvement or having more skills to land a better job. Or maybe you just want to show off in front of your friends. Whatever the reason or the goal is, you must have one.

3- Curiosity
Reading from one book or watching few video channels might help you a lot. You may get what you need to know and help you achieve most of the goals you set for yourself. But that’s not enough if you want to be really good at what you’re doing.

If you really want to challenge yourself all the time and be ahead of everyone one else in your field, you have to be a sucker for knowledge. You need to get information form different resources, be curios about the little details, read latest articles, hoover over the documentation of what you want to learn like bees over flowers, read as many books as you can, educated yourself about related subjects to what you are learning, and when you think you had enough, do all that over and over again.

4- Patience & Persistence
Never give up! Don’t let your mind tricks you into thinking about how long it’s going to take to accomplish what you’ve started. This is not a fun weekend picnic. This is a game changer for you. Think of it as climbing a mountain. You need to get to the top and see how small this world is when you are big enough to see all of its details. 

The more you learn the more valuable you become. 

Going to the top needs a lot of effort and patience. Never think of how long the road might be. Think of what you’ll become when you are on the top. How much value you’ll be adding to yourself when you reach your goals. 
One more thing, never settle. Just keep pushing yourself further and further more. There is no limits in the world of knowledge. You are what you learn. The more you learn the more valuable you become. 
Learning something in few days is just a myth.

5- Practice
You’ve just started reading and you’ve successfully finished the first page of your first book. Congratulations! You had your first baby step and you are now ready for another one. WRONG! 
Think again! You are missing something. Go over the first page again and see if it has something you can try. If so, then the first thing you need to do is trying that part. If it requires an editor, open it and try. Never let anything goes by without trying it first. Do it more than just one time. Do it over and over again until you are familiar with it. If you skip something, it means you are not serious about it. The most important part of programming is to practice immediately what you’ve just learned. The whole concept of programming is to keep writing codes. 

Don’t try to memorize everything. Just understand deeply how things work. 

Don’t try to memorize everything. Just understand deeply how things work. No matter how good your memory is, you’ll definitely going to forget the parts that you don’t use often. It’s going to be more practical if you take notes while learning. Make your own cheat sheet to remind you of the parts that you are going to use from time to time.

6- Ask for Help 
Now you’re in page 234 and there are some mysterious terminologies or code parts that doesn’t make sense or you couldn’t understand. Maybe the writer assumed that you might be aware of or he didn’t explain them well. It doesn’t really matter. What matters is you not skipping that part. Also don’t use it as is to complete the section exercise without knowing everything about it. The solution is very easy. Just ask for help. Start by asking your friends if it happens that any of them has more experience than you. If not, search the internet about that part and you’re definitely going to find a lot of people who have the same problem. It would be also a good idea to send an email to the writer of the book if he put his contact information in the book. There are also a lot of communities in the internet who are ready to help and answer any kind of questions. You’ll get better answers if you ask after you try figuring it out yourself. 

7- Karma 
Remember that everything you do (good or bad) towards others is going to get back to you in a way or another. 
If you learn something, share it with others. If someone asked you a question, answer it the best you can. If someone needs your help and you can do, help and never have a second thought or ask for something in return. You’ll be rewarded for what you give the same way or the reward will come back to you in a different form or time. But you’ll be rewarded nonetheless. 
You might doubt that and I can’t really prove it to you. It’s enough for me to believe what I’ve been blessed with all of my life. I never gave something out and not get that back in a way or another. 

8- Never Stop Practicing!
Again! Never ever stop practicing. If you think you are good enough, you’re wrong. You can be better. Every line you write can be improved. Every program you make can be written in better way. If you have nothing to practice with, this is to me is a lame excuse. Come up with any idea and try to make it true. Keep challenging yourself with more complex ideas. At least go back to things you did earlier and try to improve them. 
Bottom line, if MR. Olympia stops going to the gym, he would never ever step a foot on stage rather than winning again.


Be your own hero! 

I would say at the end but there is no end to this journey. There are moments you’ll feel down, frustrated, or depressed when things don’t go the right way. There are also moments when you accomplish something and know the right meaning of success. Grasp these moments and never let them go. No one will ever feel and taste success but you. So aim higher and never give up. 

“Ah, but a mans reach should exceed his grasp, Or what’s a heaven for!” 
Robert Browning