Live data from Hacker News

Building all of our new mobile apps using React Native

engineering.shopify.com

271–280 of 588 posts

Re: Building all of our new mobile apps using React Native

#271

Earlier quoted context omitted.

That really just says it all doesn't it? It's basically an admission that the use of cross-platform frameworks is worse for customers/users, but they're going to ignore that to optimize for their own software engineering org.

All this says to me is that they wanted to limit their risk exposure by doing an experiment on Android while maintaining native on iOS. Why is that hard to comprehend? Their move to RN this year should underscore the success of that experiment.

> Why is that hard to comprehend?

Probably because that's not what the article says.

Re: Building all of our new mobile apps using React Native

#272
post #70

Earlier quoted context omitted.

It can't be overstated how many apps are absolutely dependent on working push notifications (all chat for example) and can't be replicated as websites. And that's not yet implemented for iOS so we're all at Apple's mercy until it is, which may never be.

I can’t stand push notifications, I disable them all except for a couple (like signal). They are usually only part of the app to manipulate you into using it constantly

This is exactly what I was thinking a while ago. Most apps won't give you good notifications, just spam you so there could be an app that lets you have some good notifications instead of disabling them all through a filter.

I never looked into whether this is possible to do on android or iOS. I thought it might not be given the power available to hijack all the notifications available.

Re: Building all of our new mobile apps using React Native

#273
post #188

Earlier quoted context omitted.

> Why not ionic react? https://ionicframework.com/blog/announcing-ionic-react/ React Native uses the Native Components of the platform for UI. Thus Native. Ionic React is basically a web app, this is Ionic with React instead of Angular. So basically React Native == use native GUI components. Ionic React = uses HTML/CSS in a webview embedded in a Native App, just like Phone Gap/ Cordova, Ionic is just a framework on t…

Most react native apps have a custom UX but needs native plugin access. This is the point of ionic react.

> Most react native apps have a custom UX but needs native plugin access. This is the point of ionic react.

No, most React Native apps use the Native platform UX, that's the point of using React Native. As for plugin access, well I don't see how Ionic React solves anything, since a plugin by definition needs to be developed in the native language of the platform (Java or Swift).

Re: Building all of our new mobile apps using React Native

#274

Shopify is right to use React Native. I build an app with React Native Web and we produce Android/iOS/web from the same code base with 3 developers. No, it's not perfect. Yes, JS can be awkward and confusing. Yes, a truly native app built by expert platform-specific developers would be better. But I'm able to ship this product with less than half the team size I would need for native development. JavaScript developer…

> No, it's not perfect. Yes, JS can be awkward and confusing. Yes, a truly native app built by expert platform-specific developers would be better.

This can't be understated. You can always tell when you've opened a React-Native (or similar "portable") app. It always feels like shit.

Re: Building all of our new mobile apps using React Native

#275

I don't understand why so many large companies use platform abstractions. At a certain size you're big enough to have an iOS team that develops natively in Swift/ObjC and an Android team developing natively in Kotlin or Java. Developing directly for the platform, with expertise in that platform, is a proven long term bet. Screwing around with platform abstractions seems much riskier. The situation is a lot different…

Headcount is the biggest expense in almost all companies. Larger companies also have larger and more complex apps, so while a small company may have a small iOS development team, large companies have massive iOS development teams. Massive team * number of platforms = serious money. You also get into all kinds of platform and feature parity issues. "Why can't we do X on Android but only on iOS?", "Well because they're…

Do you think AirBnB's headcount was smaller when they were all-in on React Native?

Do you think they had to go on a hiring spree because they went back to native?

I'm skeptical there is a correlation.

Re: Building all of our new mobile apps using React Native

#277
post #106
post #94

Earlier quoted context omitted.

For iOS, can't you just wrap your web application in a thin native app layer that provides the push functionality?

From the app store guidelines: 4.2 Minimum Functionality Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it doesn’t belong on the App Store.

Would push notification support not be exactly the kind of feature that would qualify for this rule? In practice there are hundreds of apps like this on the app store.

Re: Building all of our new mobile apps using React Native

#278
post #202

Earlier quoted context omitted.

you act like whatever something is right now is the same in the future. It's quite possible they see RN as the future for all products and easing there way into things. Maybe they are struggling to find Java/Kotlin devs and have a surplus of Swift devs. So no, that does not really just say it all.

> Maybe they are struggling to find Java/Kotlin devs and have a surplus of Swift devs. Based on AirBnB's experience, now you need to find React Native devs in addition to Java devs.

I assume it's easier to find a handful of skilled Android developers rather than staffing an entire engineering org with them.

From my experience with RN, you do need to get into the native bits, but most of the development will be not native. So the number of skilled native device engineers required should be less.

Re: Building all of our new mobile apps using React Native

#279
post #161

All I can is, as a RN Developer, I love it. I love being able to use 1 language for both app platforms. The RN community is amazing. Many of the comments here talking about outdated packages were likely burned by RNs early days when it was Migrating an existing native stack to RN might not be the answer, but anyone looking to get their startup off the group should consider RN. Its fast development and converting a Re…

And I as a mobile native developer for both android and iOS on the other hand now know to skip talking with Shopify for future jobs as I hate RN and the performance hits and non standard UI it introduces. So we both win!

Re: Building all of our new mobile apps using React Native

#280

Earlier quoted context omitted.

Ten years ago Facebook fought this battle and lost. [1] [2] [3] [1]: https://www.facebook.com/notes/facebook-engineering/using-ht... "Using HTML5 Today" [2]: https://appleinsider.com/articles/12/09/11/facebook_admits_h... "Facebook admits HTML5 not competitive with Cocoa Touch" [3]: https://techcrunch.com/2012/12/13/facebook-android-faster/ "Facebook Speeds Up Android App By Ditching HTML5 And Rebuilding It Natively…

It strikes me that, more than anything, it is the lack of an efficient "Add to Home Screen" flow, that has doomed mobile websites. ...and it's intentional. By having an app store, mobile OS distributors know that they have control over a massive revenue stream.

A good part of it is their absolutely massive 30% cut. The only reason they get away with it is that when Apple's app store first came out, most of the online casual applications were games. Hosted by a few gargantuan aggregators (cough newgrounds cough) who charged 70%+ of the revenue for their ... service.

Against a backdrop of above-criminal-rates extortion, 30% must have looked like a bargain.

To put these numbers in context, very good agents get 15%.

Post reply on HN