Hacker News new | ask | show | jobs
by joshuawright11 1067 days ago
Purely curious; why not start natively with iOS or Droid (depending on which one your target audience uses more)?

You'd have the easiest native API access and fewer headaches. Once you hit PMF & have proven the idea, add the second platform.

Is there a benefit to launching on both platforms out of the gate? Unless perhaps there are specific React web assets you'd like to reuse to get up and running faster via React native.

6 comments

> Purely curious; why not start natively with iOS or Droid (depending on which one your target audience uses more)?

For me, React is just easier to use than natively supporting iOS or Droid. No new languages or skills to learn.

I also found for social/marketplace apps, Droid users are the supply and iOS is the demand. Can't have one without the other.

With Swift UI & Jetpack Compose, I found it really easy to make a jump from React to either platform. The mental model is pretty similar to React in both. Sure, Android is still a lot of boilerplate (in my opinion), but Kotlin & Swift are also relatively easy to get into, especially if you happen to have some OOP experience.
Yeah if React is your strong suit, an initial version in React Native is the way to roll.
> Is there a benefit to launching on both platforms out of the gate?

I guess the benefit is access to larger audience, and as a result easier growth; this could be especially important in the context of a startup.

Yeah - however IMO large growth isn't as important until some semblance of PMF is hit with a few core users.

Then can treat the other platform as a marketing cost - i.e. if you're making 75k on iOS and predict a similar revenue for Android it's worth it to hire an Android developer for to build it out. But if one hasn't yet found a few hundred quality users on one platform why build the other one.

Why target one platform when your project can target all major platforms (web, iOS, Android, MacOS/Windows/Linux)? Especially if you're already experienced with React and can later hire from that monstrous talent pool?

Hell, instead of casting that wider net for users, you could still only release/focus on iOS, but still have tons of work done when you're ready to move your React app to those other platforms.

Because your app will equally suck on all platforms?
You might not be the target user - and actual target users might not care about the native vs react native app UX.
Because your app will work on all platforms and the rest of the billions of app users outside of this little niche-of-a-niche-of-a-niche forum just want to do whatever they need to get done on a app in their normal lives and don't even know what you are talking about when you say the app "sucks" because it doesn't use exactly the right rounded corners on a button or the listview scroll physics are exactly same as a "native" app.
Until the people wonder why it doesn’t do $x new feature that Apple released a year ago but there is no cross platform equivalent.

But more importantly, why it doesn’t take advantage of an accessibility feature that that a native app would get for free.

I agree with this and reflects my personal experience.

While potencial of a large audience is great, if you don't even have users to start with, the choice should be the response to "what gets PMF faster" and not "what do I need to take me from 500k ARR to +2M ARR".

For some apps, cross platform mobile development and finding core users across larger audience can be easier than going native and finding core users on a single platform.

There can be probably other reasons too.

> Is there a benefit to launching on both platforms out of the gate?

Well launching on both platforms at once is one benefit. But how about the benefit of writing code once?

And having access to a massive React developer talent pool.
> Purely curious; why not start natively with iOS or Droid (depending on which one your target audience uses more)?

That did not go well with Clubhouse. Started with iOS only and a year and a half later they added Android support after getting cloned by everyone else. Especially Discord (which is in React Native).

Today, more people use Discord Stages and almost no-one uses Clubhouse, despite Clubhouse being a native app from the start.

That's a good point - if the success of the product relies on a critical mass of adoption (social networks, marketplaces) then missing one platform would exponentially hurt that.

But IMHO for apps where that isn't the case starting with a single platform is a good bet.

this downplays the possibility of having competitors. if your idea either already exists or can be cloned quickly, being stuck on one platform while somebody else hoovers up the broader userbase can absolutely kill you.
Because you'll still want to support both OS's sooner rather than later and then you'll be re-inventing the wheel by rewriting all your code a second time on the other platform. Plus using Flutter from the start means you have the option of seeing a much wider world than just Android or iOS: you can build the same app for Linux, MacOS, Windows and the Web.