I am a front end programmer. I'm good with design, html, css, and jquery, but I want to learn javascript more than anything. I've taken a couple of courses, read books and tutorials online and feel like I have a good grasp of the core principles: variables, logic etc.

This is where I see to differ from all the other "What's the best way to learn js" questions on the web.

What I can't seem to do is put this into actual practice. I can't take the jump from knowing the bits and pieces to figuring out how they work together to become a program.

What's the best way to get actual applied knowledge with js? I assume becoming an apprentice or being tutored would be the best, but you don't hear about those sorts of things often.

  • 2
    Write a server in node.js. Nothing teaches you js like using it for the entire web stack. You may find tutors here if your lucky
    – Raynos
    Jun 11 '11 at 2:33
  • I like the sound of that!
    – Gregg B
    Jun 11 '11 at 2:51
  • I have seen people migrating from javascript to jQuery quite often. This is the first case of reverse being found! ;)
    – check123
    Jun 13 '11 at 15:07
  • It would be almost like putting your question back to you, but still, what is it that you wish to accomplish from js, especially, given that you are comfortable with jQuery?
    – check123
    Jun 13 '11 at 15:09
  • I feel like learning more about what jquery is actually doing under the hood will help me be better at it. Additionally html5 leans on js so much I want to know everything I can about it - I don't feel like completely relying on jquery is good practice and I'm sure there are some things that might be easier with a firm grasp of "raw" js. Also, I would like to move into back-end programming a bit as well and I think this would be a good stepping stone.
    – Gregg B
    Jun 13 '11 at 22:46
  • Find a website you love the look and feel and copy it.
  • Create your own website about you and keep adding javascript-based interaction on it.
  • Create the webapp that you've always wanted to do. My most basic random app gave me a listing of what's in my fridge. (I'm notoriously shocking at forgetting what I've bought...)

The easiest way to learn (and retain) is when you have to learn. Be exposed to a concept, want to implement it, go and do it.

  • Thanks. I guess I have been intimidated to try and build something on my own - feeling like I won't know how to do it, but I guess that's where I will have to start.
    – Gregg B
    Jun 11 '11 at 2:01

Do some Javascript Koans

Implement a simple game in javascript.

Create nice, scrolling UIs, do ajax queries to get the 'next 10 phrases', or 'the next board configuration'.

Check out Paul Irish's 10 things I learned from reading jquery source and 11 more

Read the MDC Documentation. Read all of the jquery docs (its an easy read and only a few hours of time).

Oh, and know about jsfiddle.net - best thing ever.


Since you are familiar with jQuery, I would say try creating a jQuery plugin. You can use your js skills in there.


Take an existing jQuery plugin and try to develop the same using plain js.


The easiest way to become JavaScript professional is to join software development firm as a front end engineer, and apply your knowledge to new projects. If you did well, I know when you developed some thing with (jquery ajax javascript) then definitely every would like it because its fast and optimized. Then you will be the praised one in the organization.


The one JavaScript book I hade never helped me. It was the application of the language to solve actual problems which made me a JavaScript wizard in almost no time. Same goes for almost any language I'm using.

A good use case for JS would be mapping applications. Try working with Google Maps or OpenLayers. If you're not into maps, try JavaScript Frameworks like jQuery or Prototype. See what you can do. Build fancy forms, come up with some ideas how to speed up websites implementing ajax applications, all that kind of stuff. Maybe another slide show application ... something really cool? Or does anything need an admin interface? How would you make it more userfriendly through the use of JavaScript. The possibilities are endless, not to mention node.js which opens a whole new universe of possibilities.

Its really up to you and your needs. All I can tell you is: Pick a problem and solve it. Books will help you along the way, yet never replace the experience you gain

cu Roman

Not the answer you're looking for? Browse other questions tagged or ask your own question.