Skip to main content

How We Learn

Have you ever stopped to think about how we learn things?

My 15-year old is learning to drive, and I have the unenviable job of teaching him. While watching him tonight, I noticed that he has to think about every little detail of what he's doing. He needs to be reminded to check his mirrors, signal his lane changes, look behind him when backing up. Learning to drive requires his absolute and complete attention. He doesn't even have the spare mental capacity to listen to music.

Watching him struggle reminded me of something I learned many years ago about how we learn new things. Regardless of what we are learning -- whether it's driving, putting up drywall, or learning a new programming language -- we all go through four stages of learning. You could think of them as the four steps of mastery. They are:

  1. Unconscious incompetence: You don't know what you don't know
  2. Conscious incompetence: You understand what you don't know and want to learn
  3. Conscious competence: You start to understand, with effort
  4. Unconscious competence: You internalize your understanding and no longer have to thing about it. You just "get it."

In my son's case, step 1 occurred when he realized he wanted to drive, but had no idea what that entails. This is the stage where every little detail needs to be explained. Progress is slow, but as long as he has enthusiasm for the subject, we move forward.

Likewise, you may decide that you want to learn mobile app development, but don't know where to begin. This is Step 1, Unconscious Incompetence. You may not even know what technologies are available to help you. But you're excited about a new idea you had that will change the world.

So you do some research, read some online blogs, talk to friends and colleagues, and perhaps pick a place to start. You understand pretty well that there is much you still have to learn. You at least know what you don't know, and have now reached Step 2, or Conscious Incompetence. This is the prime learning stage. You read more specific articles, maybe take some classes, or watch training videos.

If you're like most people, this isn't quite enough. You have begun to understand the material on an intellectual level. Now you need to practice, apply what you've learned. After doing this awhile, you finally reach Step 3, or Conscious Competence. Your skills are improving, but you aren't completely comfortable yet. This is the time when you slowly become accustomed to the new skill, but still occasionally need to appeal to your local experts, refer to reference material, or post to Stack Overflow.

As you continue to practice and apply your knowledge, eventually you'll discover that you no longer need to look up the syntax of an obscure feature or the parameters of troublesome functions. You may also realize that you are answering more questions than you're asking. Congratulations. You've reached Step 4, Unconscious Competence, the ultimate pinnacle of mastery.

Depending on the subject, you may be satisfied to stop at step 3. It may not be possible to go further. That's OK. It isn't necessary or even desirable to master every subject or every skill.

You may have noticed that I haven't said anything about the time this takes. That depends on many factors: your personal or professional interest the subject, the time you have to spend on this compared to other demands, or how well you have learned to learn. That's right, you go through these same steps even when learning to learn.

What should you take away from this? Keep these steps in mind the next time you start to learn a new skill. And in the meantime, practice your learning. Pick a topic. Study it. Pay attention to the steps you go through.

In a future post, I will discuss how these same steps can apply from a different perspective: that of a teacher. I will show how the teacher's approach has to change, according to which step the student is on.

But first I need to help my son get his driver's license.

Continue to the second post in this series.


Popular posts from this blog

How to copy your Frozen Free Fall progress to a new phone

It's happened to all of us. You are about to get a branch new smartphone, when it hits you. You're on level 250 of Frozen Free Fall. If you get a new phone, you'll lose all of that progress! Ok, admittedly this isn't the most pressing problem of our time, but it's annoying. So today I decided to do something about it.

I have a Samsung Galaxy S4 (Android), and just received an iPhone 5c. Before you bash me on my phone choice, let me explain that the iPhone is provided by my employer at no cost to me. Now you may proceed to bash me for putting games on my work phone. 
First step: Frozen Free Fall had already been installed on both devices. Next, using the Astro File Manager on my Galaxy, I searched and found the Frozen game save stored in /storage/sdcard0/Android/data/com.disney.frozensaga_goo/files/user.dat. I imagine it will be in the same location on any Android phone. If not, just look for user.dat in a folder with a similar name. So, using a USB cable and the A…

Ionic vs. Bootstrap - for a Web App

Ionic 1.x vs Bootstrap 3.x for a Web AppI was recently asked at work to come up with a comparison between Ionic Framework and a more traditional Angular/Bootstrap combination to create a web app. The application will primarily be used in a desktop web browser (probably Chrome or IE). There are also some use cases where it will be accessed from Safari on an iPad. However, this is purely a web; there are no plans to install the app onto the iPad as a hybrid app. Thus, recommending Ionic to build the UI hadn't occurred to me until the request was made.

This is even more surprising in that I recently published a Pluralsight course on Ionic Framework 1. It should have been the first thing that crossed my mind.
One constraint is that currently only Angular 1.x and Bootstrap 3 are authorized web technologies. Ionic 1.3 was recently approved, but not Ionic 2, Angular 2, or TypeScript yet.
Given those constraints, herein is my attempt at coming up with reasons to use (or not to use) Ionic…

Ionic + StencilJS = Slot Machine

Ionic + StencilHi, this is Mike Callaghan, and today I want to make a simple slot machine. This is a follow up to my recent video on creating my very first stencil web component. In that video, I added the component to an existing ionic app, but I really glossed over how that happens.
Today I'm going to go through the steps necessary to take an existing StencilJS web component, and create a working mobile app from scratch with the Ionic Framework that uses three instances of that component. The StencilJS componentLet's start with the web component. I created it a few weeks ago to see how to get CSS 3D animation working with Stencil. My goal was to create a component I could use multiple times on a page, without the component needing to know or care what the images are that it's animating, or how many there are. All of that is determined dynamically. Show the github repoI'm not going to go through the code here at all. Here is the public GitHub repo if you want to check t…