Live data from Hacker News

Shopify is moving from React Native back to Swift and Kotlin

shopify.engineering

481–490 of 962 posts

Re: Shopify is moving from React Native back to Swift and Kotlin

#481
post #405

Earlier quoted context omitted.

> it is in the product and organizational challenges of keeping those two products that need to be identical in sync. They're two different platforms where the capabilities and UI patterns differs, so I don't see why they should be in sync. The web platform is not in sync with them. And using native features can give you a nice boost in maintenance and speed, unlike React Native where you always needs to align librar…

The capabilities of Android and iOS don't meaningfully differ for the purposes of Shopify; Shopify doesn't need LIDAR. Most large brands throw the UI design patterns of the platforms out the window in favor of their own UI guidelines. Saying the web platform is not in sync with mobile is not a relevant metaphor to justify why Android and iOS should be considered separately.

> Most large brands throw the UI design patterns of the platforms out the window in favor of their own UI guidelines.

I really wish they would not do that.

The best thing you can do to make your app trustworthy and friendly is to adhere to the host operating system UI guidelines and expectations.

Nobody wants your unique take on the checkbox or textarea please.

Re: Shopify is moving from React Native back to Swift and Kotlin

#483
post #30

Wish they explained more. Even though I'm mostly native iOS its seems react native is better stack for AI and iteration (hot refresh etc) - the main reason pretty much all AI vibecoding app were implemented via expo/react native. I also believed that finally this year react native got mature enough with improved tooling and performance to the point that it started to being 'boring' technology.

There's a section linking to a more in depth article:

"The Shop app, which is regularly at the top of the list in the shopping category in the app stores, is the first to be migrated. Assisted by AI, the team was able to go from a proof of concept to a fully rebuilt native app published in the app stores in just 12 weeks. We’ve written about this migration in depth here [0].

The migration of the Shopify app (our biggest with 300+ screens, home & lockscreen widgets, Apple Watch app, complications, Siri Shortcuts, etc.), is also underway and will ship later this year. The rest of our apps will be migrated soon."

[0] Migrating Shop app from React Native to native https://shopify.engineering/shop-app-migration

Re: Shopify is moving from React Native back to Swift and Kotlin

#484

It seems like Shopify has fallen into a trap thinking that more complexity costs nothing because of AI. In the age of AI we have to embrace the same principle as before that complexity needs to be tamed, not multiplied. Even as humans struggled with complexity, from what I see now AI struggles very much the same. Hence I don't think this will age well.

Yeah the problem is AI would improve exponentially and can do work 24/7

any engineering problem is just 'when' and 'how much' at that point

Re: Shopify is moving from React Native back to Swift and Kotlin

#485

Earlier quoted context omitted.

Nobody is talking about the real advantage of RN: Being able to release to the App Store without having to go through a review. That's so massive. Getting a bug fix out to users instantly, sneaking in optimizations, etc.. Sure, you need a review to release native code changes, and you should probably get a review if you have big feature changes just for the sake of Apple not banning you. But in practice, it removes o…

Are you saying a native app can't make an http request and update the code they JIT?

Precisely. That has always been prohibited both by technical measures and by the App Store review guidelines. Especially on Apple, but also on Google Play / Android as well.

Re: Shopify is moving from React Native back to Swift and Kotlin

#486

I first learned about the shopify app when I saw a purple "shop" checkout button. Next, I got an email saying that if I wanted to track my package I needed to download an app. No thank you. I don't want your app on my phone. I don't want to browse other stores in the shop app. I want to see my package and its status without enjoying a new "social shopping experience" or whatever. I now avoid buying things from anyone…

I've been trying to minimise the number of apps I have. Every app needs to be justified in that I actually need it, and there is simply no way it could have been provided as a website.

Re: Shopify is moving from React Native back to Swift and Kotlin

#487

It seems like Shopify has fallen into a trap thinking that more complexity costs nothing because of AI. In the age of AI we have to embrace the same principle as before that complexity needs to be tamed, not multiplied. Even as humans struggled with complexity, from what I see now AI struggles very much the same. Hence I don't think this will age well.

Another scary thing is with AI it's easy to let complexity get out of hand to the point where a human manually writing code is basically impossible. Even though AI might seem capable of handling the complexity, you'll start noticing all these weird bugs pop up all over your codebase.

Re: Shopify is moving from React Native back to Swift and Kotlin

#488

Earlier quoted context omitted.

Nobody is talking about the real advantage of RN: Being able to release to the App Store without having to go through a review. That's so massive. Getting a bug fix out to users instantly, sneaking in optimizations, etc.. Sure, you need a review to release native code changes, and you should probably get a review if you have big feature changes just for the sake of Apple not banning you. But in practice, it removes o…

Are you saying a native app can't make an http request and update the code they JIT?

It can download Javascript (or other interpreted language, or config data), but you generally can't download and execute new compiled native code on iOS, due to iOS code-signing/executable-memory restrictions.

Also keep in mind Apple might penalize you for dodging the review process and shipping new features, etc.

(btw, one exception to the JIT rule is custom browsers for the EU)

Re: Shopify is moving from React Native back to Swift and Kotlin

#489
oh fuck my life, we're back to this circa 2000 default of having incompatible binary UIs frameworks across various different platforms, with different OEMs shitting the bed at various different times and Apple free to arbitrarily force its hardware and OS into CI. I felt we were so close to unification in 2011.

And that's not even discussing the heresy of app stores. Curse smartphones for ever happening.

Re: Shopify is moving from React Native back to Swift and Kotlin

#490
post #41

If you put every company that needs/has an app on a spectrum, there is a line somewhere that roughly divides them into two groups: where Electron/React Native/etc. makes sense or not. It's just a normal engineering decision: solving problems given limited resources. Companies have different problems and different resources. I think people in the tech community have probably also noticed that it's rather popular to ha…

And the “makes sense or not” part can change based on a bunch of factors. It’s actually pretty common for a new company to start fully native (only iOS, few features, limited scope), then switch ro react native/electron (need to support more surfaces, features are being developed too quickly), then back to fully native (can afford individual dev teams for each platform).

Another factor is design.

A lot of companies go to React Native, etc, because they want one single non-native design on both platforms.

Which IMO can be a mistake most of the time, especially from the POV of a user.

Post reply on HN