
Why Angular Made Me Quit Web Dev - setra
https://medium.com/@TobyMerk/why-angular-made-me-quit-web-dev-f63b83a157af
======
TheChaplain
I quite like Angular, it's a bit lite Django with batteries included. Very
organized, TypeScript(!), reusable components, easy to write tests, create
models, call Rest end-points for data, routing, make lazy loaded modules, scss
and so on. Documentation is superb. It took me only a few days to learn and
become productive.

I tried React but it felt very incomplete and to get things done beyond the
basic tutorial I had to go all over blogs, articles and forums to find
instructions (often incomplete or out-of-date). Still it required a
complicated process to get data from a SpringBoot server (I was told I need to
add Redux, then some other http library for the actual calls. Then try to tie
everything together... well, I gave up.)

That was a year ago and I'm sure it's better now, but Angular at that time was
very mature compared to the hackish React.

~~~
jordache
i wonder how many react apps are out there with just state management via
container components...

------
jt2190
Working with anything new can be a humbling, frustrating experience. In some
sense, this _is_ the job of programming. (Why would you write the same code
over and over again?)

That said, I’d be interested in hearing what kind of “first-time encounter”
experience the author is looking for, and whether he’s found it in another
tool. Barring that, at least some more specifics on the troublesome areas,
something like bug reports, e.g.

“I _expected_ one thing, but I _actually got_ another. Here’s why that’s bad.”

------
snapdaddy
As someone who has been doing web dev for a long time, I find it interesting
that I can understand the author's points, but that I don't relate to them at
all.

For example, I agree that the angularjs to 'angular' transition was a bit
wonky, but I don't understand having resentment or anger build up because I
have to be a little more careful about how I craft search queries.

It feels like he's frustrated with a lot of things, and once you get in that
mindset, each irritant takes on huge significance.

You don't start doing web dev because you really want to work with Angular,
and I think that's the problem. You choose Angular because you think it will
help you achieve an end-goal.

I suspect that he started working on a codebase that had already chosen
Angular and he had no buy-in. In that case, problems become frustrations,
rather than just 'things to learn'. For example, the documentation on the
module system is pretty good. It covers the reasoning, shows a basic example,
and then delves in for when you need more information:
[https://angular.io/guide/ngmodules](https://angular.io/guide/ngmodules).

Anyway, I enjoy working with Angular, but if something else works better for
him, more power to him.

------
monkeynotes
Anyone out there who has experience that maybe isn't so bad? I am just about
to take a job where I'll be ramping up on Angular 7. I'll be coming from React
which has its own problems and complaints, but it's more of a love-hate thing
with React (and a good amount of the former). This article has absolutely
nothing nice to say about Angular. What have I gotten myself into??

~~~
ahayter
Got a new full-time gig working on an Angular 5 app about 3 months ago
(they're behind in the upgrading to 6/7 for god knows why). Coming from
working on an angularjs app for around 3 years.

I'm unimpressed with essentially the entire framework. It feels over
engineered and overly complex with little benefit. Note that I'm saying it
feels that way, maybe at some kind of scale this is very helpful, the codebase
I'm working in is about 150k sloc.

The biggest gripe for me is how unintuitive it is to compose and reuse bits of
UI. Having written almost no React, and absolutely no React professionally, I
understand how to compose react components and the basic patterns for
communicating between them. It's just not as easy in Angular, so for the most
part it just doesn't happen (at least with the devs I'm working with).
Patterns such as render props, HOC, stuff like that is not straight forward in
Angular. I'm probably not thinking in the "Angular" way or something.

The dependency injection patterns that Angular is so fond of is something I'm
not enthralled with as well. It made more sense in angularjs since es2015
modules weren't prevalent at the time, it really solved a problem there. I
don't think it's as helpful in Angular now, and is yet another framework
specific thing you're going to have to grasp at a decently deep level.

I work right next to another dev that was hired about a month before me. He's
coming from writing React for the last couple of years, and angularjs was the
first SPA framework he ever learned. He is constantly cursing how Angular does
just about everything, he's not a happy camper.

If I was calling the shots today I would not use Angular for my SPA framework.

~~~
jordache
Are you using Redux for state management in react? You mentioned the "basic"
patterns for communication between components. I assume you did not have
complex state management requirements.

The DI framework in Angular is not concept novel to Angular. It's essentially
an implementation of the DI.

------
jordache
the author's rant doesn't make him sound very intelligent. There isn't
strength to any of his points, for anyone who has spent more than half-assed
effort at trying to learn Angular.

~~~
draluy
Can you elaborate on one? I think I'm part of the not very intelligent crowd
that actively dislike angular due to the points raised in the article.

~~~
jordache
The guy's ranting about Typescript with no strong arguments to back up his
diatribe.

He also described the experience of writing simple apps that resulted in very
poor performance. From my experience, you'd have to really hard to re-create
non performance scenarios. Especially if he is only creating simple use cases

In summary he is ranting about fairly superficial points that does not cancel
out the benefits angular framework provides for certain types of
organizations, when compared to vue or react..

------
korynunn
I associate with this so much it hurts. I have wasted thousands of my
employers dollars just waiting for this pile of shit to compile or run.

If you like light, fast, opinion free UI tools, maybe give my module fastn a
go: [https://GitHub.com/korynunn/fastn](https://GitHub.com/korynunn/fastn)

~~~
jordache
sarcasm at the end there? ditch a product that has a global community, built
legit enterprise scale apps with, for a personal project found on github?

~~~
korynunn
No this is my module that I've used to build enterprise apps with.

I've used both for years, feel free to critique fastn when you've tried it for
a week.

------
icedchai
So why not go back to regular web pages ("server side rendering") + jquery?

------
ssharp
Not the point of the article, but how exactly did the iPhone's utility
flatline because they removed the headphone jack and how is a headphone jack a
"vital" feature, considering the rise in popularity of blueetooth headphones
and the fact that the iPhone ships with the 3.5mm dongle?

~~~
duckMuppet
Mom: "What are you doing on your computer?"

Child: "What's a computer...."

Additionally, he must've missed the last 20+ years after Apple moved away from
the ppc chip.

Subsequent editions of os x after were always removing great tools, then
rebranding and repackaging them to sell as a new feature. Up until you had to
pay for the dev tools..

The best has been iDevices though. Premium price through artificial resource
scarcity.

Ask that being said, the author and like the type who instead of looking for a
better product, would look to govt and regulations for Apple, and the web dev
sphere. In the name of fairness I'm sure.

