5 ms·
React Native isn't necessarily a great fit for something that is intended to be "a simple, lightweight utility" - there is a reasonable start up overhead, for e
by tomduncalf 7y ago
React Native isn't necessarily a great fit for something that is intended to be "a simple, lightweight utility" - there is a reasonable start up overhead, for example, with RN, and it also involves bundling quite a few libraries and dependencies.
That doesn't mean React Native is not a good fit for any kind of application - for many kinds of apps, start up time and app size are a much smaller issue - but seems Facebook made the right decision for an app like Messenger which primarily needs to start fast and drain as few resources as possible.
- freepor 7y agoReact Native (or any framework) isn’t good when you can literally afford billions of dollars of R&D given the financial value of the app. Just like the Mars rovers don’t run Python but it is a great language for a experimental SaaS app testing a new market, RN is great for a team of 3 engineers to get a multi platform app shipped, but not a great choice for an app worth ~$100 billion to its parent company.
- kreetx 7y agoInterestingly, there was news on some satellite running javascript. But I wonder if the core was running something else, and peripherals were run with js -- and simply restarted when they died, Erlang style.
- ComputerGuru 7y agoJS requires a runtime, so by definition there would have to be something (even if it’s just a bastardized gc-free version of JS itself).
- saagarjha 7y agoTechnically so do the native platform frameworks: they just come with the system.
- adev_ 7y ago> Interestingly, there was news on some satellite running javascript. It does not mean it runs JS for anything critical, and very likely it does not. My car entertainment system (GUI) run JS, and I'm fine with it. I would not if it would run on the emergency breaking system...
- pier25 7y agoExactly. The point of using a cross platform solution is because you can't afford to make an app for each platform.
- danabramov 7y agoTo 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.