How to boost your learning capabilities as a Developer?

Mhmd Salem Alhjaj
Sep 7, 2018 · 4 min read

Try to learn something about everything and everything about something

This say is so true when it comes to learning especially if you’re in the tech sector because every day there is a new technology, the amount of things to learn is so huge and most of the time you feel that you’re in a race that you’ll never win at the end and that's a fact .

Actually, if you think that you can learn everything you are so wrong you’ll never can but you can overcome that fact by trying to learn the concepts rather than the technology itself because most of the new technologies are the same

Take the programming languages for example, there is a ton of them and you should be true to yourself you’ll never grasp all of them , You need to learn the features, the concepts and the paradigms that these languages provide to you so that the next time you need to start a project you can choose which one based on the paradigm and features that the language provides and how much it fits your needs not based on how cool they are.

So How to boost your learning capabilities and learn a lot of things in no time?

These two methods I’ll tell you about are my way of learning, Honestly I’ve learned a lot by applying them.

Depend Upon Abstraction over Implementations

Juice, juice is temporary, you know. Anyone can obtain the juice or something. I mean, “Oh, man, he got the juice,” you know, it’s something that kind of comes and goes. But the sauce, the sauce is forever — [Gino Russ]

When you learn a lot of implementations you are learning the juice which is temporary but if you learn the sauce [the concept] you had the knowledge to switch between implementations so easily and that's in my opinion is the only way that you can learn a lot in no time

For example : when I’ve started learning languages I’ve started with java but then I realized I need to learn other languages so that I can overcome my knowledge shortage and there when I’ve gone down the Rabbit Hole , I’ve stuck for a year switching between languages and guess what I didn't catch all of them and then I thought why not applying some programming principles to my life , so I started with the process .

Dependency Inversion principle: Depend upon abstractions. Do not depend upon concrete classes.

Learn by doing not by reading only

To be a human is to be a toolmaker, first and foremost. Any human who is not a toolmaker is missing out on a significant area of human learning. And it isn’t just the making of tools that matters.

Many people make the mistake in assuming that because they have read a book about something, then they have actually learned it. While I think reading is probably one of the most profitable habits you can create for yourself, the truth is, reading doesn’t actually teach you very much. Reading creates ideas and opportunities, but it is the action that flows from these opportunities that create true learning.

Someone who has read one book and tested and applied all the concepts in the book would have learned far more than someone who has simply read every book on the planet but failed to try to do anything. When you understand the distinction here you will also understand why you see people who have read tons of books of their bookstore and still don’t seem like they have learned anything than when they’ve started.

The truth is you aren’t learning anything reading this article right now and you won’t learn anything from any article I write in the future. All these articles can do is to give you ideas, tools, and techniques to help guide and direct your learning. It is the doing that will actually facilitate it.

So my suggestion is to pick an idea and start a project on your own and try to apply all the things you want to learn gradually in that project

At first, you’ll feel lost but after two to three weeks you’ll start to see the benefits, The key is to keep that project rolling and not give up on it once you’ve learned the technology start switching technologies by upgrading

For example: start with no virtualization then add vagrant and start deploying on vagrant after that switch to docker then kubernets and so on.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade