Thoughts on learning

Nov 24, 2016 00:00 · 1028 words · 5 minutes read life learning

The capacity to learn is a gift; The ability to learn is a skill; The willingness to learn is a choice. - Brian Herbert


So you’ve watched the replays of the Olympics and you feel inspired to swim the butterfly. Or perhaps you want to be able to code- it’s one of those things you’ve wanted to do. Or maybe you are struggling with some bad-ass complicated goobledook math that you need to understand so that you can ace that exam.

The truth is that learning new things is quite challenging. Learning in itself is a skill. For the purpose of our discussion, we will use Math and Programming as a basis of our discussion(Feel free to substitute this with any other skill if it makes you more comfortable).

Learning Actively

There’s too much information in this world of ours. This “too much information” has perhaps made us passive interactors with some of the information we receive. Some of the things we come across appear to be too complex(or too tedious) to be worth learning. A huge “mistake” [in my opinion] that I see most people do is that they are passive in their learning. Let me put this in context: most people would prefer copy-pasting some piece of code rather than type it themselves. That calculus[yes calculus; the exponent e is a friend :) ] engineering undergrads quite often come across and complain about? These people just scheme through it and barely understand it on the surface.

What am I driving at here?

Learn by doing

To get good or have an understanding of stuff you are doing, you have to get your hands dirty. It’s just not merely enough to go through the class text, or read some tutorial online(or do some quick research on some search engine. You get the point). Sit down and work out the examples, don’t just go through them. Ask yourself questions. Try to figure out why whatever your doing is cool(you can use a search engine for this).


Do you remember that one kid in your class who just answered all those really tough questions in say, algebra, that us mere mortals found impossible? Or that one ninja who could spew some miraculous piece of code that worked, yet no mere sane mortal could understand what was happening( Duffy’s device some weird C code)? All these people have one thing in common: they got so good(i.e. they were fluent) at their skill, that some of their genius-level magic is normal in their head.


So how do you become fluent at something. Well… By repetition. That math kid, well, he probably did shit loads of problems before he got there. That computer whiz, he is probably sitting behind a computer right now doing some really neat things on some editor. This idea of fluency might seem counter-intuitive to most of us. The reason for this is because most of us have been brought up in a society that values _“understanding” and “comprehension” in the Learning Process. “Understanding” and “comprehension” breeds an illusion of competence- a false understanding that just because we understand something, we are competent it.

Fluency in a skill is achieved by repetition- doing something so many times until it kinda becomes second nature. Sometimes, you understanding a concept comes after gaining some bit of fluency. For example, I understood what the curl of a vector field means after gaining some fluency in vector calculus. I did so much front-end web dev getting into GULP and GRUNT(some really useful web frameworks) was easy.

Being Selective

In order to learn something, you do not have to go through everything regarding that something. Do not even plan to learn the entirety of that whole skill set in one go. Instead, be selective. Very selective.

On selectiveness, choose to learn that specific element of that skill that is most important i.e. without it, you cannot do that skill. This approach to learning save you alot of time. As an example, let’s imagine for a moment that you want to build a static front-end website. In this case, you do not need to learn back-end(server-side) frame-works and languages. You’d stick to HTML, CSS, javascript and any other related technologies. Conversely, if you are working with the kernel or microcontrollers, learning C is a goodoint to begin the learning process.

Sharing what you learn[or your work]

You should share stuff you learn to other ninjas out there.

People’s feedback is good for you. Negative feedback will serve as a pointer to show what to work and improve on. Positive feedback will encourage you to learn more. Also, sharing your stuff with other ninjas will expose you to other ninjas who do similar stuff.


I am an advocate of sharing your stuff(moreso in online platforms). Here are some of the the places you can share your content(This is not an exhaustive list):

  1. Videos: YouTube, Vimeo
  2. Graphic Work: Behance
  3. Code: BitBucket, GitHub
  4. Knowledge: Quora, StackExchange, StackOverflow
  5. Music/ Sounds: SoundCloud

Looking For Help

The trick to most of the skills we want to learn is not always in working hard(or as some people say smart), but in getting yourself unstuck when you get stuck. It really does not matter what it is you are doing; Most of us, at one point of our lives get stuck. For some, it is at this point that we quit.

How do you get yourself unstuck?


One really cool way to ask for questions is by going to people you know. If those cannot help, go online. Chances are someone somewhere online faced your problem. Perhaps his/ her solution will work for you.


Learning can be hard. It can be hard because we really do not know how to go about it in the right way. I hope I have implanted some really cool ideas on how to approach learning. You learning in a better way will help you understand some of the things I plan to write about(computing, some design manenos and technology etc).


[1] Steal Like An Artist by Austic Kleon
[2] Learning How To learn - A course on Coursera
[3] MASTERY- Illustrative photography by Ian Macharia