Live data from Hacker News

Why Learning Angular 2 Was Excruciating

hackernoon.com

101–110 of 226 posts

Re: Why Learning Angular 2 Was Excruciating

#101
post #4

I never used Angular 2, but that sounds like the biggest issue is a release candidate that should have been called a beta or alpha release. I sometimes tend to try out beta releases when learning something new and interesting, but that does tend to backfire now and then when it's unstable enough that I can't tell if I'm doing something wrong, the framework is buggy or the documentation is simply outdated.

Exactly this. I also just started using Angular 2. Unlike the OP I have a lot of web development experience, but this is the first time I've used Angular or Typescript. While I really like Angular and am really enjoying working with it, it is pretty exasperating to have loads of breaking changes between release candidates. That's not what release candidates are for. Forms are the worst. You're not supposed to introduce, deprecate and then remove whole modules between release candidates. There are even major, breaking changes between the final release candidate and the release version 2.0.0.

Re: Why Learning Angular 2 Was Excruciating

#102
NPM and semantic versioning allows to manage all the dependencies. However the fine granular nature of js packages, the large number of dependencies, lack of governance and possibly discipline result in an experience that is very different from the Java environment.

Re: Why Learning Angular 2 Was Excruciating

#103

To me this is still why React feels like the first front end UI framework that got it "right." It stays close to vanilla Javascript. There's a tiny API surface area to learn, and the rest is vanilla Javascript classes and functions. Angular's API, and apparently Angular 2.0's API, is still large, and strays far from vanilla Javascript

Tell me about it! Literally all you need is React. Oh, plus react-router for routing, I guess. And Redux, obviously. Plus react-router-redux to link them together, and react-router-scroll for scroll history. Also react-intl to handle internationalisation. And react-helmet to do document header stuff. You'll need to use immutable as well, obviously , so you'll need redux-immutable. And redux-saga. Hmm, you'll definite…

Lmao, this is exactly how I've felt, and why I'm using ordinary js with closures and a bit of jquery for the time being while I get up to speed and figure out wtf is going on.

"Javascript the good parts" has served me well.

Re: Why Learning Angular 2 Was Excruciating

#104
post #23

I have been wondering why a one-person project like vue.js seems to be saner than the big guns such as angularjs and even react-ecosystem? I have been trying all three recently back and forth and now leaning back to vuejs while waiting for its 2.0 release.

I was an Angular fanboy but one look at version 2 had me reconsidering. I was introduced to Vue at a local JS developers meeting.

I'm having little problem learning the language. My problem was trying to bite off the CLI - Webpack is a huge learning curve for me.

From what I understand in Vue 2 they're tackling that by having two different versions of the CLI, but I haven't checked it out yet. Vue listens to their developers and really does try harder.

Re: Why Learning Angular 2 Was Excruciating

#105

Earlier quoted context omitted.

Unfinished? How about never finished. >Angular 2 is going to have breaking changes only every 6 months from now on. So the next one would be around February with Angular 3. Yes exactly, they’re also finally switching to semantic versioning which is a huge win in my opinion. IMHO, breaking changes every six months is the recipe for an shitshow of an ecosystem. http://juristr.com/blog/2016/09/ng2-released/

I don't think the idea of "planned" breaking changes every 6 months to be such a bad thing. A major release twice a year that you can upgrade to when you're good and ready. Sounds like a way to prevent having to completely rewrite from the ground-up to keep up with the web a la angularjs. I like React because it's a lot smaller but I totally see the advantages of Angular 2 and I kinda dig the major release cycle.

This release cycle is fine so long as you don't rely on anything but Angular 2.

As soon as you rely on packages that support Angular 2, the 'good and ready' argument breaks, since you can't start till all the packages you rely upon have already made the upgrade, and you can't take to long either, because you can't expect further work or fixes to be made to older versions of the packages.

12-month breaking changes, that would have made sense.

Re: Why Learning Angular 2 Was Excruciating

#106
post #76

I've said it before here and I'll say it again: the JS ecosystem is moving in the wrong direction. Sometimes I feel that with Javascript, we developers have taken something that wasn't ours, and we're in the process of destroying the best thing there ever was about it. One of its best qualities used to be that you could have absolutely no idea what you're doing, read a few bad tutorials somewhere on the web, mash you…

Don't worry too much.

I don't see browsers dropping ES5 support any time soon, and jQuery isn't going to disappear.

There will still be plenty of opportunity for people to jump in seize great market opportunities using PHP, jQuery, and chewing gum while all of us full-time professionals are here on HN arguing about Angular vs React and whether npm is insane, awesome, or both.

Re: Why Learning Angular 2 Was Excruciating

#107
post #87
post #76

I've said it before here and I'll say it again: the JS ecosystem is moving in the wrong direction. Sometimes I feel that with Javascript, we developers have taken something that wasn't ours, and we're in the process of destroying the best thing there ever was about it. One of its best qualities used to be that you could have absolutely no idea what you're doing, read a few bad tutorials somewhere on the web, mash you…

I get where you're coming from but your comment boils down in favor of unoptimized and insecure code. And I can't agree with that. I would also point out that the web is the most backwards-compatible platform of all time and Alice and Bob can continue doing their thing for as long as they want. The tools that professionals use today are an abstraction to increase efficiency and reduce code reuse, in the same way most…

I appreciate your position, I really do. It's not like I am clear-cut on this myself, even if my frustration makes it sounds like I am. I appreciate that the language, the platform and the web itself needs to evolve.

But I object to the argument that people can just continue to do their thing, because people in that position are overwhelmingly dependent on the ecosystem. Guidance, libraries, tools. And that ecosystem has left them behind, or is at least very far along that road.

Of course reasonable people might disagree, but to me, that people might write unoptimized (or just plain horrible) code is a very, very small price to pay for the empowerment the web delivers to them. And as to "insecure" - Jane and Joe want to show a slideshow of their hand-baked Macarons, not write banking auth systems. If they manage to open up a security risk, the attack surface is usually rather small, and the fault lies with the platform.

No, I stand by this: Javascript was our generations Hypercard, on steroids, and we've almost completely squandered its potential.

Re: Why Learning Angular 2 Was Excruciating

#108
post #89

Earlier quoted context omitted.

Tell me about it! Literally all you need is React. Oh, plus react-router for routing, I guess. And Redux, obviously. Plus react-router-redux to link them together, and react-router-scroll for scroll history. Also react-intl to handle internationalisation. And react-helmet to do document header stuff. You'll need to use immutable as well, obviously , so you'll need redux-immutable. And redux-saga. Hmm, you'll definite…

This is exactly why I don't buy the argument that frameworks are so much easier to use and learn than languages. I look at the state of JS these days and shake my head in disbelief. When did it get so needlessly complex? More importantly, WHY?!?!

People who aren't doing complex things start using libraries that are designed to manage complex things, even though they don't need them, then complain that they're overcomplicated. Repeat ad nauseam.

Re: Why Learning Angular 2 Was Excruciating

#109

Earlier quoted context omitted.

Unfinished? How about never finished. >Angular 2 is going to have breaking changes only every 6 months from now on. So the next one would be around February with Angular 3. Yes exactly, they’re also finally switching to semantic versioning which is a huge win in my opinion. IMHO, breaking changes every six months is the recipe for an shitshow of an ecosystem. http://juristr.com/blog/2016/09/ng2-released/

One other project comes to mind that also updates every six months: Ubuntu. Last I checked, their ecosystem was doing fairly well. I wouldn't consider Ubuntu "unfinished" unless we're talking about the state of all software everywhere.

But, of course, Ubuntu also has LTS (Long Term Support) versions for people who don't want to upgrade frequently (you get security patches and the like but otherwise things stay stable for years).

http://tech.shantanugoel.com/2008/05/21/ubuntu-what-exactly-...

Re: Why Learning Angular 2 Was Excruciating

#110
Honestly, what framework (web or otherwise) has ever NOT been a complete CF to get started with-- especially when one is "winging-it" by themselves doing new things using new tools?

How much frustration is "normal"? How much "confusion" is normal? I say A LOT of both.

Post reply on HN