Live data from Hacker News

React Native at Airbnb

medium.com

191–200 of 259 posts

Re: React Native at Airbnb

#191

Earlier quoted context omitted.

Ah, my mistake, it should say "server-driven," which is more accurate. The view isn't actually rendered on the server, it just seems to be sent over in a declarative format, which the client then renders into a native view.

> sent over in a declarative format like HTML? > which the client then renders into a native view. A WebView?

No

Re: React Native at Airbnb

#192
post #87

What is wrong with TurboLink 5? Not Turbolink 3 or previous version, v5 is very much a total rewrite. Turbolinks 5 allows hybrid Apps that offers most of the benefits without many of the complexity, it is HTML after all. It seems there are sites that uses Rails, including AirBnB. But I have yet to seen a site that uses Turbolink apart from Bassecamp, even Github uses its own version of pjax rather then Turbolink.

My guess is that orgs that want a dynamic frontend are choosing SPAs over turbolinks, and orgs that want to serve static pages aren't bothering to put in the nonzero effort to make turbolinks work.

Excuses my ignorance. I don't understand how we could do 99% or even 100% with "pages", but instead we still insist on "apps".

Re: React Native at Airbnb

#193
post #87

What is wrong with TurboLink 5? Not Turbolink 3 or previous version, v5 is very much a total rewrite. Turbolinks 5 allows hybrid Apps that offers most of the benefits without many of the complexity, it is HTML after all. It seems there are sites that uses Rails, including AirBnB. But I have yet to seen a site that uses Turbolink apart from Bassecamp, even Github uses its own version of pjax rather then Turbolink.

I use the turbolinks libraries for iOS and android and the experience has been great.

I am just wondering if there are any pitfalls. While not many are writing about their technical failure of React Native or whatever tech it is. You will at least know they have changed the stack, or words on the street / twitter they are retrying new things because old things didn't work etc.

But TurboLinks 5? None, not even a mention or beep. As if no one is using it. While we are happily using it someone else may be running into issues we haven't yet doubt with.

It is pretty much like Startup news, I don't want to read about how you succeed this just once. I want to read about your thousands other failure, what works, what not, and what you ( Or I could ) learned from it. By stating your problem, your intended solution, and the results I could make a better informed decision somewhere down the line. And all the time we got on the internet is everyone cheer leading mindlessly.

Re: React Native at Airbnb

#194

Earlier quoted context omitted.

A big contributor to the difficult learning curve in Redux is the very poor naming of things. It's off the charts unintuitive, especially if you're an experienced programmer. I imagine their thought process went like this: Types: People like strongly typed languages, maybe if we call our events "types", they will like Redux more? Reducers: Switch statements are so boring and uncool. Lets call this "reducer" instead o…

Given that Redux is an implementation of the Flux pattern, your grievances may actually be with the naming conventions in Flux itself. https://facebook.github.io/flux/docs/in-depth-overview.html#...

This is the thing that everyone seems to have forgotten. Redux didn't invent these terms out of nothing. Redux was specifically written as an implementation of the Flux Architecture, and the terms "store", "action", and "type" came directly from Flux. The term "reducer" had been in use with Clojure already, I think, and is based on the way these functions have the same signature as a callback you pass to `Array.prototype.reduce`. "State" is a generic term meaning "data in your app", and the term "tree" for a hierarchy of objects has been around for ever. (Oh, and you can write your reducer functions with _whatever conditional logic you want_ - switch statements just happen to be an obvious way to handle multiple values for a single field.)

I covered a lot of the history and thought behind Redux's design in my post "The Tao of Redux, Part 1: Implementation and Intent" [0] .

Sure, I'd agree that the terms are a lot to take in for a new learner, but claiming these were chosen or made up to make things more confusing is ridiculous. There was a lot of debate over exactly what terms to use during the development process [1] [2] [3], and it was ultimately decided that keeping the Flux-based terminology made the most sense at the time, because most people coming to Redux were familiar with Flux already. Obviously the dev landscape has changed since then, since nobody seems to remember that the original Flux concept existed, but the terms are now set in stone because we've been using them since the beginning.

[0] https://blog.isquaredsoftware.com/2017/05/idiomatic-redux-ta...

[1] "reducers": https://github.com/reduxjs/redux/issues/137

[2] "state", "store", "dispatch" : https://github.com/reduxjs/redux/issues/113 , https://github.com/reduxjs/redux/issues/137

[3] "actions" vs "events": https://github.com/reduxjs/redux/issues/384 , https://github.com/reduxjs/redux/issues/377 , https://github.com/reduxjs/redux/issues/891

Re: React Native at Airbnb

#195
Isn't React Native end of lifed at Facebook? The effort is taking the best principles of React Native and focusing on Litho https://fblitho.com or ComponentKit - the effort to have a unified framework for both iOS and Android is pretty much abandoned.

I think React Native is in legacy support mode rather than active innovation.

Re: React Native at Airbnb

#196
post #186

As a user of AirBnb I would be so happy if they just stopped updating the app. They are making it worse and worse. When I travel and I arrive at an airport, I do not need spiffy animations and "fun things to do" in the city I am in, I need a way to quickly find the address of the place or a way to message the host. Stop with all this experience stuff and give me the facts I need right now

I couldn't possibly agree more. The annoying minimalism is killing me.

It took me 5 minutes to find a map view the other day because they've buried it so much and floated their "experiences" stuff up top.

Re: React Native at Airbnb

#197
post #186

As a user of AirBnb I would be so happy if they just stopped updating the app. They are making it worse and worse. When I travel and I arrive at an airport, I do not need spiffy animations and "fun things to do" in the city I am in, I need a way to quickly find the address of the place or a way to message the host. Stop with all this experience stuff and give me the facts I need right now

The experience stuff is fine, but they need to seriously evaluate how changes impact users. When a user is on a trip, getting host and address info should be easy.

When searching for a listing, finding the map should be easy.

Re: React Native at Airbnb

#198

Isn't React Native end of lifed at Facebook? The effort is taking the best principles of React Native and focusing on Litho https://fblitho.com or ComponentKit - the effort to have a unified framework for both iOS and Android is pretty much abandoned. I think React Native is in legacy support mode rather than active innovation.

I can't find any reference to that with Google. Mind sharing a link?

Re: React Native at Airbnb

#199
post #110

Tangential to this, he says Airbnb has 100 mobile devs writing about 80k LoC of app code, 40K LoC of infra, and 220 "screens". We've got an app with about the same "dimensions", developed in a similar timeframe, with some very complex financial business logic and 2 developers working on it... what on Earth do their devs spend their time on? Is their engineering organization really _that_ inefficient?

For real... i've had a ~4-5 dev team for the past three years, and our main application code is ~200k lines of java, ~70k lines of stored procedures, and a ton of other ancillary reporting code / etl code which i'm not counting.

I just don't understand where they must be spending their time for an application of that size / complexity.

Re: React Native at Airbnb

#200

Earlier quoted context omitted.

A big contributor to the difficult learning curve in Redux is the very poor naming of things. It's off the charts unintuitive, especially if you're an experienced programmer. I imagine their thought process went like this: Types: People like strongly typed languages, maybe if we call our events "types", they will like Redux more? Reducers: Switch statements are so boring and uncool. Lets call this "reducer" instead o…

Given that Redux is an implementation of the Flux pattern, your grievances may actually be with the naming conventions in Flux itself. https://facebook.github.io/flux/docs/in-depth-overview.html#...

Your Flux/Redux point is a distinction without a difference. The names are bad, wherever they came from.
Post reply on HN