For me I prefer to follow the (70%, 20%, 10%) rule. Here it is.
70% of your learning experience should come from doing the code yourself. Code, code and code, never stop coding. Every time you code you get new errors, go dig for the reasons and solve the issues. With time you will have a wide circle of experience and knowledge in your mind that can never be forgotten. This is the most important part. I am not joking, you need to do much hard work and remember, no pain, no gain.
20% of your learning experience should come from an expert. You need to find an expert in the programming language that you strive to learn from (in the area that you need to learn). My own advice is to have more than one expert.
The first one should be one whose experience is closer to you but still has more experience than you, this dude should be able to know how to bring you from what you are now to what he is now in simple ways. Since was previously in your place not so long ago and knows all the current paths, options and area's that you can develop. And you can learn from him by just looking at how he works.
The second one should be one with much more experience than you (say by 10, 15 or 20 years if you can find one). This guru should be able to energize your passion towards programming and be able to show you the bigger picture of the story. And he will be the best one to influence your journey and provide you the best advise. Don't forget that this guru knows programming history or at least since you were born.
The Third one should be one with experience in another programming language than the one that you are learning. This man will show you the other side of the world that you should know. You should not put all your focus on one programming language only. It might be a great one but you should know that other technologies sometimes are better in specific systems and scenarios. And you need to know what those specific times are.
Don't forget all the 3 gentlemen above should not provide you more than 20% of your learning knowledge.
10% of your learning experience should come from reading. Read books, read the language specifications. I advise you to start with the official books. You can also read articles and of course experts discussions in the online communities.
I hope that will provide you a glance.
16 Comments
Join the conversation! Your thoughts help the community grow.
Sign in to leave a comment.

Santhakumar MunuswamyPosted Aug 18, 2015, 2:36 PM
Good one
Sam HobbsPosted Aug 17, 2015, 4:27 PM
I wish the young developers could understand that SQL databases are not as impractical as many of the No SQL database enthusiasts think. I think that part of the learning experience is learning that new things go through a phase where their value is usually exagerated.
Mahesh ChandPosted Aug 17, 2015, 3:52 PM
And Yes. Programming is a life long learning discipline. If someone does not like to read and learn, they should now do programming.
Mahesh ChandPosted Aug 17, 2015, 3:51 PM
This is great advice. I highly recommend learning 5-10% from events and networking. You learn much more from different people who are outside of your circle and know new things. Many developers live in their own little world and know their own little area as the expertise but there is so much out there and you wont know it until you go meet people and attend events etc.
Sam HobbsPosted Aug 17, 2015, 3:31 PM
When I joined the United States Army they taught us COBOL programming for two weeks, then sent us out to our assignment. That is all the training they provided, two weeks. That was about 40 years ago, I do not know if the training is now more extensive.
RakeshPosted Aug 17, 2015, 10:21 AM
Good point
Pankaj Kumar ChoudharyPosted Aug 17, 2015, 9:51 AM
Nice content....
Karthikeyan KPosted Aug 17, 2015, 6:00 AM
Thanks for nice article
Edrick LomibaoPosted Aug 17, 2015, 4:45 AM
NIce Article
Mohammed IbrahimPosted Aug 17, 2015, 4:40 AM
nice
Gopi ChandPosted Aug 17, 2015, 4:21 AM
Good approach towards learning :)
Nilesh JadavPosted Aug 17, 2015, 4:20 AM
Indeed that is :0
Sibeesh VenuPosted Aug 17, 2015, 4:10 AM
Nice Share. Thank you.
Sumit JoshiPosted Aug 17, 2015, 3:49 AM
correct..
Rajeesh MenothPosted Aug 17, 2015, 3:35 AM
Thank you for Sharing
Vaikesh K PPosted Aug 17, 2015, 3:20 AM
Nice thought :)