Live data from Hacker News

Building all of our new mobile apps using React Native

engineering.shopify.com

311–320 of 588 posts

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

#311
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!

The sad thing is, all* their tier 1 mobile apps are still ios/android native and are not going to be rewritten, so they still need native devs. But after this blog post native devs will be a lot harder for them to find and hire.

* except for POS for Android which apparently has been rewritten, but not yet released, in RN.

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

#312

Honestly I think the future of mobile will just be... mobile websites. What's missing until regular websites have parity with mobile apps in functionality? - Accelerometer and all sensor support (some of these are already supported on various browsers on various OSes) - Background support - Bluetooth - WiFi - Better notifications - etc. Sure there will always be a need for native, but 99% of apps don't need any of th…

I hope not. I started using flutter recently and it is by far the best development experience I've had creating anything with a UI. Easy to install (even on windows), build, stateful hot reload, and the code is easy to read and write. No HTML/CSS/JavaScript.

I know web devs probably don't agree, but HTML and CSS weren't designed to build responsive, interactive applications, and all that has to be done to make it work makes it a pain in the ass to setup and develop. With stuff like WASM, Flutter, and Blazor, I'm hoping we have viable alternatives to traditional web development.

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

#313

Honestly I think the future of mobile will just be... mobile websites. What's missing until regular websites have parity with mobile apps in functionality? - Accelerometer and all sensor support (some of these are already supported on various browsers on various OSes) - Background support - Bluetooth - WiFi - Better notifications - etc. Sure there will always be a need for native, but 99% of apps don't need any of th…

The biggest feature I'd like parity on for mobile web.... is logins.

As the tracking war rages, humble little login cookies are becoming a casualty. For example if someone gets a transactional email (say a new booking notification), opens it on their iphone, it opens safari.... in a new context. No login! So frustrating for them. You can send tokens with the links, but they really need to have an expiry date on them, and if the user forwards the email it risks exposing their whole account. So now you have to start playing with an intermediate 'sort of logged in but don't let them do anything too dangerous' state

And now browsers are using "AI" to magically work out which cookies to delete. That's great, but.. can we not have an explicit UX for the user to say hey, this is a login cookie, I'm logged in because I want to see my data and be authorized on this website every single time I come here (and an equally special logout function that deletes it without trouble).

I'm a pretty heavy user of mobile web and rarely use apps, but logins for power users and tech impaired users is pretty much the main reason we're looking at react-native too

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

#314
post #113

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…

Don't know last time I tried React Native and wanted to use some cool feature of iOS. I either had to write my own RN plugin in Swift/ObjC or wait for someone else to do it.

Thats a benefit of React Native though. Share as much code as possible and write wrappers for the Native features you need for your project. I really love the model.

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

#315

I think one of the coolest things that Shopify is doing is this: We’re sponsoring Software Mansion and Krzysztof Magiera (co-founder of React Native for Android) in their open source efforts around React Native. and We are working with Discord to accelerate the open sourcing of FastList for React Native (a library which only renders list items that are in the viewport) and optimizing for Android. Basically RecyclerVi…

Without synchronous view layout, it's not really possible to have a truly recycling view without many warts. We've (Wix) been hacking at this for years, and it's not possible. You either block the UI or view flash for the user if fast enough scrolling is performed. Facebook engineering promised synchronous layout will come at some point, which will open the door to that.

Theyve said Fabric comes out probably mid 2020 I think, which I am hopeful for

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

#316

Honestly I think the future of mobile will just be... mobile websites. What's missing until regular websites have parity with mobile apps in functionality? - Accelerometer and all sensor support (some of these are already supported on various browsers on various OSes) - Background support - Bluetooth - WiFi - Better notifications - etc. Sure there will always be a need for native, but 99% of apps don't need any of th…

Users hate web apps, especially on mobile, and it has nothing to do with functionality. Web apps on the App Store invariably provoke angry screeds about how the look and feel is not right.

Native apps are even more essential on mobile. On the desktop, web apps just look weird and waste battery life. On mobile, they feel wrong. That difference in feel provokes visceral hatred.

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

#317

Honestly I think the future of mobile will just be... mobile websites. What's missing until regular websites have parity with mobile apps in functionality? - Accelerometer and all sensor support (some of these are already supported on various browsers on various OSes) - Background support - Bluetooth - WiFi - Better notifications - etc. Sure there will always be a need for native, but 99% of apps don't need any of th…

Seeing that the only apps that make money for either Google or Apple are mostly games with in app purchases, they wouldn’t be appropriate for web apps anyway.

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

#318
As a solo/indie developer I love React-Native. Attempting to develop for Android and iOS at the same time is absolutely daunting. Maybe someone out there can do it, but it was simply too much for my brain to handle. But with React-Native I don't have to worry about any of that. I just write code and it doesn't matter what device people happen to be using.

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

#319
post #56

Earlier quoted context omitted.

> What's missing until regular websites have parity with mobile apps in functionality? Performance. But we're beginning to approach performance parity - not by the web becoming an faster, mind you, but by apps becoming slower. It used to be only cheap/poor-quality apps that felt like glorified web pages, but now even many high-profile apps are just parts of a web stack embedded into an app.

You make a fair point but it's one about the current state of apps rather than the future of apps. In the future phones will be more powerful and apps will do mostly the same stuff. In theory that should mean the apps will be faster.

> In the future phones will be more powerful

Single-core performance is largely topping out. The gains are incremental at best.

Mobile SoCs have gone incredibly multi-core incredibly quickly (6-8 cores are common!). Meanwhile the web is incredibly bad at handling that. JavaScript code still has to fight with the GC for CPU time on the single thread they both occupy. WebWorkers are incredibly heavy & limited.

WebAssembly might have threads eventually (it's on their roadmap), but then how long until that happens and will the typical webapp ever even migrate to webasm?

Meanwhile CSS & DOM performance continues to be poor, so webapps are left in this awkward state of needing to re-write part of the browser.

Hardware isn't fixing any of this. It's been almost a decade of hardware not fixing this at this point.

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

#320

Honestly I think the future of mobile will just be... mobile websites. What's missing until regular websites have parity with mobile apps in functionality? - Accelerometer and all sensor support (some of these are already supported on various browsers on various OSes) - Background support - Bluetooth - WiFi - Better notifications - etc. Sure there will always be a need for native, but 99% of apps don't need any of th…

Mail is the last thing I want as a web app. I don’t use web mail on my PC. I definitely wouldn’t want to use it on my phone.

Maps is also much more responsive even on older phones than it is on a web page on a modern PC.

Post reply on HN