←back to thread

324 points onnnon | 1 comments | | HN request time: 0s | source
Show context
breckenedge ◴[] No.42728538[source]
Glad they spent some times discussing the downsides. I’m 4 months in to a Hotwire Native replacement for an unmaintained React Native app. The differences are stark and I could definitely see myself picking up Hotwire again for another project if given the same constraints, but I’ve had good experiences with React Native in the past too. Ultimately though I just do not like all the work that has to go into maintaining a large scale React codebase.
replies(4): >>42728584 #>>42730514 #>>42731681 #>>42737998 #
mattgreenrocks ◴[] No.42728584[source]
Curious what you meant by the last sentence there. Does React uniquely complicate maintenance as a codebase grows?
replies(2): >>42728646 #>>42736403 #
breckenedge ◴[] No.42728646[source]
Theres a constant churn of a bunch of dependencies. Devs add minuscule libraries all the time. And I think some of the best React libraries have been abandoned, which is kinda sad, but nice from a maintenance perspective.

React very much feels like programming using only side-effects and that’s not really a fun experience IMHO. Performance issues are also somewhat difficult to spot in review and not very elegant to solve.

It’s been a few years since I’ve used React Native so maybe things are better now?

replies(4): >>42728699 #>>42729924 #>>42732824 #>>42735864 #
nozzlegear ◴[] No.42729924{3}[source]
> React very much feels like programming using only side-effects and that’s not really a fun experience IMHO.

This is interesting and I like the way you've phrased it. Are you talking about React Native, or React in general? And do you use hooks?

I like React on the web, but only when using hooks and only because I haven't found anything that I like more than it. I still find it tedious and overly hook-y¹. It also gives a lot of wiggle room for devs to shoot themselves in the foot with useEffect, like some of my previous clients have done.

¹ Hold on, I gotta pull in 18 hooks from across my project, npm dependencies and react itself before I can write the jsx in what would otherwise be a 10-15 line fooButton function.

replies(2): >>42730581 #>>42731679 #
1. breckenedge ◴[] No.42730581{4}[source]
Yea precisely. Hooks themselves are OK, it’s just plain ole code reuse, necessary the language itself makes that somewhat difficult. But then you’re not programming JS anymore — you’re wed to React and nothing else. I hate how it takes over codebases.