Why Vue (Not React) Is the New jQuery
anyonecanlearntocode.com
anyonecanlearntocode.com
jQuery answered a great deal of the problems of the day in a way that abstracted away all the stupid stuff of the browsers we had to deal with. It didn't just make it easier to work with the DOM, it also made it easier to work with the browsers.
These new Javascript frameworks and libraries address different problems than jQuery. Some provide solutions looking for a problem, in my opinion, but many provide solutions that jQuery doesn't even begin to address and should not. In a way, this comparison to jQuery also does a disservice to these other projects. None of them are the next jQuery, they are their own thing and should be treated as such.
As for modern frameworks like Angular, React, Vue, and so on; I have used multiples of them, and by the state of the community, I say they are fairly easy to transition from one to the next and none have had the same impact. I would imagine most reasons for changing is either job change related or just keeping up with the latest shiny thing. Heck, in some cases I still use jQuery with some of the new frameworks because it is still easier to do it that way.
Even if I never had to use jQuery directly (had a short gig with Ember) I can see what it did.
It made JavaScript usable in the dark ages and did it with a nice API.
What do the frameworks of today?
What is their USP?
I mean React, for example, has a nice small API and its component concept is easy to grasp. To create an app, simply nest components, but the boilerplate and understanding required for Flux/Redux obliterates this. Not to mention the whole BabelJSXFlow stuff they have going on (and try to solve with create-react-app now)
It can be rendered on the server and the client can show finished markup and take it over to form a SPA, but as far as I can tell this is mostly a querstion of taste, since it now forces more load on the server.
So I wouldn't say it had too much of a net-positive effect as it could have had.
So yes Vue is the new jQuery in that you can built smalls things nicely but good luck wiring up a large app.
Fyi, Cocos Creator was built with Vue. That's not a small app: http://www.cocos.com/download/creator/
1. setting up babel, webpack etc - you don't have to do the setup yourself, just use the cli (https://github.com/facebookincubator/create-react-app)
2. learning es6 syntax - that's not a framework-specific problem, you could run into that w any framework (personally, I don't think it's a problem to begin with, since es6 is actually a lot nicer to work with)
It would've been a lot better if he showed what specific features of Vue make it easier to build apps w it.
As far as ES2015 syntax, it's not specific to a framework, but it is an extra thing that a beginner has to learn. Nearly every React tutorial I've come across takes heavy advantage of its features. And don't get me wrong - I love the new features and use them in my own code. But it's hard to tell the best way to teach a newcomer nowadays. Skip ES5 and only learn ES2015? That seems like trouble, you won't be able to read many existing codebases. Learn ES5 first, then ES2015? That seems like reasonable, but again, it's hard to get into React right away since you'll have to learn ES5 first. Again, these aren't problems for experienced developers, but it's daunting for a beginner to get started.
You do have a good point about showing specific features of Vue, this post was only trying to show the ease of getting started. I may follow up with a post to show some more specific features of building a larger app.
To me it seems more well-suited for small elements inside a regular page.
Single file components are awesome though, I'd love to have that in React (not a big fan of JSX).
We've had we've had both alternative existing concurrently for almost 2 years now.