Project Euler and the Key to Learn any Skill

It’s been a week since I started the challenge. For the last 2 days, a website called Project Euler is keeping me busy. Using the tools I acquired in starting lectures I tried to solve some of the problems on Project Euler.  I was able to solve problem number 1,2,5,6,7,8,9,10. I noticed that the major part of learning occurs by solving actual problems rather that passively watching the lectures. I realized that I’m still not comfortable with using arrays, strings, pointers and memory allocation. The concept of loops and conditions is much clearer now.

#This month’s sub-goal is to read and learn more about arrays, memory allocation, pointers and strings.

Along with the challenge I’m also reading a book called “Mastery” by Robert Greene. According to the book the process of skill acquisition occurs in the following way:-

It is essential that you begin with one skill that you can master, and that serves as a foundation for acquiring others. You must avoid at all cost the idea that you can manage learning several skills at a time. You need to develop your powers of concentration, and understand that trying to multitask will be the death of the process.

The initial stages of learning a skill invariably involve tedium. Yet rather than avoiding this inevitable tedium, you must accept and embrace it. The pain and boredom we experience in the initial stage of learning a skill toughens our minds, much like physical exercise. Too many people believe that everything must be pleasurable in life, which makes them constantly search for distractions and short-circuits the learning process. The pain is a kind of challenge your mind presents—will you learn how to focus and move past the boredom, or like a child will you succumb to the need for immediate pleasure and distraction? Much as with physical exercise, you can even get a kind of perverse pleasure out of this pain, knowing the benefits it will bring you. In any event, you must meet any boredom head-on and not try to avoid or repress it. Throughout your life you will encounter tedious situations, and you must cultivate the ability to handle them with discipline.

In practicing a skill in the initial stages, something happens neurologically to the brain that is important for you to understand. When you start something new, a large number of neurons in the frontal cortex (the higher, more conscious command area of the brain) are recruited and become active, helping you in the learning process. The brain has to deal with a large amount of new information, and this would be stressful and overwhelming if only a limited part of the brain were used to handle it. The frontal cortex even expands in size in this initial phase, as we focus hard on the task. But once something is repeated often enough, it becomes hardwired and automatic, and the neural pathways for this skill are delegated to other parts of the brain, farther down the cortex. Those neurons in the frontal cortex that we needed in the initial stages are now freed up to help in learning something else, and the area goes back to its normal size.

This process of hardwiring cannot occur if you are constantly distracted, moving from one task to another. In such a case, the neural pathways dedicated to this skill never get established; what you learn is too tenuous to remain rooted in the brain. It is better to dedicate two or three hours of intense focus to a skill than to spend eight hours of diffused concentration on it. You want to be as immediately present to what you are doing as possible. Once an action becomes automatic, you now have the mental space to observe yourself as you practice. You must use this distance to take note of your weaknesses or flaws that need correction—to analyze yourself. It helps also to gain as much feedback as possible from others, to have standards against which you can measure your progress so that you are aware of how far you have to go.

People who do not practice and learn new skills never gain a proper sense of proportion or self-criticism. They think they can achieve anything without effort and have little contact with reality. Trying something over and over again grounds you in reality, making you deeply aware of your inadequacies and of what you can accomplish with more work and effort. If you take this far enough, you will naturally enter the cycle of accelerated returns: As you learn and gain skills you can begin to vary what you do, finding nuances that you can develop in the work, so that it becomes more interesting. As elements become more automatic your mind is not exhausted by the effort and you can practice harder, which in turn brings greater skill and more pleasure. You can look for challenges, new areas to conquer, keeping your interest at a high level. As the cycle accelerates, you can reach a point where your mind is totally absorbed in the practice, entering a kind of flow in which everything else is blocked out. You become one with the tool or instrument or thing you are studying. Your skill is not something that can be put into words; it is embedded in your body and nervous system—it becomes tacit knowledge. Learning any kind of skill deeply prepares you for mastery. The sensation of flow and of being a part of the instrument is a precursor to the great pleasures that mastery can bring.

In essence, when you practice and develop any skill you transform yourself in the process. You reveal to yourself new capabilities that were previously latent, that are exposed as you progress. You develop emotionally. Your sense of pleasure becomes redefined. What offers immediate pleasure comes to seem like a distraction, an empty entertainment to help pass the time. Real pleasure comes from overcoming challenges, feeling confidence in your abilities, gaining fluency in skills, and experiencing the power this brings. You develop patience. Boredom no longer signals the need for distraction, but rather the need for new challenges to conquer.

Although it might seem that the time necessary to master the requisite skills and attain a level of expertise would depend on the field and your own talent level, those who have researched the subject repeatedly come up with the number of 10,000 hours. This seems to be the amount of quality practice time that is needed for someone to reach a high level of skill and it applies to composers, chess players, writers, and athletes, among others. This number has an almost magical or mystical resonance to it. It means that so much practice time—no matter the person or the field—leads to a qualitative change in the human brain. The mind has learned to organize and structure large amounts of information. With all of this tacit knowledge, it can now become creative and playful with it. Although the number of hours might seem high, it generally adds up to seven to ten years of sustained, solid practice—roughly the period of a traditional apprenticeship. In other words, concentrated practice over time cannot fail but produce results.

As I proceed with CS50x the concepts which are troubling me right now will become more clear. I’d be able to solve more problems on Project Euler.  The algorithms which I develop right now takes too much memory and time. Some programs took almost 10-15 mins to compile. I’ve got to make them more efficient in the coming weeks.

About these ads

One thought on “Project Euler and the Key to Learn any Skill

  1. That’s a pretty inspiring post. I often find that I spread myself between a lot of stuff and because of that I don’t master much. But I remember talking to someone who said that every year they find one thing and focus on it for the whole year. It’s supposed to be a pretty productive way to learn.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s