Early in the life of this blog, I wrote about practice and talent. In it, I mention the now very commonly known idea that it takes 10,000 hours of deliberate practice to become an expert in something.
In the years since, I was part of the Thousander Club, which was started by Scott Hsu-Storaker after he read that post. The idea was to practice some skill for 1,000 hours in a year, which meant practicing roughly 3 hours a day. With a day job and a vague skill, I fell woefully short over the years, but it was a good experience to track just how much time I was spending on something that I thought was important enough to learn.
Still, 3 hours a day is a lot of time for people, especially people who are new parents or otherwise have a lot of demands. It’s easy to feel spread thin.
Plus, you don’t necessarily want to be an expert in something. You might just want to learn enough to have fun. Playing guitar, skillfully playing StarCraft, and drawing realistic portraits? You can learn any of these things enough to enjoy it, and maybe that’s enough. You aren’t necessarily interested in joining a band as lead guitarist. You may just want to be able to play love songs to your significant other without them sounding terrible.
In this Tedx talk from last year, Kaufman says his research tells us that to learn something, it takes 20 hours to get past the fear of feeling incompetent.
Merely doing something for 20 hours isn’t enough. It’s like the idea that practice doesn’t make perfect. Perfect practice makes perfect. You have to do it in a deliberate way to learn in an accelerated manner.
There is a method. He says that there are four steps:
- Deconstruct the skill. What do you actually want? Practice those first.
- Learn enough to self-correct. Don’t procrastinate by reading books or websites. Get to the point where you can practice.
- Remove barriers and distractions to practice.
- Practice at least 20 hours.
Last month, I dedicated myself to learning Android app development, and to start, I thought I’d pull up the Android Developer resource, but it was quickly clear to me that the docs were not updated along with the tools. It was like the instructions said, “To learn how to drive a car, first put your key in the ignition, then…draft behind the pole position before overtaking” with no mention of the basics of how to accelerate or brake. I don’t know if there was an expectation that I knew how to load specific resources in Eclipse considering I just learned that loading resources was a thing, but that’s how it felt. The Getting Started pages seem to have gaps if you treat them as a tutorial.
So I found Programming Mobile Applications for Android Handheld Systems on Coursera. Rather than take the actual course, I watched the videos. Partway through, I knew enough about what Android apps could do to be dangerous, but I watched all the way through the videos before allowing myself to do much development myself.
While I am glad the course is offered and that I could get this insight, I could have started practicing earlier. You don’t learn from watching videos. You learn from doing. By not taking action, and deluding myself that I was still learning, I was merely procrastinating.
It’s daunting to start something new. I already know how to make games for GNU/Linux, and yet Android seemed to be a different beast altogether. How long was I going to have to go through the steps of learning everything I needed to learn before I was capable of delivering games to Android users?
The good news is that I am not starting from scratch. I already know how to do so software development fairly well (hey, Self from 2006! You did good in practicing all these years!). Also, Android development is less about learning how to program and more about understanding what capabilities are available and what deployment procedures there are.
But once I started applying what I supposedly learned, then I was really learning. And once you get past that initial frustration with how ignorant you are, once you get a little confidence in your abilities, you can start enjoying the process.