Hacker News new | ask | show | jobs
by thegreenswede 1236 days ago
You mention to not build the website, iOS app, and Android app all at once before getting market fit. Which of the three would you start with to quickly iterate and get feedback?

When you mention that you had to often walk into like a scuba shop to try to get a sign on, were people more receptive if you 'had an app for that' already?

5 comments

Do Flutter and cover all 3. Okay Flutter Web is pretty bad, but if you are cash strapped and need to move fast, Flutter is the way to go.

I expect more and more startups to embrace Flutter, it is easily currently the best solution on the market (for 99% of app ideas). Yes native will always be better, but if you are a startup, your focus should be building an MVP and getting to product-market-fit as fast as possible at the lowest cost.

If your idea is one in which users are more than marginally committed (so not a marketplace where people buy only once on vacation) then you can avoid the flutter web problems by shipping it as a desktop app. Flutter on desktop is very responsive and it has the advantage that it's the native environment with the real Dart VM. Also if you want to do anything with hardware then it's a good way to go.
Desktop is AOT compiled, not a VM, I'm pretty sure. Which makes performance even better, then.
Certainly their hello world app starts extremely fast.
Curious, why not React Native? I never heard anything bad about it in Android and iOS (except maybe the resource usage) and at least Microsoft is putting RN as first-tier framework in Windows nowadays.
Honestly, for me the Development experience on Flutter is better by a factor of 10. I have only used RN in small quantities, but when I used it, I always had some problems. Be it with Flow itself (just give me TS), or with Metro (crashing for no reasons), or stuff constantly breaking with any RN/SDK update.

With Flutter everything just works. I love Dart and the Dart analyser. The documentation is phenomenal and the speed at which I can pump out an app is crazy compared to other solutions.

Don't get me wrong, Flutter has an abundance of its own issues (iOS jank, Flutter web, too many state management solutions) but it still at the end of the day it does the best possible job.

If I have a random app idea which needs to be tested and deployed quickly, I am using Flutter 10 times out of 10.

Ironically, you can't use it for Web. You can't even share components, IME.
If you're using Expo (which I assume most are on RN) they have web support. This is via React Native Web, which is a separate project if you wanted to use that directly too.

Personally though, I've found the DX of Flutter far above RN. I always had random packages break on RN that I had to fix every time, while with Flutter most of what you need is already included in the framework, including a component UI library for Android and iOS.

[0] https://docs.expo.dev/workflow/web/

[1] https://github.com/necolas/react-native-web

I would be a happy Flutter convert if the Web output was better.
I think they're working on it. There seems to be an HTML renderer now in addition to the canvas implementation.
If they can survive the cuts then I definitely have hope. I liked Dart enough to be happy with using it; I like the Flutter ecosystem in general as well. It'll be interesting times in app development if they can make a better cross-platform solution than currently exists.
The HTML renderer is actually what was first, canvas came later. The canvas is the first class implementation while the HTML one is a fallback for mobile performance and I assume if canvas is fast enough, HTML will be dropped as well.
Try it after the recent 3.7 release, it seems like they fixed a lot of the performance issues, at least in my experience.
Not having used it but having recently considered it what's so bad about the web output?
It can often be a lot slower and laggier than the mobile and desktop experiences, for whatever reason. However they are working on improving it with WASM, Impeller (a new renderer which should be faster by being more suitable for Flutter specifically instead of Skia which was more general purpose), and so on.
and Flutterflow is a pretty decent low code solution for nontechnical types
I mean, everyone can use a website. I've seen people launch with iOS first, but then it's like, call me when you're ready for everyone else
I'm not sure if there's an easy answer. It depends on the business and where your users already are. Sometimes that means mobile, sometimes that means the web, or sometimes it might be some plugin or extension to an existing tool.
why not just a progressive webapp at first? if you don't have massive native requirements like reading text messages, and don't want to shell out $200k, and are not pressed for more distribution channels like appstores...
Start where your customers are
So I can't use your app because "your customers" are on iOS and I don't have an iPhone?