Live data from Hacker News

Why did Airbnb dump React Native? (2021)

theimmigrantprogrammers.com

81–90 of 136 posts

Re: Why did Airbnb dump React Native? (2021)

#81
post #79
post #52

This is very inaccurate in many aspects, not sure if actually anything accurate in this except the fact that Airbnb did use and eventually dumped RN (source: I worked at Airbnb 2015-2019 on the platform team). As others have linked, Airbnb actually did write a summary about this. Basically what went down: For years Airbnb had actually pretty strong native mobile engineering both on iOS and Android (some of the best e…

This is what u get for jumping on a bandwagon, instead I got my company to invest in a Software companies tech. The same Xamarin app i built in 2014, still runs, on .net7. MS nailed crossplatform in a way that an ad company is never going to invest in. They needed to nail cross-platform to keep themselves as a company relevant; they lost the platform war, then redefined it. Just launched more apps on the platform thi…

Right. They also extend, embrace, extinguish. They also make very clunky tools for people that like to click to code.

Re: Why did Airbnb dump React Native? (2021)

#82
post #52

This is very inaccurate in many aspects, not sure if actually anything accurate in this except the fact that Airbnb did use and eventually dumped RN (source: I worked at Airbnb 2015-2019 on the platform team). As others have linked, Airbnb actually did write a summary about this. Basically what went down: For years Airbnb had actually pretty strong native mobile engineering both on iOS and Android (some of the best e…

I have never seen cross-platform UI that would work and/or look close enough to native. It has always been classic "choose any two": cross-platform, UI, great.

There were many people who claimed they have achieved all three, but at the close examination all of them, 100% without exception, were missing many little things like standard shortcuts, respecting color preference in user settings, or just couldn't see the difference between 11pt and 13pt fonts while looking directly at them.

10 years ago I worked on rewriting Qt interface of a desktop app back to native for a similar reason, and now I am reading all the same story except it's about React Native in mobile apps.

Re: Why did Airbnb dump React Native? (2021)

#83
post #79
post #52

This is very inaccurate in many aspects, not sure if actually anything accurate in this except the fact that Airbnb did use and eventually dumped RN (source: I worked at Airbnb 2015-2019 on the platform team). As others have linked, Airbnb actually did write a summary about this. Basically what went down: For years Airbnb had actually pretty strong native mobile engineering both on iOS and Android (some of the best e…

This is what u get for jumping on a bandwagon, instead I got my company to invest in a Software companies tech. The same Xamarin app i built in 2014, still runs, on .net7. MS nailed crossplatform in a way that an ad company is never going to invest in. They needed to nail cross-platform to keep themselves as a company relevant; they lost the platform war, then redefined it. Just launched more apps on the platform thi…

Xamarin/MAUI doesn’t get the buzz/love from HN audience that React Native and Flutter get. I think there is a lot of historical bias here. My company has found success with the dotnet stack. We are able to keep a small team of 5 developers that maintain 3 mobile apps (Xamarin), 2 desktop apps (WPF transitioning MAUI), and 1 web app (Blazor) all sharing about 50-80% of the code base. These are apps that bring our company about $7+mil in annual revenue if you include the associated hardware which dotnet/C# is well suited to interact “natively” with.

Re: Why did Airbnb dump React Native? (2021)

#84
post #70

Earlier quoted context omitted.

> Mobile engineers didn’t want to write RN code and web engineers didn’t want to build on mobile That's interesting. In our experience, we're having a difficult time hiring folks that want to write native (including UI) in antiquated languages and frameworks - but it's much easier to hire JavaScript folks that just hack at RN. Of course, someone still needs to stand up the actual platform, as well as write shared (an…

> antiquated languages and frameworks Yikes, I hope you're not calling Kotlin or Swift antiquated. That's utterly false.

Some people think only javascript/typescript is modern. The javascript cult hopes everything to be written in js.

Re: Why did Airbnb dump React Native? (2021)

#85
post #70

Earlier quoted context omitted.

> Mobile engineers didn’t want to write RN code and web engineers didn’t want to build on mobile That's interesting. In our experience, we're having a difficult time hiring folks that want to write native (including UI) in antiquated languages and frameworks - but it's much easier to hire JavaScript folks that just hack at RN. Of course, someone still needs to stand up the actual platform, as well as write shared (an…

I wouldn’t call Swift (or Kotlin) antiquated. I’m sure it’s easier to hire JavaScript developers to hack on React Native because the talent pool is larger, but I’d wager your app quality will suffer. Depending on the app, sometimes a first class user experience just isn’t a high priority, in which case native-focused developers aren’t going to be attracted to working on it.

>I’d wager your app quality will suffer.

I really dislike this argument, and it comes up every time React Native is discussed. I think it's a holdover from Ionic style mobile applications that simply emulated native UI in a webview. It was awful - especially when the native UI changed and the Ionic apps didn't. It's likely you use RN apps every day and don't even notice because they're indistinguishable from native apps.

React Native is designed to compile down to native code and it uses native UI frameworks. The documentation on how it does this is very thorough. The problem is not React Native in my opinion. It's the native UI frameworks for iOS and Android. These frameworks have a lot of issues and taming them often requires developers with a lot of time and experience in that specific domain. Which is stupid and wasteful.

Here's a story from yesterday of how Apple's SwiftUI (their much vaunted successor to UIKit, a very flawed framework itself) is struggling to construct basic settings views in the new version of MacOS: https://daringfireball.net/linked/2022/08/15/ventura-system-...

Not to mention the criticism of Swift as a language and how it has evolved, including the original creator leaving. And how complicated doing a fucking substring is: https://stackoverflow.com/questions/39677330/how-does-string...

In my opinion, Flexbox is a perfect way of laying out elements on a 2D screen. It's way less confusing than the complex constraints system that UIKit used. React Native's implementation of it works well. Kotlin and Swift as DSLs do not need to exist. They are solutions in search of a problem. Designed by big tech to moat their platforms.

Unless you're building an app that has a very non standard UI or a game, it doesn't make sense not to use React Native in my opinion.

Re: Why did Airbnb dump React Native? (2021)

#86
post #73
post #70

Earlier quoted context omitted.

> Mobile engineers didn’t want to write RN code and web engineers didn’t want to build on mobile That's interesting. In our experience, we're having a difficult time hiring folks that want to write native (including UI) in antiquated languages and frameworks - but it's much easier to hire JavaScript folks that just hack at RN. Of course, someone still needs to stand up the actual platform, as well as write shared (an…

Yeah they think they know React Native until they have to debug something that is outside the happy path that is provided to them. These people probably have never worked on a production RN app or done upgrades and maintenance for one.

I want to clarify since this is getting upvoted, I still think RN is a better option than maintaining two separate apps in the vast majority of cases.

It just suffers because everybody "knows React" so how hard could it really be and people get hired into roles working on RN with very little understanding of how it's different from a web based React project.

Re: Why did Airbnb dump React Native? (2021)

#87
post #70
post #52

This is very inaccurate in many aspects, not sure if actually anything accurate in this except the fact that Airbnb did use and eventually dumped RN (source: I worked at Airbnb 2015-2019 on the platform team). As others have linked, Airbnb actually did write a summary about this. Basically what went down: For years Airbnb had actually pretty strong native mobile engineering both on iOS and Android (some of the best e…

> Mobile engineers didn’t want to write RN code and web engineers didn’t want to build on mobile That's interesting. In our experience, we're having a difficult time hiring folks that want to write native (including UI) in antiquated languages and frameworks - but it's much easier to hire JavaScript folks that just hack at RN. Of course, someone still needs to stand up the actual platform, as well as write shared (an…

This is an iOS only perspective, but it sounds like you are not actually looking too hard for iOS developers?.

No iOS developer considers Swift antiquated (because it isn't). I'd argue no one even considers UIKit antiquated (middle aged, maybe). Maybe with the exception of brand new iOS developers who has jumped on the SwiftUI-only bandwagon. SwiftUI itself is so new that it barely is production ready.

Sounds to me like you are actually looking for web developers who doesn't want to start learning native, but are OK to do the work in JS.

Re: Why did Airbnb dump React Native? (2021)

#88
> Now, one resort for them would be to use Airbnb’s web application on the web browsers of their phones, which doesn’t make much sense.

I never understood why one needs 20 separate apps (100 Mb each) instead of just using a single standard pre-installed web browser. Mobile UI everywhere is fine and functionality is the same.

Re: Why did Airbnb dump React Native? (2021)

#89
> Till the year 2012, Airbnb was just a React website

I stopped reading after this.

Websites released in 2012 were typically PHP, server-rendered, written with jQuery. Angular JS was considered cutting edge and go-to option for SPA projects. React was released later and only popularised around 2017-2018, and even at that time I remember most frontend developers were hesitant to use it in production due to the licensing ambiguity at that time (It wasn't MIT).

Re: Why did Airbnb dump React Native? (2021)

#90
post #85

Earlier quoted context omitted.

I wouldn’t call Swift (or Kotlin) antiquated. I’m sure it’s easier to hire JavaScript developers to hack on React Native because the talent pool is larger, but I’d wager your app quality will suffer. Depending on the app, sometimes a first class user experience just isn’t a high priority, in which case native-focused developers aren’t going to be attracted to working on it.

>I’d wager your app quality will suffer. I really dislike this argument, and it comes up every time React Native is discussed. I think it's a holdover from Ionic style mobile applications that simply emulated native UI in a webview. It was awful - especially when the native UI changed and the Ionic apps didn't. It's likely you use RN apps every day and don't even notice because they're indistinguishable from native a…

Look at the new Discord app. It's significantly slower than previously ever since the switch to react native, and has significantly more hangups.

React native works maybe fine if your target device is the highest end iPhone, but if your users are on Android One devices, it's not going to work nearly as well.

That's aside from the layouting being obviously off compared to the native layout engines.

Post reply on HN