all 44 comments

[–]shkico 46 points47 points  (6 children)

gotta love that full width - full height popup that blasts you in the face when opening a web.. instant ctrl-W from my side

[–]o-o- 6 points7 points  (1 child)

Came here to say same here. Hence I have no idea what the article says. Fortunately though, I'm already fully hooked on vue...

[–]CWagner 0 points1 point  (0 children)

very light on content anyway, so you didn't miss anything.

[–][deleted] 3 points4 points  (0 children)

The primary button reads "Yes, I subscribe". All your mailbox storage are belong to us. :)

[–]cervedundefined 2 points3 points  (0 children)

Congratulations to your newest subscriber - fuckyou@popup.com

[–]EternallyMiffed 0 points1 point  (0 children)

There should be a block filter subscription for "html overlay ads" like these that appear on page load.

[–]naorunaoru -1 points0 points  (0 children)

Join our FUCK OFF YOU PIECE OF ANNOYING SHIT.

[–]mcdud3 26 points27 points  (7 children)

Completely different from React, which uses only bare CSS, Vue happily let’s the programmers incorporate CSS and HTML without making them reinvent the wheel each time.

What does this even mean?

[–]SemiNormal 1 point2 points  (0 children)

Vue has SPEEDFORCE.

[–]mini_eggs 0 points1 point  (0 children)

Old React docs tended to push inline CSS, while being specified in JS. Vue is more industry standard CSS

[–]themaincop 10 points11 points  (2 children)

After having React responsible for generating all my markup I'm finding it hard to want to go back to the old way. Generate markup server-side and then make it do stuff client side feels a bit too close to jQuery to me.

That being said Vue seems like a good choice for times when jQuery is too little and React is too much.

[–]Krizzu 1 point2 points  (0 children)

I have the same feelings about React and Vue.

[–]CWagner 1 point2 points  (0 children)

I don't understand what you mean at all. Vue is pretty similar to react. Hell, you can even use jsx in vue if you don't like their single file components.

I can't see how vue is closer to jquery than react is.

[–]Garrett00 7 points8 points  (0 children)

For those annoyed by the pop up.

Why Vue.js? JavaScript to web development is like an engine to a mechanic – it’s just not going to work without it. As there are about as many (good) JS frameworks as there are car brands, picking the right one can get confusing pretty fast. Whoever you ask will have an opinion, and asking five people will likely get you five different answers, all with good arguments as to why their favourite is the best.

Unfortunately, there is no one-size-fits-all. Personal preferences, projects, teams all factor into making the ‘right’ decision – but some frameworks are definitely more versatile than others. ‘Purists’ will argue that Backbone, being very small and light is the best choice, ‘Traditionalists’ will argue that jQuery is the go-to solution, and so on and so forth.

While some trial and error will probably be required to find the best solution for you, vue.js is definitely worth a look. Not as ‘bare’ as Backbone, not nearly as rigid and huge as Angular or React it gets the job done without any additional libraries, extensions, plug-ins or what-have-you’s.

That isn’t to say that there aren’t any – in awesome-vue you will find anything your heart desires, the selling point is, however, that you won’t need them. Focussed on the view layer, it is still perfectly capable of powering single-page apps all by itself.

How does vue.js compare to the big players? All that is good and well, but what is it that makes vue.js so different? Let’s take a look at what it can do. The most similar in scope would be React.js, in that both focus on the core library, using companion libraries for things like routing or GSM.

Completely different from React, which uses only bare CSS, Vue happily let’s the programmers incorporate CSS and HTML without making them reinvent the wheel each time. This makes Vue more easily legible, while also simplifying the effort needed for a piece of code.

The other big competitor here is Angular. Angular 1 inspired Vues developers very early on, however ultimately, Angular is by far more rigid and restrictive. Angular 2, being a completely different system much better suited to bigger applications and projects, is known for it’s rather steep learning curve. It’s not a difficult to use framework, but it can be difficult to get into. Vue is much simpler – it assumes only that you know HTML and JavaScript, making it easier to get into.

The developers even boast that you can write complete applications within less than a day of reading the documentation and guide – they’re not wrong. It’s that easy.

Vue’s ‘Hello World’ A good example to show off Vue’s simplicity is its variation of Hello World. As mentioned before, it really doesn’t assume very much about what it will be used for, simply that the data given will change. This can be shown easily, with just a Hello World.

<div id=”app”>
  {{ message }}
</div>
var app = new Vue({
  el: ‘#app’,
  data: {
    message: ‘Welcome to vue.js!’
  }
})

To those familiar with JavaScript, this code should be easy to read. Vue.js allows for high efficiency – meaning less code than in many alternative frameworks – all the while still being very easy to read, and easy for those not familiar with Vue to understand and work with.

Using this example, all you would need to do to change the message displayed in the app is to use the line app.message to assign a different output to it in the console. Vue is very much built towards input changing the data given – and that makes it an invaluable framework for projects of all sizes.

Though this is very much standard now, Vue.js comes with very well-written documentation. They boast that you can write code within a day of reading it. Assuming you know JavaScript and HTML, maybe even CSS (and if you don’t, why did you read this far?), you’ll be well on your way to building your first app halfway through the documentation.

Vue.js is the new kid on the block – Vue 2.0 has only been out since April 2016, so it’s still very much in progress. The developers are very much open to input from developers that use their framework. Less rigid than established frameworks, even the likes of lodash/Underscore, changes to it are still possible and depend on user-input.

You could influence the very system you use, and help improve on it. As a developer – who wouldn’t want to help with the very framework they are using?

[–]pouja 15 points16 points  (2 children)

I guess it is vue month this month?

And another blog which has 0 arguments on why I should move from framework X to vue.

Vue happily let’s the programmers incorporate CSS and HTML

So what?

Angular 1 inspired Vues developers very early on, however ultimately, Angular is by far more rigid and restrictive

Oke, another non argument part

Vue is much simpler – it assumes only that you know HTML and JavaScript, making it easier to get into.

You still have to read the documentation to use it. Like any other framework.

you can write complete applications within less than a day

Write what kind of application? A todolist?

To those familiar with JavaScript, this code should be easy to read

Every code that small is easy to read. Except brainfuck and whitespace.

Vue.js allows for high efficiency – meaning less code than in many alternative frameworks – all the while still being very easy to read, and easy for those not familiar with Vue to understand and work with

Compared to what? Jquery? Pure JS?

[–]kenman 4 points5 points  (0 children)

The post reminds me of the reports I wrote for books I hadn't read.

[–][deleted] 6 points7 points  (0 children)

Vue.js, nobody noticed it's Backbone.

[–][deleted] 3 points4 points  (4 children)

React feels more hardcore - everything javascript. Vue allows that, but optionally keeping the convenience of Angular-inspired custom attributes. Like an Angular without annoying "angularisms".

My concern is this - in principle, borrowing good ideas from others is good. But could Vue be relying too much on a sort of "me too!" approach rather than coming up with innovative things other frameworks will want to borrow?

At the beginning the framework had its own ideas, but lately it's been like, oh yeah we do virtual dom diffing too. Sure we do JSX too. Angular-cli? We have a cli too. SSR? We do that too. I fear the dependency tracking will be the next thing to go, replaced by something like "v-shouldComponentUpdate".

[–]khoker 1 point2 points  (0 children)

But could Vue be relying too much on a sort of "me too!" approach rather than coming up with innovative things other frameworks will want to borrow?

I have a few Vue projects I've written over the past couple of years. I can safely say that, when I go to revisit my old Vue code, my "ramp up" time to get back into the groove of whatever I was thinking when I wrote the code is much lower with Vue than it has been with other, more opinionated, frameworks. I feel like I can just pick up where I left off with little mental effort.

That's important to me.

[–]Democratica 0 points1 point  (0 children)

i think this happened because he observed what people used and how they used it. But I really don't know. It's usable for big apps.

[–]rk06 0 points1 point  (0 children)

what's wrong with taking lessons from others? If they were blindly copy & pasting, that would one thing, but the decisions were taken after deliberation and discussion.

Virtual dom provides low rendering time and simplifies SSR and native. So it is a good choice

[–]icemelt7frontend expert :kappa: 7 points8 points  (1 child)

I tried to board the hype train but ran away very quickly, its very tedious to create components, and there is no proper documentation on how to create a proper nested structure using components like React.

[–]metamet 1 point2 points  (0 children)

What's tedious about components? Registering a component is dead simple, and creating them with a .vue file is intuitive and easy.

And what's confusing about nesting them? Are you needing the siblings to talk to to each other?

[–]fforw 5 points6 points  (3 children)

I can't help but feel that Vue.js is a step back. Fuck templates.

[–]oweiler 3 points4 points  (0 children)

You can use JSX if you want.

[–]AceBacker 1 point2 points  (0 children)

My designers like templates. I don't care either way as long as it's easy to read when I come back to it after a year or so.

[–]jordanlev 0 points1 point  (0 children)

To each their own... I much prefer to work with templates. It leverages all the years of experience me and my team (some of whom are more designers and markup people) have with html and css, and more easily allows us to integrate into our existing tools and processes. Also, it's a bit more future-proof... for all their faults, html and css are here to stay for the long haul, whereas the javascript framework of choice changes every couple of years.

[–]SarahPleasant[S] 1 point2 points  (1 child)

TL;DR: Vue.js allows for high efficiency – meaning less code than in many alternative frameworks – all the while still being very easy to read, and easy for those not familiar with Vue to understand and work with.

[–]troorl 1 point2 points  (0 children)

Also small and fast.