Live data from Hacker News

React Native made me give up a project today

news.ycombinator.com

11–20 of 83 posts

Re: React Native made me give up a project today

#13
post #3

I've unfortunately had this experience many times in the Javascript ecosystem as a whole. I recently started writing about going back to a Rust project (check my submissions if you're interested) after 2 years and the experience couldn't be more different (incredibly positive, can't say enough good things). I would love to develop more for mobile platforms, but I just don't think the cost to my mental state is worth…

Instead I have found working on my 5 years old Javascript projects very easy. Even with this old projects NPM can download the very specific deps without problem thanks to the commited lockfile. Then I can easly install the required node.js version (stated in the package.json) with NVM and no other problem arise.

Re: React Native made me give up a project today

#14
Getting React Native setup can be a bit of a pain, but I found the transition to M1 completely painless. You just use homebrew for things like Ruby and Cocoapods (the ARM version, but there is no special configuration required - that's what you get by default).

One thing you do generally need to do with React Native is make sure that you're on a relatively recent version of dependencies. If you're revisiting an old project you likely will need to upgrade everything. That probably does make it a bad choice for infrequently maintained projects. Although if you can avoid the native build and stick with what Expo provides then it would become painless again.

Re: React Native made me give up a project today

#15
post #8

Why give up after all that effort?

> “Why give up after all that effort?”

Because the speed of iteration in JS-framework-land is so fast that if you take more than a week or two setting up your dev environment your dependencies are already out of date and insecure, and the half of them that are using “require” instead of “import” stopped working with another library you depend on. Then, when you reported that, the maintainer replied to the GH issue, “modern browsers and Node releases have supported ESM loading for _ages_, like months and months before I started being a dev in 2018 so trust me, it’s stable now.”

(Not that I’ve had an experience like this, ever. And if so, not in a least six months. Or two. Whatever; I’m just slow, obviously.)

Re: React Native made me give up a project today

#17
That's one of the big reasons why I've been Nixifying my React Native projects, and gradually it seems to be working out. A number of projects seem to be starting to do something like that as well, like status-im, and occasionally I find their configs helpful. By itself, Nix doesn't help with the M1 React Native problems, but with fastlane, Ruby, cocoapods, things really nicely just worked, and once I've figured everything out once, I'll be able feel a breath a relief the next time I come around (except I suppose Xcode, which isn't properly Nix-able).

Re: React Native made me give up a project today

#19
post #6

Judging from your fourth row, it seems to be that "Apple made me give up a project today" is the correct headline, since M1 is apparently the issue.

The native toolset works fine on M1, seems like dependencies issues, like always with React Native.

Re: React Native made me give up a project today

#20
> React Native is great; React Native firebase is great; Firebase is great; Apple is great.

Forgive me for saying this, but the fact that you started with that line makes it sound like you might have some Stockholm Syndrome (or perhaps Sunk Cost Fallacy is more appropriate here). Because what you wrote afterwards makes it clear that at least some of the parts that you mentioned afterwards are in fact not great.

Post reply on HN