Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
hey mom its 420
May 12, 2007

lunar detritus posted:

Then you go look for a job and they ask for the fancy new stuff and oops, sorry.

yeah, but that's more like terrible hiring practices for some jobs, which is a shame. on the odd occasions when I have to interview people, I try to gauge their fundamentals instead of screening if they know all the cool new libs. imo you can quickly pick up all these new fancy techs (they're not that revolutionary really) if you get the job. if your potential employer doesn't share that sentiment, you can also just take a day or two to try them out and then just say you've used them and know them on the interview

but yeah, probably the worst react apps to maintain have been the ones using redux and no framework. in my experience they almost always devolve into 3k line files with actions for each big model in the app, and actions just dispatch whatever other actions they want and have access to all state. and if you want to follow what's going on, good luck jumping between a few different react components, reducers and actions files just to figure out what happens when the user clicks a button.

Adbot
ADBOT LOVES YOU

hey mom its 420
May 12, 2007

haha, that seems par for the course alright. most of these codebases I've encountered didn't have types or tests. but yup, goes to show how that's a bad architecture since everything is an intricate and delicate web of dependencies between these layers, it doesn't matter if you can reason within the layers themselves, you'll always have to keep everything in your head when coding, or else risk these layers miscommunicating.

what I like about just fetching (and POSTing) inside components (and using tailwind in them) and keeping minimal global state is that even if you have some sort of weird wtf problem, it's fine because it's encapsulated within the component so you can probably manage it. whenever I deal with our old codebase and see a vue component that hooks up to five different "stores" and reads state from them and dispatches actions I just groan

hey mom its 420
May 12, 2007

If you call having a positive but measured opinion about something white knighting then sure I'm white knighting react lol. It has its own bag of warts and footguns, but think it's been consistently making really good innovations (the data flow, JSX, TS support, then hooks, suspense, server components and server actions) while remaining backwards compatible.

contrast that with vue, which had to make a huge breaking change just to catch up to react in terms of TS support and better ergonomics with something that resembles hooks. we were thinking about migrating our terrible vue 2 app to vue 3 but then just decided to go switch to react because it was the same amount of work.

hey mom its 420
May 12, 2007

that's an interesting problem I'd have to think about more, but intuitively I'd be against using i18n for "easy mode". that really depends on if you actually ever plan to translate the app into other languages, since then things might get a bit hairy.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply