A I wind down my blog series on software developers learning, I present some practical ideas to help you improve your learning:
Cultivate a healthy set of attitudes: take responsibility for your learning.
Learn one programming language per year. (This is excellent advice in The Pragmatic Programmer that is still very valid today.)
Scratch an itch! (What are you curious about? Consider something “leftfield”, not programming-related. Ensure that at all times you have something you're learning about that isn't directly related to your day job).
Read at least one book every two months (Read more if you want, but set some kind of benchmark to aim for).
Look after your learning machine – get good nutrition, and plenty of rest. Avoid stress. Have fun!
Build mental maps as you learn.
Try to use both sides of your brain.
Perform deliberate practice & exercise as you learn.
Network: actively learn from others, and seek to teach/mentor others.
Enjoy learning. This stuff is fun.
Apply any new knowledge cautiously.
You have to take responsibility for your own learning. It's not up to your employer, your state education system, an assigned mentor, or any other person.
You are in charge of your own learning. It's important to continually improve your skills to improve as a developer. And to do that you have to learn to learn. To make it rewarding you have to learn to love doing it.
Learn to live to love to learn.
Questions to ponder
When were you last in a situation that required learning?
How did you approach it?
How successful were you?
How quickly did you learn?
How could you have performed better?
Did you learn, then work, or learn as you worked?
Which do you think is most effective?