If you are going to learn something new, don’t scim through it. Learn everything you can about the subject hard and easy. Once you fully understand the subject you can elevate that knowledge to higher levels. Never be picky when it comes to learning. You might not realize what you overlooked was cricial to learn.
I was studying a transcript of an interview between Remy DeCausemaker an open source research coordinator and Kyle Simpson an open web evangelist who strongly uses and teaches JavaScript. He is the author of a book series called “You don’t know JS”. Simpson states that those who’ve learned JavaScript learned it incompletely and improperly.
“I’m an open web evangelist who teaches JavaScript for a living. I work with developers all the time who’ve learned JS incompletely and improperly, and they’re having to fight hard against the grain to re-learn it” (Kyle Simpson).
“I believe JavaScript takes time to learn properly and completely, and that if you’re going to write it, then you should invest that effort. You should understand why the code that you write works the way that it works” (Kyle Simpson).
What he could be suggesting is that JS developers learn only enough about JS to enable them to work with the language but not to fully master it. In otherwords, they learn only what is needed to complete a task.
He makes another strong statement regarding what his book series attempts to do. “My books are the opposite. They’re the anti-“The Good Parts.” That doesn’t mean they’re the bad parts, it means they’re all the parts. Rather than avoiding most of the language because one guy said to—rather than running away from the hard parts—I encourage you to run towards “the tough parts” and learn them” (Kyle Simpson).
The reason this article stood out to me relates to the approach I am using when it comes to editing text files on my Debian and Mint based Linux systems. I have developed a habit of learning why my changes worked beyond the fact that they do work. I must know everything about every piece of code, character, comment, spacing, everything. I must know the meaning of the code. However, the more I want to learn, the longer it takes me to move on to the next code. I felt time was not on my side. I had to learn fast. According to Kyle Simpson, this was not the way to learn.
“When you see something in JS that you don’t understand or is confusing, instead of blaming the language as being poorly designed, turn your attention toward your own lack of understanding, and spend the effort to increase your understanding” (Kyle Simpson).
Kyle is saying that it is a must to spend the effort that is required to learn that which is hard. Do not run away from it but to face it. Spend as much time as it takes to understand it. Perhaps the beauty of acquiring skill is not how quickly you were able to gain it but how long it took you to gain it.
I can go on, but what I am concluding is that perhaps great wonders lie in what seems too difficult to handle. Really give it your all in any area of expertise. Let all the knowledge poor in. It might take a long time to master it. That is ok. The more time I spent operating my Linux systems through the terminal, the better and more confident I became at it. I am not looking to compete with anyone. My goal is to learn all I can about it. Whatever you are learning, JS, bash scripting, PHP, Linux, take as much time as you need to learn it from top to bottom. This is hard enough.
References:
Remy DeCausemaker(2014). You don’t know JS, but you should.http://opensource.com/life/14/11/talk-kyle-simpson-javascript-expert