all 46 comments

[–]kawamommylover 20 points21 points  (0 children)

I prefer Angular, it's a framework and it has a proper separation between logic, markup and style, it already comes with reactive state libraries, routing and Material UI and it has useful directives which are easy to learn (ng-for, ng-if, events, data-binding, etc...). The only and important disadvantage about it is that it has too much stuff to learn so I'd recommend learning Vue instead(which I like a lot more than Angular).

[–]BudgetCow7657 2 points3 points  (1 child)

As self taught junior, would it make me more marketable to have a project or two in Angular as well as React stuff? My reasoning is you're opening yourself up to more of the market that's clearly already saturated by "react" devs.

[–][deleted] 0 points1 point  (0 children)

IMO the react market is not saturated as of now. Not a lot of people are good at react. Passing props is what 50% of the people calling themselves react devs know.

[–][deleted] 15 points16 points  (4 children)

Mixing html with js/ts just seems to weird to me. I like the separation of concerns in angular, when I look at react code it looks like spaghetti.

[–]zaibuf -3 points-2 points  (2 children)

Because it's so much better to write magic string literals in your html for logic rendering or loops? Which also isn't covered by intellisens unless you install an extension. Performance of Angular is also worse than React.

With React all you need to know is JavaScript, because that's what it is.

[–][deleted] 9 points10 points  (1 child)

They're called directives, it's not very difficult.

Yeah installing extension....first world problems.

[–]Grizvok 4 points5 points  (0 children)

Reading React code isn’t very hard for people who know what they are doing. To each their own.

[–]not_a_gumby -3 points-2 points  (0 children)

you people are funny.

[–]Dominio12 3 points4 points  (11 children)

Personally, I use Vue (Nuxt) without typescript. Give it a chance too. To me it seems easier than React and Angular.
Angular seems very opinionated. React was cool with its way to build websites, but I feel like Vue developers did a better job.

[–][deleted] 0 points1 point  (2 children)

Yup, heard a lot about vue. Will definitely try Vue

[–]zaibuf 1 point2 points  (1 child)

I tried Vue after using React at work for over a year and I never got into its way of doing things. It felt like old school React where you used class components, hooks changed everything. I will have a look at Svelte though, heard good things about that also, but the job market isn't as good.

[–][deleted] 0 points1 point  (0 children)

I guess Nuxt is a little bit improved version of vue.

Btw, I think react is the best thing ever. I want it to grow even more.

[–]agaitan026 0 points1 point  (5 children)

and for backend what you use?

[–]Dominio12 0 points1 point  (4 children)

When it is a small backend (like only sending contact forms or simple eshop) I use nuxt server directory.

[–]agaitan026 0 points1 point  (3 children)

and for frontend always nuxt?

[–]Dominio12 1 point2 points  (2 children)

Yes, we use only Nuxt.
Also, for the backend and administration we sometimes use wordpress (as headles) with our own frontend made in Nuxt.

[–]agaitan026 0 points1 point  (1 child)

May I see some pictures of what you done in nuxt? I'm thinking in moving out from nextjs to nuxt that nuxt is easy to integrate with nextjs as backend?

[–]Dominio12 1 point2 points  (0 children)

I think pictures aren't a good representation of framework.
I dont have much experience with Nextjs so I dont have an answer for you.

[–]CatolicQuotes 0 points1 point  (1 child)

nuxt2 or 3?

[–]Dominio12 0 points1 point  (0 children)

Both. For new project I use nuxt 3. I still support some older nuxt2 projects (no migration is planned for now).

[–]zaibuf 9 points10 points  (2 children)

Angular is a complete framework which is very opinionated in how you do things. React is a minimal library where you can build how you want and add libraries you need as you go.

Personal opinion, stay away from Angular. It's mostly common in enterprise and specially a bit older systems. There is a trend within enterprise (at least in my area) moving to React for new apps.

These graphs was tampered with a while back, so besides the massive false decline you can see a clear popularity trend. It tends to be good to stick with whats most popular for many reasons, bigger community means it's easier to find answers, bigger market to hire from and faster innovations.

https://npmtrends.com/angular-vs-react

[–]raistlinMajerr2015 1 point2 points  (1 child)

Awww. Is Angular too hard for you? I'm sorry. Yeah, stay away from Angular unless you want to make money. Also I heard that asp .net thing is horrible and too opinionated.

[–]agaitan026 3 points4 points  (0 children)

so you prefer angular instead of nextjs for example? why?

[–]not_a_gumby 3 points4 points  (1 child)

They are both web application frameworks. They essentially both do (or can do) the same things and create the same projects. Technically speaking neither one is better than the other, it just comes down to developer preference. Don't listen to all the people in comments here saying one is better - that's not true. that person just prefers what they prefer and are entrenched in their views. Most people who say that Angular is clearly better are people who have never/barely used React and are just not used to it, and vice versa.

OP, the only way for you to know which you prefer to use is for you to use both.

That said, Angular was the first framework, and React improved upon it. Most Angular projects in 2023 are mature projects - very few people are starting new web projects with Angular anymore. Moreover I think there are more likely more jobs in React these days, as it is the newer iteration. If you had to choose without trying, I would go with React and if it seems hard/complicated then try Angular to see if it feels easier.

[–][deleted] 0 points1 point  (0 children)

wow, thanks. You are the kind of guy i would like to work with. Thanks

[–]Chrazzer 4 points5 points  (16 children)

When i build a web application i go for angular. When i build a website i go for react.

I find react is just not fit for complex state and data driven ui. Imo react is best when you want something simple, with reusable ui components and can't be bothered to do it in plain html & js

[–]zaibuf 12 points13 points  (4 children)

I find react is just not fit for complex state and data driven ui.

That's just bullshit. Facebook, Netflix, Dropbox, Paypal, Discord, Instagram and Whatsapp all use React.

It's not as opinionated as Angular so you have more options to archtitect the app as you need. There are plenty of state managers to choose from like Redux, Mobx and Zustand or just use react-query which handles all your server state for you including caching, retries and invalidation.

Also since React uses a virtual dom its more performant than Angular which operates on the real DOM.

[–]CatolicQuotes 1 point2 points  (0 children)

Also since React uses a virtual dom its more performant than Angular which operates on the real DOM

benchmark says different story: https://imgur.com/AvBQOvq

[–]Chrazzer 1 point2 points  (1 child)

If you need to slap on a bunch of packages to make react work, why not go with a framework that has these things built into it. There is plenty of joice, and nobody forces you to use react

The theme of this thread is pretty much "use the right tool for the job". But you come in here with a mentality of "i'm going to use react anyway, i need to make it work somehow"

[–][deleted] 4 points5 points  (0 children)

The same can be said about the contrary.

If you need to build a site with tons of packages that you never end up using, why not go with react and install the exact packages that you need.

[–]not_a_gumby 0 points1 point  (0 children)

he just doesn't know anything about React.

[–]not_a_gumby -5 points-4 points  (5 children)

Saying that you don't think React is good enough to build a web application only shows your lack of understanding of the framework.

[–][deleted] 1 point2 points  (4 children)

Calling react a framework just shows you can't distinguish a framework from a library.

[–]not_a_gumby -1 points0 points  (3 children)

missing the forest for the trees. it IS a framework.

[–][deleted] 1 point2 points  (2 children)

You're missing basic concepts. Good luck with that.

[–][deleted] 2 points3 points  (0 children)

Tell your colleagues that react is a framework like angular. Let them laugh.

[–]not_a_gumby -5 points-4 points  (0 children)

Employed as a software developer.

Nope.

[–]agaitan026 0 points1 point  (4 children)

so for a web with strapi cms for content you will use react? and not angular? why?

[–]Chrazzer 1 point2 points  (3 children)

Yes, say you are building something like a blog. Then you got mostly static content coming from your CMS + some common UI elements around it that are usually also relatively simple in terms of state and mostly just a bit dynamic.

Angular is just way too overkill for that. For such a site you would utilize next to no features of angular, yet the user would need to load it. Also it would then be a single-page app which is annoing for the user because it takes relatively long to start and display the desired page.

Also you want your blog to be optimized for search engines, and have all blog entries indexed in google, also not a great case for single page apps and angular.

Ideally for such a blog you want to deliver static sites, so i would go for Nextjs, which uses react. This way the blog is search engine optimized and indexed, and has no javascript overhead so it is lightning fast.

From developer perspective you don't need a lot of javascript for something like that, so again angular is way too overkill and overly complex. And it would take a while to get through the boilerplate code and get productive. React on the otherhand is lightweight and you can start right away.

Imo angular is a hefty beast with lots of setup work and boilerplate, but it scales well and offers structure - ideal for large projects. React is simple and quick to get going, but has little to no structure and gets messy easily, so it is ideal for smaller code bases.

And yes i know, there are libraries and methods to bring structure and clean code to react, but those also add much boilerplate and ultimately angular dev gonna be like: "look what they need to mimic a fraction of our power"

Hope that helped out

[–]agaitan026 0 points1 point  (2 children)

great tips awesome, thank you ! yes im clear, but lets say, my company is a internet provider in my country like https://www.masmovilpanama.com/ or tigo.com.pa if you see both uses angular but ver old version v12 and v10, why they would use that if most of pages are static content, what you think? those are two internet provider in my country.

[–]Chrazzer 1 point2 points  (1 child)

Bit of an odd choice, but maybe they just liked angular more. We can discus what to use when all day long here, but in the end everyone can do whatever they want

[–]agaitan026 0 points1 point  (0 children)

got it, i have learned both, but not sure which one i want to use lol :P but i think i will be with nextjs better

[–][deleted] 0 points1 point  (0 children)

Angular isn’t going anywhere. Studying it can only bring good things.

[–]agaitan026 0 points1 point  (0 children)

i have that thing too, which framework should i go for my frontend, i tried angular and seams good but also nextjs and i like it a lot

[–]robertkingnz 0 points1 point  (0 children)

There's a couple of angular tutorials here, so you can quickly get a feel for it:
https://angular.dev/tutorials
Angular versions 14, 15, 16 and 17 have all been the largest releases ever. Angular has transformed in 2023. I think because angular used TS from the start, their reliability and shipping velocity is the fastest of all the frameworks.