How I learn
I published in a recent newsletter how I learn. Today, it’s moving from the secret labs to the open space.
Some time ago I wrote about the 3 most common learning mistakes developers make. Today, I’d like to share how I learn new technology.
In my early days, pre-internet, it was a mix of following book instructions and dabbling around with the computer. But that’s not effective, and it gladly changed over time and got way better. But how do I do it now?
The first and most important thing is, I need a reason to learn it. A compelling reason. It sounds so simple, but often people forget it, me too. Unfortunately, when I do not have a reason, I struggle, it’s not fast and productive anymore, or I procrastinate until I have no interest in it anymore.
The reason can be so simple like curiosity or so complex like building a whole working project with it. It just must be compelling for me.
After I decided which sample app to build and thus the scope, I start collecting resources for accomplishing that task. In case of a new language, I usually start with the basic syntax, what the purpose of the language is and move to file input/output, DB access and such things. It depends on my reason and goal.
In the next step, I start creating my sample application and learn by doing. Which is a cycle of reading, applying what I read, reflecting it, refactoring my code and some playtime. Also, I move from back to front with the create and retrieve part of CRUD first. When I’ve finished the sample app, I start building my actual project; most of the time I have an application in mind I want to build with X.
When I am done so far, I start to write an article about it, mostly for my own understanding. If I can explain it, I have understood it. If I can’t explain a particular thing, I revise it until I can. However, not all of those go public.
I hope you can take a few things out of it and progress with your own learning style.
How do you learn?
comments powered by Disqus