Hacker News new | ask | show | jobs
by adamsvystun 1812 days ago
I think this is an interesting approach, and I think many people in this thread are missing the point.

When you are a company that needs to maintain multiple clients across platforms (web, android, ios, and so on) it is very hard to be good at 3 things at the same time: application performance, development velocity and cross-platform consistency. Every solution that currently exists sacrifices some of the points to improve others. For example: If you make a web app across platforms, then you sacrifice performance on mobile; If you use native apps everywhere, you sacrifice development velocity and cross-platform consistency.

You might be wondering: isn't something like React Native or Flutter solve all those issues? Yes, on the surface it's a great fit. For only slight sacrifice in performance you get everything. That is why Airbnb have tried React Native initially, but decided to abandon it in the end due to technical and organizational issues (read mote here [1]).

This is their new attempt at getting good trade-offs here. You get full performance because you are doing everything natively. You get solid cross-platform consistency and high development velocity, because you are making changes in one place. Bravo Airbnb!

[1] https://medium.com/airbnb-engineering/sunsetting-react-nativ...

2 comments

IIRC they gave up on RN because they were trying to use it inside existing native apps, and having that boundary introduces an ungodly amount of complexity. Going all-in on RN would have avoided that and result in performance just as good as native, or better, as shown by Shopify most recently.
You don’t need to sacrifice performance on mobile if you make a web app. People choose to sacrifice it because optimizing it well requires care.