Recently I was asked what has changed the most in my 35+ years of working with technology. I replied “The pace of change”. When I started on mainframes, we sometimes had up to five-year development cycles. That meant we had time to more fully explore the technology we were implementing, and users had more time to work with it.
That’s no longer the case. Rather than a fixed-date release of new technology further in the future, the push is to release faster, using the latest paradigm or supporting technology.
I won’t debate the wisdom of this pace, or whether it’s better or worse on either the inventors or the users. The fact is, changes in technology happen quickly, and the breadth of technology released is wide. The result is that we are often asked to learn more new things, and learn them faster. No sooner do you learn one paradigm than you’re asked to learn new one that is touted to be better. You learn one programming language or framework, and before you have time to become an expert, you’re required to learn another.
I’ve been a life-long learner, and when I started, I had two sources for learning: The public library, and attending a class. I still use both of these today, but more and more options are available to get information and experiment with it. Over the years, I’ve been asked to learn things and implement it in a very short period of time. I’ve learned various skills and process to do this and synthesized my own patterns that I will share with you here.
Note: Learning something deeply is a process that takes time. You can use this process to learn things quickly, but becoming an expert is something that takes absorption, practice, correction, memorization and experience (while I am capable of learning things quickly, I will not call myself an expert in those things). To truly “own” a subject you need to spend time with it in an effective, deterministic pattern. Tools like “Bootcamps” can be a great start on your learning journey, but they don’t make you an expert.
The Commitment of Learning Fast
There’s no such thing as “pain-free learning”. Learning is hard, and humans don’t generally like doing hard things. So you need three primary ingredients to ensure that you’ll be effective in this process. You have to be committed to the process – or you’ll get sidetracked easily and give up when it gets difficult.
It has to be important
If you have to learn something quickly, it needs to be something you either care about, are afraid not to learn, or some other impetus to ensure that there’s external, and even better, internal pressure.
One of the best ways to do this has been empirically proven is to commit to teaching the topic, or at least to explain it to someone else. You’ll create a sense of urgency and pressure that you have to get up and demonstrate your knowledge. Not only that, teaching a topic you don’t currently know has other benefits I’ll explain later.
You need to focus
To learn your important topic, you need time set aside where you can study it in a concentrated way, without being interrupted. Learning fast requires spending blocks of time on only that topic. Jumping from the learning to answer a phone, check an e-mail or even breaking for lunch is very counter-productive. Even with this concentration, your mind can only absorb so much information before it moves from awareness to understanding, so more, shorter blocks are better than “cramming” the information into a single longer block. I find 2-3 hours works for me, several times throughout the day or week.
With your topic defined, it’s importance established, and time set aside to focus, jump in to every part of the topic, talk about the topic, read about the topic, and discuss the topic with as many people will listen to you. The more you surround yourself with the topic, the more parts of your brain are used to learn about it.
The Mechanics of Learning Fast
You’re ready to start your learning. The two keys for learning quickly are to understand the Concepts, Processes, and Technologies or Skills (or both) associated with your topic.
Start with learning the concepts of your topic. To do this, take your topic, find as many reputable, authoritative resources (web sites, videos, books, experts, classes, etc.) as you can and then develop a “Neural Network”.
You can do this with paper and pencil, but I use a tool called “TheBrain” – (they have a pay-for and a free version). Regardless of what tool you use, you’re creating a “Mind Map”, which is a tool for associating thoughts – the way your mind works naturally.
You first make a shape with the topic name in it:
Then you connect that shape to another showing that they are related:
The tool I’m using allows me to type in text, add links, show my sources, and easily move the lines if I don’t like how they lay out.
Note that it’s OK to get it wrong, or to differ in how you lay out your Mind Map from the way someone else does. Re-arranging our associations is something we do in learning every day. You might not, for instance, put “Logic” as a “Math”, as I have done here – that’s fine, put it where it makes sense to you, and then as you learn more, move it to the right place. The key is that as you are diving in to the topic, you’re creating your map. I call this “Reading with a pencil”, since I’m always taking notes on what I am reading.
With the “big rocks” of the concepts laid in with their relationships, most often there are sequential processes you need to follow to put them to use. Here I switch to an outline from a mind-map, since outlines are hierarchical in nature and better suited to processes. I am a fan of OneNote for outlining information, although TheBrain has sections for outlines, or you can just use pencil and paper.
It’s important to note at this stage that both the Concepts and the Processes are evolutionary – for instance, in the topic I’m using as an example (Data Science), there is a process called the “Team Data Science Process” which has various phases, tools, techniques, skills and personnel that are involved in bringning a Data Science project to completion. This will create more Concepts, more sub-Processes and more Technologies and Skills to your documentation. That’s OK – just re-visit your Mind Map and your Outlines and update them.
Technologies and Skills
Lastly, research sand study the Technologies and Skills you need to know within the topic area you’ve chosen. Start at the top Concept, and work your way down through the associated Concepts, and identify the skills you need for each. The best way to do this is to think of hands-on exercises backed by a real problem, and most of the time there are tutorials out there that will help you dive in. Don’t try and become an expert at this point – just get it working, and remember: failure is your friend. When it works, you haven’t learned much – when it fails, it forces you to go deeper. Once it works, move on – you’re moving quickly at this point.
I find that good “cheetsheets” are helpful in pinpointing what I know and don’t know, and provide a handy lexicon in what is really important in a skill. Almost all skills have these, and you can find authoritative ones online with a little searching.
Be ready to drop, be ready to go deeper
In this new world of fast-paced learning, you’ll often find that you have to “throw away” what you’ve learned, meaning that a new language or tool is out now that requires your attention, and you won’t return to the one you know now. That doesn’t mean your hard study was wasted, because you’ll often find that new technology builds on the one you just learned, but I find that Type-A technologists are loath to drop something they just learned. You’ll have to get over that – it’s the way it is.
However, it can be true that once you learn something, it may be in an area that you just had to come up to speed on quickly, or it has “staying power” and will be around for a while. In that case, take this same process, and repeat all the steps, taking time to fill in the gaps and go much deeper in the areas you didn’t spend time on during your speed learning.
Let’s now return to that pressure-tactic I told you about earlier: teaching someone else the topic. Not only is it a good forcing-function to make you learn, it also helps you boil down the Concepts, Process and Skills in the topic into a short time period using your own words. There’s actually a practical example of this. Medical Nurses use a process called “see one, do one, teach one” meaning they see a medical procedure, then they do it, then they teach someone else how to do it.
For a technologist, this style of learning never ends. Even if you don’t implement the topics, the process of learning things quickly can be an invaluable tool in your life.