4 ms·
I think there are a few other major problems, but I think many apps are unlikely to hit them in the same way that they are unlikely to have integration issues w
by danpalmer 8y ago
I think there are a few other major problems, but I think many apps are unlikely to hit them in the same way that they are unlikely to have integration issues with native code, because they don't need much native code.
Most apps only need to be a bunch of table views and detail views, with some forms. Line of business apps that need to be efficient (not pretty) or that don't use many of the advanced platform features, short lived apps for events/marketing/competitions/etc, apps for restaurants or shops, these are all places where I think React Native fits perfectly.
However, if you want your app to have the best performance (spoiler alert, you probably don't), you want to be at the cutting edge of platform support, or you want to create experiences that fit on the target platform perfectly, then I think native is the way to go. Most apps do not need this.
- Cthulhu_ 8y ago> However, if you want your app to have the best performance (spoiler alert, you probably don't) Actually you do. An app like Facebook, Instagram, etc are used for hours a day; having a suboptimal performance directly translates to battery drain and a poor user experience, which costs you money. I'm sure someone smarter than me has a nice soundbite about using the best tool for the job. React Native is a compromise. Web technology on mobile is a compromise.
- danpalmer 8y agoI did say “probably”. Facebook and Instagram definitely care about the last bit of performance. Your typical line of business apps don’t need to, and that’s a lot of the market.
- Longhanks 8y agoDo they? Their apps are so inefficient that both of them have a "lite" version (instead of fixing the main apps) to save memory and perform better.
- samat 8y agoYou seriously underestimate kind of phones this lite apps run on.
- ilovecaching 8y agoYou have no idea what kind of low powered devices are out there in third world countries, with fragile/low bandwidth internet connections that need to connect to Facebook. The main apps are not the problem.
- uitgewis 8y agoIt's ironic you should mention apps like Facebook and Instagram[1]. They use React Native. 1: https://instagram-engineering.com/react-native-at-instagram-dd828a9a90c7 https://instagram-engineering.com/react-native-at-instagram-...
- on_and_off 8y agooh so that's why each time I reopen an instagram convo from the background, I have a blank webpage .. thanks RN !
- orbitur 8y agoBut they DON'T USE React Native in the main feeds of either Instagram or Facebook. You know, where users spend all their time and performance matters. You linked to a post about a bunch of settings/picker screens in Insta. On the FB side, my understanding is that only the Marketplace tab is RN, and maybe the settings & notifications.
- parthdesai 8y ago> having a suboptimal performance directly translates to battery drain and a poor user experience Removing messenger and fb app has increased my phone's battery life and my phone has become faster.
- vlozko 8y agoSpoiler alert, more than you think you do. I was involved in refactoring a product detail page for an e-commerce app. It was a several month long project as the view is pretty complicated and the only goal was to improve UI performance. Our efforts led to a direct, measurable result in user engagement and an increase in items being added to the cart.
- danpalmer 8y agoSure, I'm actually in the same camp on that one! However, most apps are not ecommerce apps that will have a measurable benefit from speeding up particular views.
- vlozko 8y agoGeneral user engagement is a measurable benefit, regardless if it's for e-commerce purposes or not. Other apps that provide a blazing fast experience set the standard for what users expect out of an app. If your app performs below that threshold, users are less likely to use it. Loading performance is the biggest reason I reach for my Harmony physical remote rather than ever using the app.