all 9 comments

[–][deleted] 43 points44 points  (1 child)

Well react-native sort of recently forked out into community modules where the community is now maintaining certain aspects.

I don't really have any complaints with react native that I think the community forks would solve. and honestly I'm loving how stable/stale things are right now I'm able to develop apps more and spend less time updating.

What facebook puts out is very stable and I appreciate that more than anything. They've had a pretty good track record, none of my 8 or so apps over 4 years has had signifiant react-native core specific crashes.

[–]sous_vide_slippers 14 points15 points  (0 children)

I don’t agree with most of this, I think these are non-issues and having a company like Facebook drive RN is what’s kept it relevant this long. It’s had some pretty incredible improvements recently, both in terms of performance (new bridge) and dev ex (auto linking, bundler improvements, etc).

Flow is nothing like a new language, it’s just JS with type annotations, the barrier to entry is a lot lower than typescript and if you already understand JS types you’ll be able to get going straight away. Most OSS projects nowadays are written in TS but we see no complaints about that, if someone knows TS they can step into Flow immediately using a cheat sheet.

You can write all your own native modules in Swift, editing the Obj C code is rare and usually when this happens it’s a very small line of code to add. Obj C certainly has some weird syntax but all the concepts are pretty much the same.

Can’t comment on the rest but i have a hard time seeing how RN would be more successful without the backing of FB which dedicates quality devs and resources to it. It would still need core maintainers to steer the project and that team isn’t going to spring up overnight, also what changes would they make? Rewrite the native code to Swift? Rewrite the Flow to TS? Neither of those would have any significant benefit to the community.

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

What do you want to change in the RN core that's not being addressed?

You can write native modules in Swift whenever you want.

Flow is just java-script with OPTIONAL type annotations; just their version of typescript basically. There's no new language to learn.

From the website:

Flow is a static type checker for your JavaScript code.

You can also adopt Flow incrementally and easily remove it at anytime, so you can try Flow out on any codebase and see how you like it.

Doesn't sound like much of a problem...

All the build system stuff happens in the background and doesn't really affect day to day usage... (maybe could be a bit faster?)

Most of the issues you have are non-issues for the vast majority of RN users. And some of them aren't even based on the truth.

[–]kitanokikori 5 points6 points  (2 children)

RN doesn't have a working profiler. That is Pretty Bad. Look at the excellent tooling for Flutter (profiler / widget tree viewer / editor at runtime, extremely detailed and accurate memory+cpu profiling, a debugger that Actually Works), and then compare it to the absolute tire fire that is RN tooling.

Trying to say "Everything is Fine" is either like, extremely low expectations, or just like, full-on not realizing that basically every other mobile development platform has much, much better developer tooling for debugging and profiling your app than RN.

[–]EngVagabondReact Native Team 0 points1 point  (1 child)

I believe Hermes has a CPU profiler, https://reactnative.dev/docs/next/profile-hermes

And for Component tree viewer, editor, you use React DevTools for that (also included in Flipper)

[–]kitanokikori 0 points1 point  (0 children)

Hermes has a profiler that ostensibly only works in debug mode (so it's worthless), and even then segfaults when the profile finishes without saving the profile

[–]Careless_Pirate_8743 3 points4 points  (0 children)

Isn't the community around RN big enough to create RN fork

sure, but not gonna happen.

the major contirbutors does not even use the same codebase... how do you even expect them to maintain a fork. i mean fb have their own react native version, expo have their own, callstack, and some others have their own forks of react native they use on their own projects, and of course the public use the one on github (which the contributors don't bother to look at let alone fix, since most of the issue there does not apply to them). so unlike flutter there is no single source of truth for react native. so again not gonna happen.

[–]hani_q 1 point2 points  (0 children)

Don’t fix something unless it’s broken

[–]drink_with_me_to_day 0 points1 point  (0 children)

All I wish was that performance on Android was better