top | item 17365451

Airbnb is 'sunsetting' React Native, reinvesting all efforts back into native

43 points| dsgriffin | 7 years ago |medium.com | reply

20 comments

order
[+] olfactory|7 years ago|reply
Doing a hybrid app in the way that the articles describe sounds like a recipe for tremendous complexity.

One line in one of the linked articles that really struck me was "Often times, it is not clear whether code should be written in native or React Native. Naturally, an engineer will often choose the platform that they are more comfortable which can lead to unideal code."

Without a top down vision of the proper role for React Native vs native code, how could anyone possibly expect things to go well?

Even within React Native there are a lot of existing "boundaries" where native code is used in a way that allows the general contracts adopted by React to be used without worrying much about the implementation details.

The quote above suggests that Airbnb expected a cohesive and sensible approach to emerge, when clearly there were (as the articles mention) many developers who were strongly opposed to React Native from the beginning.

While it's not necessarily the case, it seems that if there was debate about where "models" should live, there was really a need for a CTO to simply make that call and allow the rest of the team to coordinate around the tradeoffs associated with the decision. Without that, the battle will be fought with every pull request and other social and organizational factors (like bro culture, intimidation, etc.) will dominate over the technical merits of the decision.

I love Airbnb, and use the app extensively both as a host and as a traveler. It's not clear why it ever seemed sensible to go down a "hybrid" path. The app has pictures, scrolling listings, and photo views. I'd be curious to read an article that discussed very frankly the decision to go hybrid and where the lines were drawn that turned out to be problematic.

[+] dcow|7 years ago|reply
I don't think you're giving them enough credit. They built an either eng org on RN. I'm sure they made calculated decisions about how to address their stack. In fact IIRC Gabe said they always preferred pure RN when possible but conceded that someimtes it wasn't. I doubt it was some hybrid free for all like you're suggesting.
[+] megamindbrian2|7 years ago|reply
I thought it was pretty amazing how much they hype up designing. Airbnb uses a CI workflow where they can practically draw a shape on a piece of paper and create a React component out of it. At least that is what I took away from their design bloggings. What I found truly amazing is that there were no instructions to set up their environment for my own product. What a waste of energy. Every marketing site and app I write has some part of utility for other applications. This is not the case with Airbnb.
[+] edge17|7 years ago|reply
AirBnb app was one of the primary examples of large organizations using React Native. They are simply saying they are sunsetting their React Native app.
[+] WorkLifeBalance|7 years ago|reply
I thought react native was a facebook technology, is it theirs to 'sunset'?
[+] wccrawford|7 years ago|reply
They're sunsetting their use of it, not the technology itself. (The title is very confusing.)
[+] el_isma|7 years ago|reply
'Sunsetting' means they won't use it anymore? I've never seen that expression before. Does it carry any more meaning?
[+] fragmede|7 years ago|reply
It also carries a more subtle connotation where a sunset is relatively peaceful, in contrast with a more violent and/or forceful verb like "terminating", and could also be seen as more inevitable.
[+] fauigerzigerk|7 years ago|reply
The usual meaning is that it's a somewhat gradual discontinuation, but in this case I think it's an attempt to be polite towards those who made the decision to use React Native in the first place and to the creators of React Native.

Scrapping it, ditching it, dumping it, etc, sounds too much like React Native is crap and someone made a mistake choosing it.

[+] bovermyer|7 years ago|reply
"Sunsetting" is a very common term (in America, at least) for deprecating or discontinuing something.
[+] mistrial9|7 years ago|reply
'gradual removal in stages' -- it is common in the United States for lawyers, government administrators, human resources managers, and others who make changes to important legal policies describing use and restriction of goods, services and repetitive payments, to describe this way.. (the phrase also has a mind-dulling, sleepy effect on the victims as a desired side-effect..)
[+] maxxxxx|7 years ago|reply
It's just a euphemism to make something sound nicer. Also see "pivot", "readjust" or "awesome journey".

The original meaning is more like "slow phase out" or similar but now nothing gets "cancelled anymore". Everything gets "sunsetted" so the original meaning is lost.