5 ms·
To be clear, Messenger wasn’t being rewritten from React Native. It was a fully native app before, too.
by danabramov 7y ago
To be clear, Messenger wasn’t being rewritten from React Native. It was a fully native app before, too.
- tomduncalf 7y agoYeah, not sure where this idea has come from. Seems like RN haters just jumping on any opportunity to slate it. Reality is, just like most technologies, RN is a good fit for some scenarios (small team needing to support both mobile platforms? no native devs on the team? performance not critical? etc.) and not a good fit for others. I guess many native developers feel negatively towards it because a lot of companies will be asking "why aren't we using React Native instead of building two separate apps?" which I can imagine feeling somewhat threatening towards your area of specialisation
- pjmlp 7y agoThing is, all these frameworks are leaky, to debug anything on them, or to add missing functionally, that small team needs to be an expert across two native frameworks, and the hybrid/abstraction framework that they are betting on.
- tomduncalf 7y agoYes and no, I think that depends how deep you want to go. For your standard "show and update some content and make it look pretty" type app, I can tell you from both my own and others experience you don't really need much familiarity with the native platforms, other than how to use build tools etc. which are well detailed online. If you want to go deeper or have more specialised requirements, then you might need a deeper understanding of the native platforms though.
- pjmlp 7y agoI can speak for Qt, Ionic and Cordova. Beyond "Hello World" all of them required me to get my hands dirty, at which point I was better off just doing C++ with native views, standard out of the box tooling available across all SDKs. Nowadays I rather go for PWAs, or plain mobile Web, unless it is something very special that requires OS APIs or hardware access.
- jstimpfle 7y agoI've worked power-user type applications that are mainly keyboard driven, and those are pretty easy to make cross platform with a single custom codebase that has a platform-specific graphics backend (OpenGL covers many platforms) and minimal platform code. Let's say < 300 lines of boilerplate per platform + 600 lines for OpenGL + 2-5K lines for (shared) UI controls.
- JimDabell 7y ago> Yeah, not sure where this idea has come from. Seems like RN haters just jumping on any opportunity to slate it. There seems to be a much more obvious explanation as to why people are assuming it used to be React Native. The article says: > > Compared with the previous iOS version, this new Messenger is [mentions improvements]. > > We accomplished this by using the native OS wherever possible […] That seems to imply that it wasn't native before and they got the gains by switching to native. And since Facebook are well-known as the creators and biggest users of React Native, it's not a big leap to make the assumption that that's where they were coming from. [Also, in case there's any confusion please note the distinction between "native", meaning it is compiled to native code; and "React Native", which is a cross-platform framework that is not compiled to native code. "React Native" is a horrible name for something that is not native.]
- tomduncalf 7y agoMy bad, I didn’t pick up on that wording potentially suggesting that. RN gets quite a lot of flak from native devs it would seem, hence my assumption!