Hacker News new | ask | show | jobs
by epcoa 878 days ago
> Java on android

You mean Kotlin?

Nah. Dart is ok. It doesn't perform as well as those peer languages. It's nice its FFI story is good, but the ecosystem is very weak even compared to Javascript.

As for the tooling. It's decent. I wouldn't call it amazing, unless you come from systems that were anemic to begin with, then it seems pretty amazing.

As for flutter. I recently installed it again. A test app with a single CupertinoTextField consumes 45% of an Intel core on a linux desktop (Wayland and X11 were similar). Like, goodbye. Maybe if WORA means iOS and Android, fine, I get that is the common use case. But that is wishful thinking to false advertising as far as I care.

https://github.com/flutter/flutter/issues/125388

https://github.com/flutter/flutter/issues/101591 (going on 2 years!)

I also believe Google will shit can both this and Fuchsia, because Google is CADT baked into its organizational structure.

4 comments

The dart ecosystem is way richer than I expected it to be. So far I've found good options for everything I need and in more than a few cases the libraries are better designed than the JS equivalents.

I can't speak to Linux desktop performance but on the Mac my Flutter app sips CPU and memory.

Google abandoning it is a real risk. If they continue to support it I think Flutter has a great future.

So I tried the exact same test on a last gen Intel Macbook Pro. Same thing. 20 to 40% app CPU usage not including WindowServer. Putting cursorOpacityAnimates: false "fixes" it, seemingly similar to this:

https://github.com/flutter/flutter/pull/104335

This is more of an eyebrow raising signal to me. This is not quality congruent with a multibillion dollar company backing. If the cupertino widgets are in this sorry of a state they probably should be marked as such.

But perhaps someone more invested in the ecosystem may want to submit that pull request. It seems like low hanging fruit.

Sounds like this is specific to the Cupertino widgets? I’m not using those because I think they’re just going to put you in the uncanny valley of almost native Mac UI.

The material stuff looks good and performs well and at this point users have more desktop apps on their machine that don’t use native controls than do.

My flutter app is way more responsive and efficient than the electron prototype it replaced.

> 45% on an intel core on a linux desktop

Just tried it out. 3-5% in debug build. 0% on release build.

Let me guess, you did a TextField, not a CupertinoTextField? (It's 20% on release for me, still too much for a blinking cursor). Sure there may be some simple pathological bug in that one widget, but this quality issue in a fundamental widget in the official kit just does not give me the warm fuzzies, especially looking over the the github issue tracker.

And yes I am biased because it is google and they hardly dog food this product.

This particular problem is "fixed" by a simple cursorOpacityAnimates: false (which is apparently how they "fixed" TextField). That still doesn't speak well for QA. This is not really a complaint about a single widget. I really really want to like this stuff, but I have no confidence in it as a serious long term product.

https://github.com/flutter/flutter/pull/104335

Simple CupertinoTextField
> consumes 45% of an Intel core on a linux desktop

Like for 1ms? For a second? Eternally?

Eternally, as long as that text field has focus with the animation of a blinking cursor. I'm not telling my customers to make sure they're not "holding it wrong" by deigning to leave the app in the foreground and killing their battery.
CADT?