Live data from Hacker News

Shopify is moving from React Native back to Swift and Kotlin

shopify.engineering

111–120 of 962 posts

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

#111
The promise of React Native was easing development burden from the web app to the native app. It makes sense if they are just using coding agents to cut out the framework and just go native.

That was my thought when I saw the headline and then reading the article confirms this is the inflection point per their own words. Very interesting.

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

#112

Earlier quoted context omitted.

Using cross-platform web technology is absolutely a nuanced engineering decision that is the right one for many businesses. What is categorically bad is bundling a standalone browser runtime for every single service, wasting user’s storage and memory when you could just have a website in a browser. Is there any major browser now that doesn’t support saving websites as apps? Electron is simply a suboptimal and incorre…

That decision is easy: do users leave bad reviews for bundling a few hundred MB of Chromium? Do they leave bad reviews if your app malfunctions due to the system webview behaving differently than the Chromium version you tested with? Forget about saving websites as apps, no one does that. Not sure if it works on Desktop Safari, it certainly doesn't on iOS Safari. Not even persistent storage is offered for PWAs. Apple…

It's funny how folks can't even get that number right. Depending on how much you care to optimize, Electron adds 50 to 80 MB to your application. Those multi hundreds of megabyte apps? Yeah that's not because of electron, that's things like "we couldn't be bothered to actually think about the assets we bundled in". 100 uncompressed 16 bit PNG? Sure why not. 20MB worth of fonts because we don't like the built in ones and no we've never heard of subsetting? Let's go. 50MB worth of .json data files that we couldn't be bothered to gzip first? Who's going to notice!

Electron is way bigger than an app needs to be, of course, but those giant apps that you hate, 250MB just for a health tracker? That's not electron being the problem.

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

#113
post #43

I'm sitting here at my desk overlooking Cordova Street. The street that Apache Cordova is named after. I've seen this debate for almost two decades now. Teams jump on the latest cross-platform framework assuming that it will reduce headcount cost at the expense of having a lowest-common denominator app on each platform. The latter is true but the former is false. What ends up happening is that teams start as 20 iOS e…

Pretty sure I've seen you either at B-Sides or Polyglot... Small world...

I'll most likely be at Polyglot. I did a very small part to help organize one of the very early ones.

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

#115
Before I even opened the article I knew the reason was because LLMs don't need abstractions. React Native was always about making app construction easier for people who don't want to learn ObjC or Swift. If you're not writing or even reviewing the code yourself, this is unneeded overhead.

For a while I've been wondering why people are even bothering with high level languages if you aren't even gonna read the code.

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

#117

Earlier quoted context omitted.

How are you evaluating the Android build if you don’t use Android and you don’t know Kotlin?

You just install it on your phone and use the app. Maintainability concerns are entirely overblown by people who don't use agentic AI to develop large mobile apps, but anyway give their opinion as if they had that experience. I put in a few hundred hours, and I reached the same conclusion as Shopify. With reviews from other models and then a manual QA pass the result is fully usable.

> You just install it on your phone and use the app.

OP says they don't have an android phone...

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

#118

I believe this will be overall trend in industry. Dropping React Native and Flutter for native

Can React Native become a sort of Compiler which compiles to natives (Android/Apple) now that AI can help in that direction as well? I don't know much about mobile ecosystem though.

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

#119
post #31

We did the same thing - had 90% of it overnight. Then spent a few days in the background tweaking for polish. Our app is smaller, and has about 15-20 screens. I started at about 12:30am by giving codex a goal and it inventoried every screen based on the react native code, then created android and iOS directories, used maestro (I had already set up this tooling for a previous personal app build a few weeks prior), and…

And there's no proprietary IP in your company's app that you don't mind being sucked up into the training data?

Are you saying you don’t trust ZDR claims from inference providers?

They don’t care about your code. There’s more and better data on the public web.

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

#120
post #90
post #52

Earlier quoted context omitted.

So you want to review and maintain code in 3 separate languages? Sounds like a complete waste of tokens with the worst case of just quickly building more technical debt, three times.

It's a lot nicer than having the same logic in 2 languages and trying to keep them in sync – whether doing it by hand or with an LLM. One of the big rules is don't repeat yourself – much of the logic only needs to be written once (except UI)

In that case, Kotlin makes even more sense especially with Kotlin Native, and Rust is unnecessary.

Kotlin is already multi-platform and can be re-used as the business logic in iOS apps with Swift as the UI and the Android app with a Kotlin UI (Jetpack Compose) or both iOS and Android apps can be written entirely in Kotlin.

That vastly reduces the maintenance and Kotlin is reused across all apps and keeps it at 2 languages at most.

No need to introduce Rust to achieve the same goal.

Post reply on HN