DEV Community

Discussion on: The perfect Stack for building type-safe applications in 2025

Collapse
 
cmacu profile image
Stasi Vladimirov

You lost me at next/react… in 2025… I guess if you are looking for the least performant solution with the worst memory then it’s a decent choice.

Collapse
 
anmolbaranwal profile image
Anmol Baranwal

It depends on the context. Some of the points may be valid, but you're choosing raw performance over developer experience.

If performance is the top priority, there are of course better options. But if you're balancing speed, ecosystem and developer experience, this is still a strong choice in 2025.

Collapse
 
cmacu profile image
Stasi Vladimirov • Edited

What part of the developer experience makes React a strong choice?

  • Maybe it's the part it's not a framework, but a "library"?
  • Wait, is it the documentation (:puke)?
  • Hmm, maybe it's the learning curve? But really?
  • I guess it's the tooling (vite/vitest)... Oh snap
  • I got it... It's the rules of react/rules of react state/rules of of react styling/rules of ??, sorry had to double check if they had invented a new rule while I was typing this
  • PR comment: Don't forget about useCallback and useMemo, useGrandma and please don't ever useGrandpa? What do these actually actually do? And let's not talk about useImperativeHandle.... (background screams)
  • I am telling you it must be because they are following the web standards. html/templates? Nope jsx. Routing/location? nah, react routing! css/styling? No way, styled components. SSR, how about "use server"..
  • Perhaps it's the fragmented ecosystem because its always fun to compare class components, server/client components, hooks, observables and 10 other ways you can learn to manage state at your next job.
  • Must be the typescript support! React must be written in typescript? Right? Right? OK, it doesn't matter. Don't worry, there are dozen of functions like forwardRef that don't support generics.

Wait, what is developer experience? Ahhh, getting paid to know all possible edge cases and write more code than necessary to get the job done... That's why. Now it makes sense!