
Flutter – A mobile app SDK for iOS and Android - Mayzie
https://flutter.io/
======
thinbeige
Nowadays the issue with app devlopment is not only having two OSes two develop
for (and I doubt that Flutter is a real help here), the much bigger problem is
user acquisition.

User acquisition got so insanely expensive for apps that there are few to none
business models where you can justify or break even the user acquisition
costs.

~~~
DJN
I wish I could upvote this twice. Distribution is the biggest problem in
mobile.

I'll add that even after acquiring a user, engagement, apathy, and not being a
24-hour uninstall statistic are close seconds.

I'm working on a solution that's currently in private beta but it should be in
public beta in a few weeks.

~~~
pjmlp
It is no different than anywhere else, there are tons of web sites and
packaged software to chose from.

The only thing is that the gold rush of the app stores is gone.

~~~
thinbeige
I disagree. Yes the web is also competitive but it's 100x easier for a simple
reason:

The next site ia just ONE single click away. The next app is few clicks and a
download away, even without any sign-up, an app install is a gigantic
conversion breaker. This is not comparable with websites at all. Anyone who
does new apps in 2017 must have a good plan.

~~~
pjmlp
I don't agree, just because it is a click away don't mean the user stays long
enough, does anything meaningful or even returns.

~~~
thinbeige
We primarely discussed the _user acquisition costs_ in this thread and I
pointed out a huge conversion breaker in the acquisition funnel of mobile
which just let the costs skyrocket. If users stick or not after being acquired
is as important but another discussion (rentention & churn).

~~~
pjmlp
If they click on link and close the window without doing anything relevant,
they weren't _acquired_.

~~~
thinbeige
But the funnel till this point you mention is MUCH cheaper on the web than on
mobile (where people also install and deinstall right away or never use that
app). And this 'being cheaper' is the whole discussion around.

~~~
pjmlp
Well it is a matter how much marketing money you have spent to make them click
on the link in first place.

------
PascalW
This looks pretty neat, Dart is a nice language.

Flutter looks pretty different from React Native on one side and
Cordova/webview based frameworks on the other side. Flutter is not based on
webviews, but is also not using the native widgets but instead rendering
custom widgets.

To me, this is a little weird. One of the downsides of Webview based apps is
that it's harder to align with the native OS look and feel. React Native
solves this problem, but Flutter clearly has the same problem.

~~~
utku_karatas2
> To me, this is a little weird. One of the downsides of Webview based apps is
> that it's harder to align with the native OS look and feel.

I'd agree with that in 2014 but this has been much less of a problem since the
last few years. The fast pace of mobile OS's have slowed down to a halt. IOS
has pretty much the same looks since version 7, Android since version 5.

The metro/material/flat design fashion has been the best thing for cross
platforms apps, be it desktop or mobile, any platform or any framework.

Flutter seems to be at the right place at the right time.

~~~
LeoNatan25
> IOS has pretty much the same looks since version 7

This can only be said by someone with a very little attention to details.
There are constant changes to how the OS looks.

~~~
coldtea
"Pretty much" already allows for it changing in "details".

So the parent is right.

And judging from the kind of non-native look apps that are nonetheless
immensely popular in the app store, few care that much anyway.

------
sathis
The real downside of using flutter is that you can't embed (or inline) any
native widgets like video or maps.

~~~
grey-area
Thanks. This would be a blocker for me so it's good to know. They have an
issue open on it, but no progress so far it looks like:

[https://github.com/flutter/flutter/issues/73](https://github.com/flutter/flutter/issues/73)

An awful lot of apps use a map, and a static map in many cases isn't going to
be enough. Likewise many apps will want to display video. Looks like they also
have an issue open for webview support, which could be a problem too:

[https://github.com/flutter/flutter/issues/730](https://github.com/flutter/flutter/issues/730)

But then I found this, so perhaps there is hope if you can launch it in a new
view:

[https://github.com/flutter/flutter/tree/master/examples/plat...](https://github.com/flutter/flutter/tree/master/examples/platform_view)

Looks like you could do the same for any view, so it's more that you can't
have a subview which is a map or video etc, which isn't such a bad limitation
(not ideal, but at least it's not impossible).

------
ziggzagg
Why is that Flutter does not have a web target? Everything is nice and fast
about it, it's a shame that after building a cross mobile apps, you'll app to
start the web app from scratch using another platform.

~~~
owaislone
While it does not right now and I doubt the team ever will do that, it is open
source. I'm sure the team will accept meaningful contributions. A meaningful
contribution here could be to make the flutter backend system pluggable enough
that 3rd party backends can be used without modifying core. Then a web,
desktop or any other backend can be implemented outside of it.

I know for a fast that the core team is open to the idea of creating desktop
backends but does not have the resources to do it. They'll gladly accept any
contributions towards that.

~~~
ziggzagg
My point is the web frontend target is such an obvious one here. Specially
given the dart to javascript compiler history.

------
JamesSwift
> We test on a variety of low-end to high-end phones (excluding tablets) but
> we don’t yet have an official device compatibility guarantee. We do not
> offer support for tablets or have tablet-aware layouts.

Thats a pretty serious, and surprising, limitation.

~~~
gman83
As far as I can tell, it's just something that will be added eventually. Given
that Fuchsia OS applications are written in Flutter, and Fuchsia is meant for
all form-factors -- phone/tablet/desktop, this is clearly something that is
eventually going to be required.

~~~
JamesSwift
In my experience with app development, having worked on multiple handset-to-
tablet conversions as well as universal-upfront projects, it is a bear to add
tablet in after the fact when it wasn't considered upfront.

And the opposite is also true, that if you do both along side one another, it
really isn't that bad. I guess I'm just surprised they would be willing to
tackle cross platform upfront (ios/android) but not cross form-factor
(handset/tablet).

------
grey-area
Anyone using this and have experiences to report? I'm thinking of using it for
a project soon. Specifically, how does it compare with 2x native apps for
Android and iOS. How was Dart as a language, and the bindings to different
native SDKs? What problems did you encounter when building apps on both
platforms?

~~~
jswizzy
I haven't done enough with Flutter to really report on it but I like it better
than React and Android's API so far. I do feel comfortable enough with Dart to
say that it is very familiar and easy to pick up. It's Java syntax mostly with
modern features and much less boilerplate code. The concurrency model is the
same one you find in distributed languages like Erlang, Golang, and Akka Java
or Scala. The bad parts of Dart have nothing to do with the language. Oh, and
functions are first-class citizens which is my biggest gripe with Java.

~~~
suzuki
> It's Java syntax mostly with modern features and much less boilerplate code.

Exactly. Dart is a sort of rational and modern variant of Java/C# language
family. It is excellent in handling async/await. I find Dart Code extension
for Visual Studio Code fairly useful for developing Flutter. Dart Code as well
as IntelliJ supports for flutter hot reload.

[https://marketplace.visualstudio.com/items?itemName=DanTup.d...](https://marketplace.visualstudio.com/items?itemName=DanTup.dart-
code)

------
victor106
Xamarin.Forms is another option to consider in this space.

------
devdoomari
I'll jump to flutter when 1). scala supports dart backend (just my preference)
2). flutter solves 'calling native libraries/sdks' better. (current 'message
passing' seems so weak - I want to do video processing/etc)

but for other use cases, flutter seems nice (for 90% of app use cases?)

~~~
Numberwang
Desktop browser support would be nice too

~~~
Timothycquinn
This would be lower priority than Tablet so we will have to wait some time
until we see any desktop app support. Even Dartlang does not have OOTB desktop
app development support. However, I have conceived ways of hacking up a Dart
desktop app using Electron / Dartium.

------
zanalyzer
Flutter is also the name of a company doing vision based gesture UI that
Google bought in 2013 and hasn't been heard of since.

[https://en.m.wikipedia.org/wiki/Flutter_(company)](https://en.m.wikipedia.org/wiki/Flutter_\(company\))

------
RyanShook
React Native vs Flutter [https://groups.google.com/forum/#!topic/flutter-
dev/49DpZm0x...](https://groups.google.com/forum/#!topic/flutter-
dev/49DpZm0xbNk/discussion)

------
mwcampbell
The FAQ says Flutter has basic accessibility support. I wonder what's missing.
If there's a Flutter-based app on the iOS App Store that uses some non-trivial
widgets, I'd like to try it out with VoiceOver.

~~~
yorwba
[https://flutter.io/faq/#who-uses-flutter](https://flutter.io/faq/#who-uses-
flutter) mentions Newsvoice
[https://itunes.apple.com/app/newsvoice/id1208421834](https://itunes.apple.com/app/newsvoice/id1208421834)
which looks like it would use some non-trivial widgets.

------
natch
From the FAQ:

>We are aware of apps built with Flutter that have been reviewed and released
via the App Store.

Which apps? I'd like to try them out and see how they look and feel.

~~~
Skylled
Newsvoice is another

~~~
malkia
I use it now for my news reader, mainly because it was written in flutter, and
I wanted to get a feeling as an user how it does it. It works well on my
Android Pixel XL, haven't tried it on iOS yet.

Also it works on ChromeBook... throuh ARC - there were some glitches, but
after the recent updates (in ARC itself) I haven't seen them.

Actually scrolling might be still broken (but again this was something ARC is
responsible, as other Android apps on Chrome are broken the same way).

------
rhubarbcustard
Do you think this is a better option than Apache Cordova? I've been starting
to look at Cordova to build some pretty simple apps for business applications.

Does anyone have an opinion on whether Flutter would be a better choice? Why?

I also looked at Xamarin but that seems a little in-depth for what I need,
which is basically some data-input screens (using standard Web-style controls)
and then to upload the data to an API.

~~~
jdiaz5513
Go for it, as long as the app will always be simple and you don't have a high
bar for the UX. Both Angular and React work well with Cordova and it's a great
way to leverage existing web dev talent.

Make sure that the Cordova APIs/plugins cover everything you need, because
writing custom plugins can be a major pain.

You won't have a lot of performance headroom, especially on Android where some
unsolved V8 bugs and inconsistent GPU support on older devices will hold you
back. If things start to feel slow and it's a problem for the customer you may
need to look elsewhere.

------
mk89
Looks really promising!

------
tomerbd
if it supported web site as well i would have clicked the link and check it
out.

~~~
Timothycquinn
If you mean Web Development then you need to look at just Dart which is the
foundation of Flutter without the widgets, UI and Web platform sugar.

------
0xbear
Stop trying to make Dart happen. It's not going to happen.

~~~
Timucin
Shame this comment isn't sky rocketing between others.

~~~
mda
Why? What is your problem with Dart language? Ever used it?

