The only way to learn something new and meaningful is through confusion.
I thought I didn’t have this problem but in the past few weeks here at RC I’ve come to realize I was wrong. I’ve come to realize there’s a good bit of me that doesn’t enjoy being confused or lost. There’s still a part of me that just wants to look at some set of knowledge and get it, understand, & then do cool things, especially when it comes to programming. But learning doesn’t come with ease, at least real knowledge doesn’t. To learn anything worthwhile you have to be confused, you have to accept being lost. A long time ago I thought I made this clear to myself but as I’ve to come to learn a TON of new things here at RC, I realize I’ve still got a while to go.
There is no such thing as a ‘quick learner’
But now that I think about it… Where did this fantasy idea of a ‘quick learner’ come from? Maybe resumes and interview talk where we’re expected to be ‘quick learners’. But there’s no such thing as a quick learner. Don’t get me wrong, I believe people pick things up faster than others but that doesn’t mean they are ‘quick learners’, instead it means people have some sort of supporting, complementary experience that makes the ‘new’ stuff they’re learning not so ‘new’.
When I took French in high school the concept of feminine and masculine nouns wasn’t a very difficult concept for me because I had this sort of experience from speaking Arabic. I never struggled with this part of learning French and the people around me probably thought I was a quick learner or something but that was lie they told themselves and one I probably enjoyed living. Another example of benefitting from complementary experiences is like 2 students, one who was a runner and the other a couch potato, who both decide to join the schools football team. Given that neither of these 2 students have any experience in playing football I’m willing to bet you that the runner will show a lot more potential & ability and might even come across as a ‘natural’..
A ‘quick learner’ is a fictional creature. Someone is either coming into something with a lot of supporting prerequisites or they’re starting fresh and this background is what creates the idea of relative ‘quick learners’.
Tutorials are marketing materials
I think another thing that makes accepting confusion and struggle hard when learning programming is tutorials. I just did the React tutorial the other day, and you know what I thought of React? It thought it was amazing. 2 years ago I went through the Angular tutorial and I also thought Angular was great. I remember when I was learning python, it went something like this.
Go to a terminal and type `python` and then type `1+1`
And then I follow the instructions,
And then a few more hours and they said
Here's how you make a class
See that? No more `public` `static` `void` `int` `float`... Isn't it magical....
Then I’d go on thinking life is going be dandy and magical from here onwards now that I know X but thats not true…
I think tutorials and books have made me think that learning and real world problem solving is supposed to be easy and pleasant… But tutorials and books are made to be digestable. Tutorials are 10x more readable than the real documentation and they carefully hold your hand from start to finish. Thinking real world projects will be as easy as the tutorials is a dangerous fallacy.
- When it comes to learning, if its hard and painful, than you might actually be doing it right
- You bring to the present all the experiences of the past whether conciously or unconciously (this applies to learning and general life experiences)
- When you’re feeling lost and in angst, learn to love it (but maybe in moderation?..) something good is taking place..
* These claims don’t apply to prodigies