19 ms·
You are overstating the value of ‘native’ development and understating the cost of developing natively on multiple platforms. What capabilities are exclusive t
by calsy 4y ago
You are overstating the value of ‘native’ development and understating the cost of developing natively on multiple platforms. What capabilities are exclusive to native apps in the minimal well defined sandbox provided on portable devices?
You are generalising about attitudes of businesses who are concerned with return on investment, an obvious priority that I shouldn’t have to point out.
The reputation you mention is just an opinion based on inherent bias not shared by all. If you were to choose at random 10 reasonably well performing apps on the store you could in no way tell if they were developed ‘natively’ or not.
React native is compiled into native code, by definition it is ‘native’. It is not running in a virtual box or a web browser.
- fingerlocks 4y agoThis is disingenuous. There is JavaScript interpreted at runtime produced by the metro bundler, and the UI latency is palpable. Animations still suck and threading is painful. I’ve been involved in several react-native projects at FAANG because senior leadership bought into the misguided belief that cross-platform is cheaper and faster than fully native. Every project was eventually scrapped and re-built natively because the app became too slow, unwieldy, bloated, and impossible to maintain usually because of the dumpster fire burning inside node_modules. On iOS, You will have to know how to use clang and llvm when things eventually go sideways, and few (if any) js devs have that expertise. And have you ever experienced a react-native upgrade? It’s a thing of nightmares, typically taking between two and four weeks with all hands on deck. The same product can be built twice on each platform with half as many devs, will be better maintained, and always perform better. React-native is great for quick prototypes or a temporary MVP, but for everything else it’s a house of cards.
- 999900000999 4y ago>dumpster fire burning inside node_modules. This made me laugh a bit. I agree with everything you said, I have React Native projects that will never run again. The node ecosystem is still an unstable mess, everything is largely hacked together. I do use Flutter for my side projects, and it appears to be gaining popularity. It feels like a much better React Native since you don't have 20 years of legacy JavaScript code running in the background. https://flutter.dev/showcase https://flutter.dev/showcase
- jicea 4y agoI completely agree. I’ve been an iOS developper for 8 years (working on apps with millions of downloads, for a French company). I’ve been fighting management constantly about this, explaining that it would be cheaper to have iOS and Android experts ratherg than « multiplatform » developers. For instance, on iOS side, frameworks and UI change a lot every years, so you want to be able to update your apps quickly and adopt the new best practices (which is easier if you stick to the standard UI without any other framework). We had other projects that started with a multiplatform approach, to go back after sometimes on « real » native apps (by real, I mean using only standard SDK, UIKit on iOS for instance). Despite these failures, management keep pushing for technology like React Native, Xamarin etc… I’ve lost this battle: I think that the idea to have half devs is to appealing to business, and you don’t have chance to explain why this is not as simple as it’s seems to be. Or my points were simply not convincing.
- calsy 4y agoUI latency is palpable, so palpable that the millions of people who use apps developed in react native wouldn't notice the difference or care. node_modules is such a dumpster fire that it's the most popular package manager in existence. React native is for prototypes although it’s used in both the public and private sector to deliver apps. You can make 2 versions of an app in half the time apparently just by saying so. Somewhere reality disappeared in your argument. Your employment history is of no concern to me.