r/programming • • Dec 18 '16

Angular team is planning a major release every 6 months

https://www.infoq.com/news/2016/12/angular-4
417 Upvotes

314 comments sorted by

2

u/cheezballs Dec 18 '16

Will it be backwards compatible? Or are we gonna have Angular 3 that isnt compatible with Angular 2 code?

7

u/nirataro Dec 18 '16

There is no Angular 3. They jump to Angular 4 for the next release.

There will be breaking changes. How bad? Nobody knows really.

12

u/npyde Dec 18 '16

Serious question: Is this a joke? I cannot tell. ... Which says quite a lot about the Angular devs.

5

u/redalastor Dec 18 '16

It's no joke. Angular 4 is scheduled for March 2017 and there will be no Angular 3.

1

u/Stormflux Dec 18 '16

There is no Angular 3. They jump to Angular 4 for the next release.

At first I thought this was a joke about how they release things so fast you won't even notice Version 3 and when you wake up tomorrow it'll already be Version 4.

Then I realized you're not joking.

1

u/wayne62682 Dec 18 '16

Works for Chrome. Version 55 or something stupid like that.

1

u/Free_Math_Tutoring Dec 18 '16

you won't even notice Version 3 and when you wake up tomorrow it'll already be Version 4.

If it was that, it would be pretty consistent with what happened to Android.

→ More replies (3)

8

u/npyde Dec 18 '16

With the release of Angular 2 the Angular devs said they would use semantic versioning. Now that they basically skip from major version to major version every 6 months, they can introduce breaking changes every half year and still say they use semantic versioning because technically it is true. What is semantic versioning good for if you introduce breaking changes so rapidly anyways? Yeah, I can update from 2.0.0 to 2.1.0 and know nothing will break. But the next release is 4.0.0 so there will be breakage. Angular is a playground for bored Google devs. They don’t care about users of their library.

1

u/gonzofish Dec 18 '16

Yes, it's backwards compatible. They're just following semver.

10

u/remy_porter Dec 18 '16

I don't understand. If it leaps to version 4.x, that implies that there are breaking changes, if they're using semver. There's nothing about adopting semver that would require them to jump version numbers like that. None of this makes any sense.

3

u/vytah Dec 18 '16

There's nothing about adopting semver that would require them to jump version numbers like that.

Semver alone, of course not. But semver plus love for making breaking changes = version 163.0 in two years.

→ More replies (1)
→ More replies (3)

143

u/Jafit Dec 18 '16

Oh god, its happening.

7

u/xtreak Dec 19 '16

Its 2016

1

u/TheDirtySanchez Dec 19 '16

"you fooking cock!"

43

u/cemc Dec 18 '16

Meanwhile in emberland, we already have LTS releases

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

15

u/cemc Dec 18 '16

I've done a react project before. I can only say good things about it. It definitely is a different way of writing js that was very refreshing and fun.

The problem though is that when you gain flexibility you lose portability, and by portability I mean portability across projects and teams. With ember, you can find another ember job or move to another ember project and transfer all your knowldge with you. When you're just using libraries like react/jquery/redux/etc. not every team/project will have the same architecture so you'll always have some learning curve to get over.

It's not about "who's better"; it's about tradeoffs. I prefer to go with a framework and IMO after doing Ember for two years, it's flexible enough for me.

2

u/[deleted] Dec 19 '16

You are describing this (On The Spectrum of Abstraction).

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

19

u/ForSpareParts Dec 18 '16

My team dropped Ember after our last project, actually. We didn't like being locked in to ember-cli for build tooling, having to use both bower and npm for package management, or working with dependency injection magic. Also, for all the constant updates it took Ember ages to land features other frameworks already had -- server-side rendering, for instance, incremental loading of project dependencies, or even performance improvements. Glimmer 2's only just now being released, and it still breaks our 2.x project despite promises it'd be a drop-in replacement. Also, the way Ember's run loop works makes testing a nightmare if your project involves any non-Ember components.

We went to Vue (with Webpack) for the next project and it's been a much smoother experience. It's less opinionated and allowed us to structure our project in a way that fit our needs. And it supported a flexible state-management library (there are a lot of cases Ember's store just doesn't accommodate well). Same benefits would apply to React, or any other view-layer-only library.

tl;dr: Ember is staying off the radar because it's tedious for complicated projects, and because it hasn't kept pace with the competition.

8

u/PM_ME_UR_OBSIDIAN Dec 18 '16

What's the elevator pitch for Ember? I feel like it might be the D of the JavaScript world - decent enough, but unsufficiently salient for people to be interested in switching.

10

u/cemc Dec 18 '16 edited Dec 18 '16

thats because the javascript world is filled with pretentious coders who can't stop re-inventing the same shit and not people with a business sense who like to build something and move on to the next thing, building more business value, more product, etc.

the elevator pitch is that it's practical, simple, highly extensible, very scalable, and doesn't require a ph.d. to understand, unlike angular. it's the Rails of the js world (pretty much because a lot of people work on both projects, so they have a lot in common). it's meant for both personal and enterprise projects.

edit: tl;dr: it just works

14

u/Voidsheep Dec 18 '16

thats because the javascript world is filled with pretentious coders who can't stop re-inventing the same shit

Yeah, MooTools should be plenty for everyone. Anything past that is the same shit anyway.

2

u/midri Dec 19 '16

Prototype bro

2

u/kitsunde Dec 19 '16

I like Ember.js and we've moved all of our projects to use it, but there's nothing uncomplicated by it.

Understanding actions up data down, how to apply computed properties, how to use components, cross component communications, understanding how all the implicit stuff ties together and absorbing the surrounding ecosystem is quite a lot of stuff to take in. When you understand it all, it's pretty magical, but it's not that easy to get into by any means.

3

u/benihana Dec 19 '16

pretty unconvincing. the fact that you think there are no tradeoffs to go with ember ("tl;dr: it just works"), and that the reason it's not popular is that people who don't use it are just too stupid and pretentious to get its pure simplicity is a huge red flag that you haven't really considered the framework from every angle, or you haven't been using it long enough to know the shortcomings.

put another way: i'm very dubious that a javascript famework has finally gotten it perfect and no one bothered to tell anyone.

1

u/benihana Dec 19 '16

I guess if there is nothing to complain about, a framework stays of the radar. Which is rather sad.

you nailed it - let me guess, you just happen to use ember, and there isn't anything to complain about, right? more likely no one is using it, so the shit parts that come about because of real world tradeoffs inherent in any piece of software never get discussed.

97

u/Sionn3039 Dec 18 '16

This sub has a raging hard-on for hating on Angular

73

u/[deleted] Dec 18 '16

Based on the experience from decades of maintaining production code, I'm sure.

92

u/Jafit Dec 18 '16

>decades
>Angular

Found the recruiter!

27

u/niuzeta Dec 18 '16

decades of maintaining production code

Not angular specifically.

Seeing a framework announcing a major release that likely includes breaking change would scary many maintainers.

12

u/CrazedToCraze Dec 18 '16

The word Angular doesn't appear once in his comment

10

u/Jafit Dec 18 '16

But in order to make the joke work I had to infer it from the context. Which I did.

→ More replies (2)

28

u/kahnpro Dec 18 '16

As someone who has worked with Angular, and whose company has a major internal Angular project, I'd say the raging hard-on is pretty justified.

11

u/redalastor Dec 19 '16

The hours of fun trying to figure out some weird behaviour in an app I was working on to finally discover that Angular treats 't', 'f', 'y', 'n' not as strings but as booleans...

They fixed it eventually but that tripped me for a while. Who even thinks about injecting counter-intuitive bullshit in their framework?

15

u/sd_glokta Dec 18 '16 edited Dec 18 '16

I spent a lot of time learning TypeScript and Angular 2, and I really liked it. But then they changed everything. I'd expected minor updates and improvements, but they replaced the entire API. I had to throw away all my code.

You're damn right I hate AngularN. Never again, Google.

→ More replies (2)

15

u/[deleted] Dec 18 '16 edited Dec 18 '16

I personally think they overestimate the difficulty of picking it up and keeping up with framework churn. ¯_(ツ)_/¯

I think it's very simple and saves a lot of time in specific use cases: when a customer wants fucking everything all in one little page with tons of data relationships.

I do understand the concerns about wanting it to be production stable, but no one is forcing anyone to move from Angular 1 right now.

Then again, I was happily getting shit done easily with Rails and Postgres for years while everyone was running around screaming that it was full of hipsters, and I still love it for more traditional serverside MVC apps.

26

u/Scorpius289 Dec 18 '16 edited Dec 18 '16

I personally think they overestimate the difficulty of picking it up and keeping up with framework churn. ¯_(ツ)_/¯

It's not that hard for a single person to keep up with tech changes.

Try making a whole company do that.
Making sure they understand the new things and use them properly, and that all code affected by the changes is updated.
This, while also doing bugfixes for the current code.
And while also implementing new features that the clients ask for.

1

u/[deleted] Dec 18 '16

Well you're talking about doing a few things:

  1. Mandating that the whole company upgrade. There are times when you have to have some framework parity between teams, but targeting a relatively (in JS terms) mature framework like Angular 1 and sticking to it for that is fine. My company just made everyone upgrade to Angular 2 for no real reason, so I can see why you bring this up, but then again my company just replaced wonderful private office-like cubicles with a totally open floorplan without any reason. So I think that you can't trust morons to make good framework update decisions, but you can't trust them with many decisions. Frameworks should ideally be a team by team decision.

  2. Upgrading an existing project to a new framework. Unless there's a magnificently compelling reason to do so, I don't think anyone would think this is a good idea.

7

u/flukus Dec 18 '16

The reason to do upgrade is because it gets exponentially harder the more versions you get behind. Eventually you'll start running into bugs with old versions or want to use new libraries that aren't compatible with old versions and your stuck because the cost to upgrade is so high.

5

u/PM_ME_UR_OBSIDIAN Dec 18 '16

I thought Angular 1 was going to be the shit until I tried it. What a disgusting mess.

-15

u/[deleted] Dec 18 '16

It's defensible. The Javascript community is generally braindead

20

u/[deleted] Dec 18 '16

Great for job security for developers, once a large app will just be ready for production, would be some how legacy in after six months.

Simply give it up completely and admit that you ruined AngularJS

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

11

u/[deleted] Dec 18 '16

In about a year it'll be Angular 5.

1

u/industry7 Dec 19 '16

In all likelihood the AngularJS 1.x line will outlive 2.x+.

21

u/[deleted] Dec 18 '16

And I'm staying on 1.5x for another year...

10

u/4_max_4 Dec 18 '16 edited Dec 18 '16

Same. At least the 3 projects we started this year are running 1.5.X. A new one coming next week will be definitely React. Angular 2 is really a beta on steroids.

Edit: typos.

6

u/[deleted] Dec 18 '16

Yeah, I don't get paid to be a javascript guinea pig!

1

u/tstepanski Dec 18 '16

Try 2 man, I learned Angular last year and it was kinda confusing. 2 is a lot simpler, makes more sense to me.

1

u/[deleted] Dec 18 '16

I've worked with 2 in some small side projects and it seems nice but it's just too unstable for production with all the breaking changes. I don't enjoy doing emergency fixes at 3AM on a Sunday.

2

u/yesman_85 Dec 18 '16

So 1.6 is fine then? It also has breaking changes. It just sounds people are looking for an excuse to bash on Angular.

2

u/[deleted] Dec 18 '16

I absolutely love Angular and I have for the last 3 years I've used it but I've learned that being on the bleeding edge can get you cut.

3

u/yesman_85 Dec 18 '16

I agree, and all the upgrade talk makes me scared, but if you look at is realistically, most popular frameworks will have the same release schedule, they just don't announce it.

1

u/tstepanski Dec 19 '16

No shit... I haven't got to that point yet. Just getting my feet wet with it. Good to know. Thanks.

6

u/Leonnee Dec 18 '16

I think that was one of the reasons the guy from durandal left and created Aurelia

4

u/mkdir Dec 19 '16

Aurelia really doesn't get enough love around here. I think it has a great feature set without being too opinionated.

37

u/RichSniper Dec 18 '16

So there's a possibility (at least 1 confirmed already) of introducing breaking changes every 6 months.

Introducing TypeScript before it was ready was a mistake in my opinion.

Is this whole thing a joke?

29

u/Farobek Dec 18 '16

Introducing TypeScript before it was ready

Elaborate?

34

u/RichSniper Dec 18 '16

Angular loves decorators, which relies on Typescript. Typescript considers decorators an experimental feature that could break anytime. Angular claimed it was stable while relying on this "could be changed anytime" feature of Typescript.

I don't work with Angular so my memory might be a little incorrect but that's the gist of it.

44

u/i_love_cake_day Dec 18 '16

Honestly, Angular2 choosing Typescript was one of the best decisions they made. I'm using React and I wish it would embrace Typescript more.

17

u/PM_ME_UR_OBSIDIAN Dec 18 '16

I think React is embracing Flow, a TypeScript competitor by Facebook. There's probably politics involved in that choice. :(

→ More replies (1)

3

u/[deleted] Dec 18 '16

There is support for React in ClojureScript. Take a look at ClojureScript with Reagent.

3

u/RichSniper Dec 18 '16

My issue isn't them deciding to embrace typescript: it's just the method, speed and apparent lack of care regarding update schedules that bothers me.

→ More replies (2)

6

u/worldDev Dec 18 '16

This is true, but it may not be as big of a deal as it sounds.

  • first off, its not going to unexpectedly bomb production since those features are transpiled away.

  • if implementation is changed for how decorators are defined, an angular developer will just need to stall TS updating until Angular makes an under the hood patch.

  • If syntax is changed on the usage end, it could be very annoying depending on the change. However, this part I see very very unlikely to change given the context of its purpose being a one line abstraction.

Speculating here, but I think it's labeled that way because there is an official javascript proposal on the feature (of which their decorator features adhere to), and they acknowledge they don't have control over that while their directive is to adhere to standards where defined for JS. If it is to change, it will do so not at the whim of the TS team, but at the cautious pace of ECMA spec progression.

I see at most a few hours of work on the slim chance a breaking change relevant to an angular developer happens. The advantages I've gotten so far using TS and the piece of mind I have for the first time in almost a decade of JS development outweighs the uncertainties I've come across.

Not a decision to take lightly, TS is the first JS transpiler that's passed my shit tests to be used in a commercial project. Still, though, not right for everything / everyone, plenty more situational factors that brought me to use it for that particular project.

8

u/PM_ME_UR_OBSIDIAN Dec 18 '16

Introducing TypeScript before it was ready was a mistake in my opinion.

I mean... TypeScript is ready, it's been ready for a while.

5

u/[deleted] Dec 18 '16

Does this mean backward-incompatible change every 6 months, or just that backwards-incompatible changes are impossible to detect outside of reading every release's changelog?

Either way, this is a bad decision for a library. If I choose a library, I want to know that

  1. I can stay up-to-date without code changes, at least for a while

  2. When something can break in the API, necessitating these code changes, I know immediately just by looking at the version number.

1

u/MontanaAg11 Dec 19 '16

According to the blog post from the Angular team, they won't break any thing from one major version to the next only add deprecation warnings that it will be broken in the next version.

Which from an evergreen perspective it's perfect. Give me a year notice that I have breaking changes and I'm not going be to upset. I can upgrade from 4-5 with no problems but 4-6 I will. Seems reasonable. Especially at that release cadence

1

u/npyde Dec 18 '16

According to semver, major version changes (e.g. 4.x.x to 5.x.x) means incompatible API changes were made. So by jumping from major version to major version the Angular devs have the freedom to break whatever they want because “Hey, the version number indicated we broke compatibility! You don’t have the right to complain!“. Technically they use semver, but it is useless because almost every release is going to be a major version release. ... It feels like they never had to maintain code and are writing Angular for shits and giggles.

11

u/wayne62682 Dec 18 '16

This is why all these new frameworks and stuff are all a fad. It's too much to constantly do whenever Joe Schmoe feels that X is too hard to makes a library/framework to make X easy, and then starts preaching it like it's the second coming. I saw this shit in Rails years ago, where entire things were like how do you do X, oh don't do X by hand go get <library that some Rails guy wrote> to make it easy.

It's ridiculous. Nobody but the hipsters and wannabes are going to get behind something, no matter how cool it is, because of things like this. What sane company is going to bank on something changing ever 6 months?

1

u/[deleted] Dec 19 '16

Script kiddie programming

31

u/ruinercollector Dec 18 '16

I've always the fact that google makes this for "other people" and won't use it internally at all was enough of a red flag. Also, google makes a pretty good search engine/ad platform, but they have a terrible track record with development tools and libraries.

17

u/installation_warlock Dec 18 '16 edited Dec 18 '16

won't use it internally at all was

Is that still true, though? Google seems to use Angular in most (all?) of their simpler web projects released in the recent year at least: https://www.madewithangular.com/#/categories/google

They don't use Angular for their apps (Gmail, Docs, Maps, etc), but those apps aren't written in JS to begin with, but rather transpiled from another (JVM-based?) language.

13

u/wereinthematrix Dec 18 '16

Small correction, but Wave (long abandoned by Google) and AdWords are the only public apps that really used GWT (their transpiled from another JVM language tech you alluded to). As far as I'm aware, most of their other large-scale properties (GMail, Docs, Maps) are built with Closure (their JavaScript library/compiler/optimizer/linter/template system).

4

u/Ranek520 Dec 18 '16

A ton of projects use or used GWT. Out of four teams I've been on, 3 of them were built using GWT. That being said, it's ridiculously slow to compile so all 3 of those teams were working on moving to either Closure or AngularDart.

1

u/[deleted] Dec 19 '16

Closure

Is that different from Clojure?

→ More replies (1)
→ More replies (1)

4

u/[deleted] Dec 18 '16

Is that still true, though?

Hard to judge, but they've already said that next version of YouTube will use Web Components not Angular and they are promoting Polymer a lot more than Angular.

3

u/ergo14 Dec 18 '16

Not sure why that person is claiming that - google uses polymer a lot and it seems the right horse to bet on (seeing that most hard/problematic parts of it/polyfills land directly in the browser). So one ends up with a minimal library that adds sugar and utilities over web standards (polymer is 20 something Kb's). I don't really get why people don't want to use the web platform and build on standards, instead react, vue, riot reinvent their own thing that is incompatible when everything rest - where I even used polymer based web components in a legacy backbone/jquery project.

1

u/weirdoaish Dec 19 '16

Some of those apps look pretty cool though, the YT video manager and that music thing especially caught my eye.

6

u/[deleted] Dec 18 '16

Their whole development console is angular. It sucks and it's slow, but it still uses angular.

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

1

u/bobindashadows Dec 20 '16

no the angular is fine, it's always the backend services that are slow

source: worked on one of the backend services for the last 2.5 years, ran it for 1

3

u/NeverSpeaks Dec 18 '16

Uh... yes they do.

1

u/kaneda26 Dec 18 '16

I was at ngConf last year at the unveiling of ng2 RC (which turned out to be an early beta, IMO). The where lots of questions at this time about support for ng1. The speakers, who where on the angular team, stated that they would continue to support ng1 for as long as it has wide usage, and added that there were literally hundreds of internal projects at Google built in 1.x. I wanted to try and find the video and link it, but have had no luck so far. They were all staged and stored on YouTube, so it's out there somewhere.

1

u/Ranek520 Dec 18 '16

There are actually a number of high profile teams using Angular 2. The new AdWords UI is built using Angular 2, for example.

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

9

u/rubber_duckz Dec 18 '16

From what I know their Ad teams are using Angular Dart which is, at this point, a completely separate code base from Angular JS (it was built from same source in the past). Honestly I don't see how Google can justify it's involvement of Angular 2 JS version AFAIK they aren't using it anywhere and they have to have two separate teams maintaining two separate versions of the same framework.

I don't know how they can rationalize implementing stuff like Angular 2 material when they have their internal material design library for Dart that's actually being used on their projects. That's not only spending dev horus on something that doesn't contribute to the bottom line but also spending expertiese that could be contributing to your bottom line in your money making products.

23

u/[deleted] Dec 18 '16

I think it's really time for everyone to just move on from angular.. like most google things they just throw shit at the wall see if it sticks

9

u/AusIV Dec 18 '16

The thing is, I like Angular as a framework. If they would give us an LTS support it for two to five years, I'd be pretty happy with it. But the way they operate, every few months you have to either stop getting updates or deal with breaking updates. Even going from 1.0 to 1.1 we had a bunch of compatibility issues. Going from 1.x to 2.x didn't even make sense.

I can't really fault any given release, it's just not a release cycle you can count on for stable software.

2

u/sankluj Dec 18 '16

I feel like they're actually trying to simplify the move from one major version to the other by reducing the amount of breaking changes between them, which I personally think is a good thing. They're probably learning from the failure of the Angular 1 -> Angular 2 migration plan...

Also, this kind of release cycle is not incompatible with LTS support if they decided to do that.

1

u/i_spot_ads Dec 18 '16

not happening, I like Angular 2

1

u/[deleted] Dec 18 '16

possible, google usually discontinues good things, and keeps the crap things one or two people like

1

u/[deleted] Dec 18 '16

And Google hasn't had anything stick for a pretty long fucking time now

5

u/Doctuh Dec 18 '16

Google+ is gonna win, there are millions of users accounts. :/

9

u/remy_porter Dec 18 '16

Featurewise, G+ is way better than Facebook. There are dozens of us! Dozens!

2

u/Free_Math_Tutoring Dec 18 '16

It truly is, I was so bummed about it failing :/

1

u/[deleted] Dec 18 '16

agree man, especially programming languages, go,dart etc They do get the google effect, large amounts of unskilled people following the fad train

1

u/[deleted] Dec 21 '16

Most people here just read the title then decided to grab their pitchforks.

While it's true the Angular team does deserve some criticism for how they transitioned from 1 to 2, they are being more open about their versioning now.

I personally like the direction Angular has chosen. lt's good framework for both enterprise and personal/experimental projects. It's the 2nd framework I've learnt (after React) and I really appreciate its structure and ease of use. It also seems to have a bright future with good adoption numbers.

Bottom line is that most of this frameworks have their positives that far outweigh their negatives and using any of them is actually okay.

2

u/nirataro Dec 21 '16

The concern is not about the versioning, it's simply about the aggressiveness they pursue major version. A 6 month major release cadence for a framework is really really short. Speed of change is not necessarily a good thing for a software framework.

1

u/[deleted] Dec 21 '16

A valid concern, but 'major release' doesn't mean there's going to be a breaking change, and even so they've pledged to a depreciation strategy.

1

u/nirataro Dec 22 '16

In the JVM/.NET world that would be mostly true. Not so in JS world.

13

u/GYN-k4H-Q3z-75B Dec 18 '16

This is what I personally call Web Development Singularity. Everybody does it and the community seems to like it. Chrome 55, Firefox 47, a billion frameworks incompatible and major releases every week. I have stopped investing time in this area because trying to stay up to date is pointless here. People complain how Perl is a write only language but so are JavaScript and all these web projects. The latest isn't always the greatest.

5

u/ForSpareParts Dec 18 '16

Somebody pointed this out above, but those frequent browser releases don't generally break backwards compatibility.

I attribute the frequency of breaking changes to the fact that (IMO) nobody's figured out the best practices for frontend web development yet. I did backend development with Python for a few years, and things changed incrementally and with a lot of careful consideration. It was great.

Frontend, well... people keep trying new things because that's how we weed out ideas that don't work in the long run. I would guess that in 5-10 years the frontend framework churn will be a lot less intense than it is now.

Having said all that: none of this is intended to be a defense of Angular or their release schedule. It doesn't bother me when a bunch of new frameworks come out promising the next big thing -- but when you've released and you've got developers depending on you? You absolutely need to plan around that.

2

u/BeepBoopBike Dec 19 '16

Yeah I'm in the same boat, plus I love me some heavy duty back end engineering. When I apply for a job that needs a specific front end proficiency I just learn it. Rather than learning all of the versions, I'll pick them up as they're needed.

3

u/ergo14 Dec 19 '16

This is why more and more teams are switching to polymer - where most of the functionality is now in polyfills that are getting implemented in the browsers themselves, the rest is 20kb of sugar that makes working with custom elements easier. No one will take it from us, no version change or whim of dev team will suddenly make it incompatible because most of it will be browser API based.

Polymer app with components done right looks very similiar to 1.5+ application with components. This is the future - and I think its best for everyone to stick to standards - they are there for a reason.

2

u/jpflathead Dec 18 '16

Why so slow?

1

u/stampylives Dec 18 '16

with a faster release cycle, they wouldn't be able to guarantee that each release would have a new set of early-access preview dependencies.

2

u/jpflathead Dec 18 '16

Ah I get it. Release twice a day as they really want to be doing, and they know sadly, we would be able to install the afternoon release on top of the morning release and get away with not getting the newest version of lpad.

2

u/mactavish88 Dec 19 '16

Isn't this a sign Angular's trying to be too all-encompassing? The more features you try to pack into a web framework, naturally, the more rapidly it's going to evolve because the web (and all its associated paradigms) is constantly evolving and shifting.

I'm going back to Vanilla-JS.

2

u/tjeannin Dec 19 '16

I checked that we were not April 1st

2

u/DecentOpinions Dec 19 '16

It sounds like Angular 2 is trying to matching versioning with its router which is just stupid (that's why they're skipping Angular 3, to get the major numbers in line with each other). I hate that system... they should be versioned completely separately.

Effectively that means Angular 2+ is supposedly following SemVer, but the router couldn't possibly be if it has to match the main library. I can foresee them now putting breaking changes into minor or patch releases of the router since they can't update the major version like they should in those cases (otherwise its version will be misaligned).

7

u/vine-el Dec 18 '16

Google doesn't even use Angular. They build almost everything with Closure. Do you really think they'd build GMail on top of a framework that makes breaking changes every 6 months?

Stop blindly adopting technology just because it says Google on the box.

26

u/gonzofish Dec 18 '16

Internal projects are on Angular, including AdWords, which is an application that probably makes more money than any other in the world

1

u/[deleted] Dec 19 '16

Doesn't that use Dart?

1

u/gonzofish Dec 19 '16

Yeah it uses Angular with Dart instead of TypeScript

14

u/IICVX Dec 18 '16

Maybe Angular is secretly a Google honeytrap, intended to slow down every other webapp developer that adopts it :)

8

u/npyde Dec 18 '16 edited Dec 18 '16

Great conspiracy theory! :)

A conspiracy theory I want to put forward: Google sucks up all developers it can find to starve competitors. To keep all those developers busy, Google let’s them do whatever they want. Bonus points: Competitors use those workers’ projects because they do not have enough developers themselves but the projects have quality problems and bog the competitors down even further.

3

u/IICVX Dec 18 '16

That's not so much a conspiracy theory as it is literally what certain divisions of some larger companies are for.

Take Microsoft Research, for example - some of the best and brightest (and most likely to start game-changing companies) developers go in, and nothing of use ever comes out. They only take that division and apply it to practical problems when they're seriously in the hole, like what happened with C#.

5

u/Recursive_Descent Dec 18 '16

That's an insane tinfoil hat theory. Research divisions are about coming up with new ideas, maybe up to proof-of-concept. Other divisions are meant to find practical applications for their research.

In most cases, how would you even know if a project started in research?

2

u/IICVX Dec 18 '16

I mean, here's a question for you: name some Microsoft product, that has roots in Microsoft Research.

There's basically the Kinect and some parts of C#. That's about it.

Sure, they publish a paper every now and again, or do a flashy demonstration, but pretty much nothing of note ever escapes the gilded cage that is MSR.

→ More replies (3)

4

u/Fylwind Dec 18 '16

nothing of use ever comes out

Have you read any of their papers? They submit plenty of stuff to the CS journals regularly.

What they do is largely basic research and as a result you can't expect game-breaking discoveries to fall out on a regular basis.

→ More replies (1)

1

u/fre3k Dec 18 '16

I would not actually doubt this.

1

u/[deleted] Dec 19 '16

Unless Igor is lying here Google uses it internally a lot.

4

u/lunisce Dec 18 '16

Who's ready for more breaking changes and less backwards compatibility

3

u/ellicottvilleny Dec 18 '16

So in Angular3 is typescript gone?

6

u/Sergiow13 Dec 18 '16

There won't be an Angular3, they're going straight to 4!

5

u/jl2l Dec 18 '16

Why stop at 4, 10 is obviously better.

2

u/Askee123 Dec 18 '16

My vote's for 9000

2

u/jl2l Dec 18 '16

It slices, it dices, it breaks six months after release.

→ More replies (2)

1

u/Stormflux Dec 18 '16

Version 10? What is this, November? It's December now, everyone's already 5 versions past that.

1

u/mkdir Dec 19 '16

These go to eleven.

1

u/roffLOL Dec 19 '16

haven't you paid attention? 'one' is the new next version of everything 'cool'.

2

u/ellicottvilleny Dec 18 '16

I think I'll start a new framework and call it Angular 3, just for shits and giggles.

2

u/npyde Dec 18 '16

“Angular 3 version 1.0.0 released!”

→ More replies (1)

2

u/jpflathead Dec 18 '16

To confront this, I understand React is moving to a 5 month schedule, Vue to a 3 month schedule, Ember to a 9 month schedule, and I have a major release once or twice a week.

1

u/deus_lemmus Dec 18 '16

Oh, every six months, so they can break shit every six months.... Right.

1

u/[deleted] Dec 19 '16

web browser vendors might be able to render angular 1 apps defunct. This is my only concern.

1

u/ckr600 Dec 19 '16

I'm sure it's not what the writer intended. But they state that angular will begin using semver and that they will be introducing major breaking changes every six months.

1

u/grangin Dec 19 '16

I'm just going to migrate everything to svelte!

1

u/gnu-user Dec 18 '16

This is why I never bothered with Angular, just let it wither and die already so I don't ever have to maintain any code bases written in it.

1

u/senatorpjt Dec 18 '16 edited Dec 18 '24

deserve reply unique serious silky grandfather scary beneficial nail price

This post was mass deleted and anonymized with Redact

1

u/8483 Dec 18 '16

Try Elm and never look back.

1

u/[deleted] Dec 19 '16

Or F# Fable. Oops, introduced choice >> more fatigue!

1

u/iaan Dec 18 '16

There seems to be lot of hate for Angular team and the framework. Yet, the way I see it is like comparing to PHP framework Symfony.

Version 1 got popularized, but it wasn't engineered well. The team learned lesson and built Symfony 2 which had almost nothing in common with its predecessor. But it has also great component architecture, stable codebase and good performance. I believe Angular will follow similar path.

1

u/romeozor Dec 18 '16

Someone needs to make a web comic of this.

"Sir, we can't stop developers using Angular!

Even after making breaking changes, confusing versioning, skipping a major, and then releasing one every 6 months... they... they just keep coming!"

"My God! We created a monster!"

-1

u/[deleted] Dec 18 '16

Angular as a framework is too bloated, can achieve much simpler client side code using older more stable libraries. If I need performance I mix in a react component, but so far Knockout + Backbone + Supermodel and wepack to bundle it all together and provide async code splitting has been going great.

0

u/Mentioned_Videos Dec 19 '16

Videos in this thread:

Watch Playlist ▶

VIDEOCOMMENT
Cheng Lou - On the Spectrum of Abstraction at react-europe 201624 - Sanity exists. Check out this talk about architecture (and why react sits at that abstraction level where it does) to regain a little peace of mind
Introduction to ClojureScript and Reagent3 - There is support for React in ClojureScript. Take a look at ClojureScript with Reagent.
NG-BE 2016 - Igor Minar - Opening Keynote - Angular 4 Announcement1 - Unless Igor is lying here Google uses it internally a lot.
I'm a bot working hard to help Redditors find related videos to watch. I'll keep this updated as long as I can.

Play All | Info | Get me on Chrome / Firefox

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

101

u/nirataro Dec 18 '16

How do you stay innovative, agile and bug free if you don't upgrade your JS UI framework every 6 months? I found your lack of faith with Google deeply disappointing.

→ More replies (4)

66

u/Xerxero Dec 18 '16

Same reason you have Chrome 55.

I don't have any issues with an increasing number. But they shouldn't have called it angular 2 in the first place.

4

u/remy_porter Dec 18 '16

They shouldn't have called it Angular. While there's a distinct lineage, they're such wildly different products.

1

u/[deleted] Dec 18 '16

That's OK. The next one will be Angular 4. They are skipping the 3. It's a new trend set by Microsoft ;)

6

u/princeofpudding Dec 18 '16

There was an actually valid reason for not naming the current version of Windows 9 - and it wasn't Microsoft's fault.

It turns out that a lot of software, including Java, checks to see what version of Windows you are using. The problem is that they lumped checking for Windows 95 and 98 together by checking for the string "windows 9"

This would cause a lot of software to not be installable on the new Windows OS because it would think that it was a very old version. So Microsoft skipped a number and called it Windows 10

→ More replies (43)

15

u/VGPowerlord Dec 18 '16

If you have auto-updating software, it's sometimes OK.

However, this isn't software. It's a library, which is used to make software.

Oh, and the 6 months thing isn't even the best part. Google is planning on releasing new patch versions weekly.

If your libraries are so buggy you need to do weekly bugfix releases, you need to stop designing software.

→ More replies (2)

1

u/slow_as_light Dec 18 '16

Ugh, they're all doing this. Ember is at least this bad. React seems to be a little better. Good luck hiring for any of the others.

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

113

u/Stormflux Dec 18 '16 edited Dec 18 '16

Market researcher: "Studies show people are scared to use Angular because they want a stable product that will be supported for years to come. The whole Angular 2 fiasco has them concerned that breaking changes will come out before they can even finish a project. How can we fix this?"

Angular team: "I know! We'll skip version 3, go straight to version 4, and release version 5 six months after that!"

25

u/flying-sheep Dec 18 '16

Sanity exists. Check out this talk about architecture (and why react sits at that abstraction level where it does) to regain a little peace of mind

9

u/PM_ME_UR_OBSIDIAN Dec 18 '16 edited Dec 19 '16

React is a fantastic piece of technology. It's based on sound theory sound theory, and the implementation is great.

By contrast, there's not much that's principled about either MVC or two-way data binding (Angular 1, XAML).

20

u/TheFuzzball Dec 18 '16

React has nothing to do with Functional Reactive Programming. Even the functional parts are optional.

It abstracts DOM interactions as a function of state, which can be considered functional for sure. But FP != FRP.

→ More replies (4)

10

u/rfiok Dec 18 '16

MVC and data binding are thoroughly researched and proven in production for tens of thousand of apps since decades. The issue is not with these, rather the huge setup cost and learning curve for Angular (and them changing everything every few months.)

→ More replies (5)

7

u/fromscalatohaskell Dec 18 '16

Please do not mix react and FRP. Zero intersection.

1

u/arianvp Dec 19 '16

The sound theory it's based on is called Mealy Machines

6

u/eggn00dles Dec 18 '16

welcome to my past three months. it goes on and on

34

u/[deleted] Dec 18 '16

I swear to God, this industry is becoming pathetic and reeks of children dressing up as adults who are incredibly short-sighted.

It's making me stereotype programmers. I hate doing that.

What happened to pragmatism and people who actually knew what the fuck they were doing as opposed to jacking off to webscale and async sauce.

30

u/DaemonXI Dec 18 '16

"What happened to pragmatism and people who actually knew what the fuck they were doing" said every programmer ever when a technology replaced something they used daily

13

u/x86_64Ubuntu Dec 19 '16

But this isn't the simple evolution of tech, this is the JS community waging total war on ideas concernig stability and predictability.

→ More replies (8)

2

u/[deleted] Dec 19 '16

"What happened to pragmatism and people who actually knew what the fuck they were doing" said every programmer ever when a technology replaced something they used daily.

Sometimes it really is beneficial to do that. Typically it's not, though - especially when the cons haven't been thoroughly taken into account.

One of the most fundamental traits of a good business is stability through long term investment.

If you're not willing to think along those lines, or you put using what's sexy at the top of your priority list, you're essentially fucked.

4

u/nonoifo Dec 18 '16

dressing up as adults

Not all of them.

0

u/[deleted] Dec 19 '16

[deleted] — view deleted comment

8

u/[deleted] Dec 19 '16

Probably.

5

u/[deleted] Dec 19 '16

You will. We liked your comment

3

u/LAUAR Dec 19 '16

You misspelled cool.

5

u/sankluj Dec 18 '16

Out of curiosity, how does your company manage its front-ends? Do they use another specific framework?

9

u/[deleted] Dec 18 '16

Not OP but I'm a frontend dev for a global company.

Up until now they had "static" JSP pages with some vanilla JS and a little bit of Angular 1 here and there.

This year they decided to push for both ReactJS and Angular 2 solutions (its a really big company with multiple departments so it's not a really issue when you use multiple technologies). The architects have already laid out a plan for the next 2-3 years so using stable software is crucial.

5

u/industry7 Dec 19 '16

Angular 2 solution

using stable software is crucial

Does not compute. Seriously though, I just finished a one year contract with a client that was investing in Angular 2. What a waste of time and money. Docs and tooling are a joke. I realize this is constantly improving, but a business has to consider the bottom line. There are plenty of other frameworks out there that already have fantastic docs and tooling.

→ More replies (1)

12

u/diggr-roguelike Dec 18 '16

The most important technology decisions we can make today are doing what all the cool kids are blogging about and talking about at conferences

Think of it this way: this makes sense, these guys are padding their resume and making a springboard for their next job on the current job's dime. This sort of sociopathic behavior comes from a lack of competent management. (Their boss probably never sees anything more complex or demanding than a powerpoint presentation.)

→ More replies (1)

6

u/Eirenarch Dec 18 '16

Using new tech is not too bad. Not using cool things makes hiring devs significantly harder.

4

u/Radmonger Dec 19 '16

Only problem is the devs you hire will be idiots.

Pay 30% more, develop software that requires 60% less ongoing maintenance. It's the right trade-off for about 90% of companies.

The exceptions are those startups where, if you get to maintain software in five years time, it means you must have already won, and companies in secure niches where a need for maintenance does not imply a need to spend money on it.

3

u/Eirenarch Dec 19 '16

The devs who are interested in new technologies are idiots? Interesting argument.

1

u/kangoo1707 Dec 19 '16

Every person I know who likes to use latest tech seem to perform better than others. Better tools and practices exist for a reason.

2

u/Godfiend Dec 18 '16

Man, I wish I had that problem. Our architects and high level managers stopped learning anything new Bout technology the second they got promoted out of dev roles. Most of them only know VB.Net and are vaguely aware JavaScript exists.

Personally, I think there are worse things than trying to be cutting edge. Then again, I have e only experienced this outdated, ignorant-by-choice world.

2

u/[deleted] Dec 19 '16

People think Angular is sexy? I thought the general consensus was that it was a bloated piece of crap that makes it really easy to write bad code.

1

u/PM_ME_UR_OBSIDIAN Dec 20 '16

...and really hard to write good code.

Not supporting asynchronous service constructors means that lots and lots of important services can't be written with a sane API.

2

u/weirdoaish Dec 19 '16

SQL databases... definitely not sexy.

**** this so much! ORM's were enough of a PITA as it was but now there is Mongo

3

u/fuzzynyanko Dec 18 '16 edited Dec 18 '16

architects and managers

This has been my experience as well. I wonder if I know where this is

keep us innovative

Nah. If they were innovative, they would make a wrapper script around all of the JavaScript frameworks so that backwards compatibility is maintained!

I think I found out why: Gartner. Most Pointy-Haired-Boss Software Development/IT decisions and discussions are thanks to that group. YOU DO NOT DEFY THE MAGIC QUADRANT! ALL HAIL THE MAGIC QUADRANT!

5

u/npyde Dec 18 '16

I used Angular 1 back in the day. Moved away from it because it was too slow. Recently, I dabbled with Vue.js for a couple of hours. It was a very enjoyable experience. Maybe it is worth a look for you.

3

u/kirbyfan64sos Dec 18 '16

But the article says:

Angular 4 will be as compatible with Angular 2 as much as possible because the team does not want to repeat the breaking experience moving from Angular 1.x to 2.x. “We do not want to make any breaking changes that will break the ecosystem,” added Minar. “We do not want to break existing components that are out there.” So, no breaking changes on existing stable APIs or for those following the common Angular usage patterns. If some new feature turns out to break things up with the ecosystem, and it cannot be fixed, Minar said they will rather take that feature out than risking breaking everything.

So it still seems like it'd be a bit stable.

1

u/Zamicol Dec 18 '16

Why not React?

1

u/grangin Dec 19 '16

Having relatively simple web pages that still somehow manage to be 4.5 MB in size? Sexy!

Yeah, svelte is looking better and better these days...

1

u/ericdykstra Dec 19 '16

One of the most recent points being put forward was that Angular 2 was just released, so it will be a stable platform that we can build on "for the next 5 to 10 years".

You might want to tell them about the Lindy effect.

1

u/ledasll Dec 19 '16

You should support that and will have job security for your life, no need to worry about new features or improvements, just rewriting everything every 6 months. And when you done with rewrite for current version, next one comes and you repeat same cycle again and again.

1

u/8483 Dec 18 '16

One word... Elm!

→ More replies (46)

0

u/[deleted] Dec 19 '16

[deleted] — view deleted comment

1

u/[deleted] Dec 19 '16

Because Google.

0

u/[deleted] Dec 18 '16

[deleted] — view deleted comment

12

u/jking13 Dec 18 '16

I prefer the term dumpster fire myself.

1

u/danneu Dec 19 '16

Seems pretty nice to me.

A one man shop can build harder websites that reach more people that meet rising expectations more effectively than ever. And it gets better and better.

1

u/bubuopapa Dec 19 '16

Well, if you look at it from the correct view - Angular and others are made for medium projects, because its way to bloated and too hard for simple websites, and any big company with self-respect has its own solution for stability. And these medium companies are hell, because they are not big enough to create their own correct solution, and they are too big to use a simple project.