Hacker News new | ask | show | jobs
by snarfy 878 days ago
Flutter is like Qt where they implement their own windows themselves. But instead of C++ and OpenGL, they use ... Dart and CSS? All the ease-of-use and ergonomics of C++, and the raw bare metal performance of Python. /s

I try to give it the benefit of the doubt, so I found a demo site. Here is the first example I opened: https://flutter.github.io/samples/web/material_3_demo/

I click play on the progress indicator. My CPU usage goes up 5%. This is on a Ryzen 9 7950X3D. Compare to Unreal Tournament 2004 at max settings running at 240fps, which uses 6% cpu.

I just can't take Flutter seriously. I don't care how good the developer experience might be. It's absolutely terrible for the user.

4 comments

I started some cross-platform work about 6 ago and came into Flutter with plenty of hesitation. I was fearing this much ranted about janky feeling, but so far it has not come. AFAICT from the forums and such, the Web target is definitely far, far behind the mobile targets. This isn’t really a concern for me. For the app I’m building for iOS and Android, the result has been performant, and I’ve really liked the language and framework.
How's scrolling on iOS? Are you using the new rendering engine?
My app has lots of complex heterogeneous scroll views and performance is great on iOS (with impeller).
Thanks, I'll give it another chance when the impeller stuff settles more.
I think at least on iOS it's stable enough to use now. I'm also not having any issues with it on macOS. Android impeller still seems to have some bugs.
It's not fair to compare a web app to a native app.

A flutter desktop app will perform a lot better.

Flutter web is much less mature and performant than the native build targets. If the web is your primary target it’s not a good choice, at least not today.

Flutter mobile/desktop on the other hand performs great and is way more efficient than web UI.

It can use css on the web but in general it uses skia directly which is C++ and OpenGL (or Metal or whatever).