Get More From 20 Hours Of Learning Than Most Do From 80!
Learn to learn - maximise the ROI on your investment in learning!
Welcome!
Hi this is John with this week’s Developing Skills - Skills for Developers looking to develop their careers.
If there is a topic you’d like to see covered, please let me know by replying to this email📧
Tip of The Week: Learn To Learn Effectively
“Hey John, we need to build a 3D animation for this page, any idea how we do that?”, Steve asked.
“Do we have a designer who can create it and then give us an animated GIF?” I replied. Steve smiled and said, “No. That wouldn’t work anyway, we need to render some text on it that the user has entered”
I thought for a moment, not sure if this would be possible. Then I opened up Internet Explorer and headed over to the Java website to check out if there was any 3D support in Java, maybe we could build a Java applet that would render the 3D image.
It turned out there was Java 3D had been available for a year! I installed the latest JDK, version 1.1 and got to work building prototype.
The next afternoon I was able to demo a crude version of what we needed. “How did you learn to do that so fast?” asked Mike after the demo.
That’s happened to me a lot throughout my career and the answer is that I’ve continuously optimised my approach to learning. Now I can usually pick up the basics of a new topic very quickly.
So how do I do it?
Firstly I figure out what I need to know. What are the key things I need to learn to achieve the goal of this learning. That often starts with one of more questions I want to answer. The more precise these questions are the clearer the focus of the learning.
I then use these questions to:
Start reading around a topic and identifying what the foundational knowledge for the topic is.
Start positioning the knowledge I have/will acquire within the big picture of the topic - the goal here is to try and avoid becoming the ‘expert beginner’.
I then combine this knowledge with steps that are very similar to the ones Josh Kaufman’s outlined in the book The First 20 Hours, specifically:
Focus exclusively on learning just this one topic for the next 20 hours - don’t try to acquire other new skills at the same time.
Break the knowledge/skill down into smaller parts and acquire them one at a time through this process.
Get the tools I need to acquire the skill.
I tend to be a bit obsessive about learning new things so it’s likely I’ll go all in on the topic immediately, getting through the first 20 hours in 2 to 3 days. That immersion really helps particularly if you’re applying the knowledge as you gain it. Which is why I like to have questions to answer or something to build (i.e. the reason for Coding Challenges).
Do this and you’ll learn more about a subject in 20 intense hours than most people will in 80 hours of unstructured learning.
Three Ways I Can Help You Level Up As A Software Engineer:
I write another newsletter, Coding Challenges that helps you become a better software engineer through coding challenges that build real applications.
I have a course on building your personal brand on LinkedIn, it explains how I’ve built an audience over over 180,000 on LinkedIn and changed my life.
I run a YouTube channel sharing advice on software engineering.
Yes, the Pareto principle - applied to learning.
I like to do quick learning, then decide on an implementation direction, try it out, see if it works, then decide whether to continue or jump into another direction. I aim to get faster feedback.
Best learning is learning by doing. Making a Sandbox Project, iterating quickly.