I think you’re making the mistake of looking at this from a developer’s point of view and ignoring the business pressures involved. Of course it’s easier to build native on one platform.
Here in the UK, for a startup app trying to bootstrap from nothing, you are looking at paying between £10-£50 per new user install. That’s just marketing. A very small number of those users will continue using the app and a smaller number still will generate any revenue.
In theory you can limit your marketing funnel to just target one platform but in reality you need to maximise the ability of your app to thrive on word of mouth and social shares if you want to not just break even but continue to grow after your initial funding dries up.
If you’re building a companion app for an existing company with an existing client base, again you absolutely can’t launch on just one platform. Even if you do manage to swing that what I’ve often seen is the iOS app comes first (as that’s what all the developers and company executives have) but the majority of the customers are on android.
If you aim for simultaneous launches of two native apps you’ll find the minimum you need is two developers (one for each platform) as it’s rare to find developers that are highly efficient writing for both platforms. People often are mainly android/iOS and a little experience in the other. That’s fine but we need to get this app out this year.
This can work in larger companies but what you find there is not two developers but two whole scrum teams with two apps, two APIs (for political reasons) and two feature backlogs. Over time the apps diverge with new features taking ages to hit the second platform. Resulting in angry customers “My friend’s version of Monzo does xyz why doesn’t mine?”
I don’t have any experience with Ionic but I have worked with React Native from very early after it was released. Yes, we found ourselves writing native modules for both platforms all the time but that’s still less work than writing the whole app twice. However I think the platform has matured nicely now and if you’re building a simple CRUD mobile app I would absolutely put my money on React Native even if you’re a large company and can afford to put two whole scrum teams on the project.
Yeah, you bring up some very good points. Thanks for sharing. And I agree with your statements.
I mentioned that disclaimer at the bottom of the article actually specifically because of React Native.
I've found that many of the pain points that have existed within other cross-platform tools such as Ionic have been fixed or at least subsided with React Native.
In the validation phase. We're talking pre-funding, while working on the MVP. Would you say that building for two platforms affects time to iterate? Did this cause any issues when using React Native?
1) Do iPhone native app if it is unproven market i.e. you don't know product market fit
Do iPhone first because
a) Apple has 66% of spending in Apps and 60%+ of spending in games
b) Google will make sure to slow your success if it feels in ANY way you could be a threat down the line
We have apps that were just disappeared after hitting fast growth, while no such problems on Apple or Windows (though Windows App Store is tiny)
*
2) If you're doing something with known product market fit, and have resources, then build cross platform
*
3) If you're doing something with known product market fit, and have limited resources, use react
HOWEVER accept that Native App will almost always be significantly better than app built once and deployed for multi platforms
One of the first of countless 'look at my X experience and let's build a generalized advice article out of that' articles where I actually think the author lucked into a truth
Here in the UK, for a startup app trying to bootstrap from nothing, you are looking at paying between £10-£50 per new user install. That’s just marketing. A very small number of those users will continue using the app and a smaller number still will generate any revenue.
In theory you can limit your marketing funnel to just target one platform but in reality you need to maximise the ability of your app to thrive on word of mouth and social shares if you want to not just break even but continue to grow after your initial funding dries up.
If you’re building a companion app for an existing company with an existing client base, again you absolutely can’t launch on just one platform. Even if you do manage to swing that what I’ve often seen is the iOS app comes first (as that’s what all the developers and company executives have) but the majority of the customers are on android.
If you aim for simultaneous launches of two native apps you’ll find the minimum you need is two developers (one for each platform) as it’s rare to find developers that are highly efficient writing for both platforms. People often are mainly android/iOS and a little experience in the other. That’s fine but we need to get this app out this year.
This can work in larger companies but what you find there is not two developers but two whole scrum teams with two apps, two APIs (for political reasons) and two feature backlogs. Over time the apps diverge with new features taking ages to hit the second platform. Resulting in angry customers “My friend’s version of Monzo does xyz why doesn’t mine?”
I don’t have any experience with Ionic but I have worked with React Native from very early after it was released. Yes, we found ourselves writing native modules for both platforms all the time but that’s still less work than writing the whole app twice. However I think the platform has matured nicely now and if you’re building a simple CRUD mobile app I would absolutely put my money on React Native even if you’re a large company and can afford to put two whole scrum teams on the project.