47

Master vanilla JavaScript.

Once you do, you'll be able to quickly learn how to use all the frameworks.

And no, jQuery is not vanilla JavaScript.

Comments
  • 6
    You say Vanilla? OK. What would you recommend: es5, es6/es2015, es2016/es7, es.harmony, es.next? And what transpiler: babel, traceur?
  • 2
    @vatson I would say Vanilla JavaScript is JS that can run right in your standard browser. Go ahead and start with ES6 if you want, but learning ES5 will still help you learn JS.
  • 1
    @NathanDoesDev okay, okay. What is standard browser? Could you recommend some of them?
  • 1
    @vatson Anything that isn't a developer-specific browser (ie Chrome Canary)

    Chrome or Firefox are my recommended browsers because the dev tools don't suck.
  • 0
    @NathanDoesDev hmmmm. I have iPad and love it. And what's about iOS? It looks like there is available only webkit-based browsers
  • 0
    @vatson Well Google Chrome is a WebKit based browser similar to Safari.
  • 0
    @NathanDoesDev seriously? Oh damn, I've thought it was built on Blink and V8
  • 0
    @vatson They are, but Blink is based on WebKit :)
  • 0
    @NathanDoesDev but it's not fully identical? Oh, oh, oh. I'm afraid of different implementation of some tiny winy smal small things...
  • 6
    And you'll notice that jquery is in many cases absolutely not even necessary.
  • 0
    I don't agree that mastering Vanilla JS will have you learn "all the frameworks" faster. Isn't frameworks about doing things the non-vanilla way?

    I mean it's not gonna slow you down if you're awesome at Vanilla JS but I think there's other stuff you can do with your time to learn a framework faster.
  • 4
    @simeg there is absolutely no better way to learn a JavaScript framework than to learn JavaScript. Sure you'll need to learn the additional stuff but at its core it's all JavaScript. Sure you can use a framework without learning JavaScript but you won't understand any of it, and you'll never be great at it like someone who understands JS.
  • 2
    @simeg Nathan just wanted to say that it's better to know the language and practices than particular end product that frameworks are
  • 1
    @NathanDoesDev yes I agree with you, but "mastering" JS and all of its quirks is not the most efficient way to learn how to build components in React, for example, is what I mean.

    But if you don't know JS at all then idk why you're even trying to use a framework, that will indeed not work out.
  • 0
    @vatson ok, then why didn't he say so :P I fully agree with that statement.
  • 0
    @simeg good question. That's why I trolled him :-P
  • 0
    Javascript is immensely different from say, traditional OOP languages.

    Learning the basics of Javascript does go a long way in writing better code, regardless of the framework you're working in.

    But yeah, javascript mastery does not equate to framework mastery.

    That said... can my co-workers stop using array.sort() on numerical numbers...

    Also. Null and undefined is an object in javascript. Mind blown. Don't believe me? Try console.log(typeof null)
  • 0
    Haha...next is to learn those 100 frameworks cause every job opportunities require different framework mastery ;)
  • 0
  • 1
    @DLMousey that's not a counter rant, that's stupidity (if I'm understanding you correctly and people are saying to not learn vanilla JavaScript and just learn frameworks)

    That's like trying to learn how to play a song on the guitar without actually learning how to play the guitar. All you're learning is how to replicate a very specific set of steps without knowing how or why, and you'll just do it very sloppily.
  • 0
    @DLMousey oh sure, I love frameworks. My rant has nothing to do with actually USING frameworks. But before learn a framework you should learn JS.

    Again, similar to posting a guitar. Once you learn how to play a guitar it is easy to learn a song and use sheet music.
  • 0
    @DLMousey @NathanDoesDev come on guys, I didn't come here to see arguments between fellow devs. We've got stack overflow for that.

    You're both right. Javascript frameworks are definitely helpful in a lot of aspects, like say, making you code in a particular way that forces structure and compliance.

    At the same time, if you're not familiar enough with the language in general, you may not understand why you're using frameworks for that matter, apart from someone (eg your team lead / cto / team mate / wife) telling you that you should be using it.

    So yes, purists snuff at certain facts and libraries. I even met a guy who refused to use async.js. Why? To para phrase him - "because I can just write all these functions by myself".

    But of course.. In the opposite side of spectrum, there's still tons of people who code synchronously without callbacks in Javascript.

    Go figure.
  • 1
    @kileak I never meant to sound argumentative, just explaining the value of learning pure JS so that you can use frameworks better and understand them, basically agreeing with what both of you have said :P
Add Comment