Hacker News new | ask | show | jobs
by Someone1234 2825 days ago
Seems like they're repeating the mistakes of Angular 2.x+. Breaking backwards compatibility and adding a ton of tool requirements and libraries for basic usage. We're still stuck on Angular 1.x for exactly that reason.

They also seem like they're going to drop IE10/11 support (ES2015 everything) thus either pushing the tool/library requirement even higher or simply not working on older browsers.

Vue.js was attractive because it was the anti-Angular 2.x, it was light weight, simple, and with nearly no requirements (on either browser or developer's machine). Now they'll just be a "me too!" Angular 2.x clone, but with a smaller community.

5 comments

Did you even read the article?

"The new codebase currently targets evergreen browsers only and assumes baseline native ES2015 support. But alas, we know a lot of our users still need to support IE11 for the foreseeable future. Most of the ES2015 features used can be transpiled / polyfilled for IE11, with the exception for Proxies. Our plan is to implement an alternative observer with the same API, but using the good old ES5 Object.defineProperty API. A separate build of Vue 3.x will be distributed using this observer implementation. However, this build will be subject to the same change detection caveats of Vue 2.x and thus not fully compatible with the “modern” build of 3.x. We are aware that this imposes some inconvenience for library authors as they will need to be aware of compatibility for two different builds, but we will make sure to provide clear guidelines on this when we reach that stage."

Yes? Your quote is literally one of the things I'm complaining about.
Most of these changes are going to be added as minor version updates to Vue 2. This is unwarranted FUD.

They're dropping IE11 in some version of Vue 3, but will maintain a compatibility build, along with polyfill if a compatibility isn't possible.

They're still light weight (going to be lighter), still simple, and at its most basic, will just be a script tag added at the bottom of your HTML page.

Underqualified to speak for Vue, but practically everything you're saying is addressed in the post in very simple terms. They are breaking bc because JS and browserland are doing so, and quite quickly. That is what major releases are for. If you never do that you sink in tech debt - you know, like angular.
>> Seems like they're repeating the mistakes of Angular 2.x+. Breaking backwards compatibility and adding a ton of tool requirements and libraries for basic usage.

>> They also seem like they're going to drop IE10/11 support (ES2015 everything)

It's funny because the article says the exact opposite of these things.

Maybe you haven't read it, or actually attempted to comprehend it?

> It's funny because the article says the exact opposite of these things.

It what now?

> In addition, the API is designed with TypeScript type inference in mind. The 3.x codebase will itself be written in TypeScript, and providing improved TypeScript support. (That said, usage of TypeScript in an application is still entirely optional.)

And:

> Top level APIs will likely receive an overhaul to avoid globally mutating the Vue runtime when installing plugins. Instead, plugins will be applied and scoped to a component tree.

And:

> We are breaking some internal functionalities into individual packages in order to isolate the scope of complexity. For example, the observer module will become its own package, with its own public API and tests. [...] Decoupling the observer and scheduler into separate packages

And:

> The new codebase currently targets evergreen browsers only and assumes baseline native ES2015 support. Most of the ES2015 features used can be transpiled / polyfilled for IE11

The above is exactly what I referred to and all taken verbatim from the article. It is Angular 2.x+ all over again.

> In addition, the API is designed with TypeScript type inference in mind.

If I got that right, they plan a first-class TypeScript interface, and a second class Javascript one compiled from it. You choose whatever you want.

Their problem is that you can not derive a good TypeScript interface from Javascript. But there is no problem on doing the reverse. None of that implies in any development-time or runtime requirement.

> Top level APIs will likely receive an overhaul to avoid globally mutating the Vue runtime when installing plugins.

That is a breaking change, yes. But not a large one.

> We are breaking some internal functionalities into individual packages

That is clearly not a breaking change.

> The new codebase currently targets evergreen browsers only and assumes baseline native ES2015 support.

That one implies on development-time requirements. They still can remove that requirement from the JS compiled distribution.

Do you know any of that for sure? Maybe you should be asking more questions?
If you have something you want to contribute I'd prefer if you just did so. I don't feel like you're asking either question in good faith.

I got my information from the article this thread is about. As to if the article itself is "sure" I don't know, if you do then go ahead and contribute something constructive to the discussion.

>> If you have something you want to contribute I'd prefer if you just did so. I don't feel like you're asking either question in good faith.

Your original comment was not in good faith. It claimed the exact opposite of the things said in the article (such as dropping IE 11 support - NOT correct).

> It claimed the exact opposite of the things said in the article

I'm not sure why you've created two comment trees saying the same thing, I responded to your other comment above.

> Your original comment was not in good faith.

My original comment was my opinion based on my experience and after having read the article. If you disagree, fine, but I don't think it is fair to question my motives. Simple disagreement doesn't mean the person you're disagreeing with is responding in bad faith; asking loaded "questions" which read as thinly veiled insulted however...

At no point did I question your motives. I do question whether you understand Vue's plans.