How to become a Javascript Ninja


Since many days, I have been trying to upgrade my JavaScript (JS) skills and have read through a massive amount of articles on internet. I found out that even if most of the tutorials on web offer a decent structure and content but they do not provide the JS developer a goal or a path to the ultimate expertise and leave him on his own to explore the depths by just scratching the surface.

I think the way to achieve this is through combination of online reading and book reading both. I cannot guarantee a specific time duration to achieve this as it depends on self motivation, understanding and real life programming experience.

Step 1: Explore the tip of iceberg (origins)

  1. Read first three chapters of Professional JavaScript for Web Developers (3rd Edition) by Nicholas C. Zakas
  2. Quickly brush up your rusty JS using JS one page cheat-sheet.

Step 2: Jump into the sea

  1. Go through MDN guide. (You will not understand a lot of things if you are new but hold on read through it. Don’t bother about new ES6 additions and skip them for now.)
  2. Now since you have read through the official guide. Complete the book Professional JavaScript for Web Developers that you had left mid way till the end. Pay attention to the OOP design patterns part and examples and make notes of your own (Chapter 6)
  3. I found out Hola has a very good compilation of the tutorials and their best practices. Start going through them step by step and you will now start getting the context and feel of the OOP practical implementation examples.
  4. Have a look at this article.
  5. Bookmark and go through each every function and details about DOM and BOM and RegEx.

Step 3: Explore depths

  1. Now go through the new ES6 features here.
  2. Now re-read the MDN with emphasis on new ES6 features.
  3. I found a great collection of ebooks here. I don’t encourage people to download stuff directly from this site if this is not appropriate buy the books online.
  4. Read:
  • Effective JavaScript 68 Specific Ways to Harness the Power of JavaScript by David Herman
  • High Performance JavaScript (Build Faster Web Application Interfaces) by Nicholas C. Zakas
  • Secrets of the JavaScript Ninja by John Resig
  • Javascript Patterns by Stoyan Stefanov

I know going through all of this is a tiring process and it will take countless hours and efforts but if you succeed, you are a trained javascript ninja. Sky’s the limit. Go unleash your learning on this world and make it a better place 😉