Hacker News new | ask | show | jobs
by never_inline 878 days ago
> The ecosystem is immature

There are usually good libraries for most things today. And with Android / Jetpack ecosystem moving so fast and deprecating things, Flutter is something to consider even if you target just Android.

My biggest two concerns were state management and native interop.

State management is probably biggest concern - there are at least 5 approaches / libraries competing for mind-share - and none of them are particularly ergonomic.

I did get an opportunity to work for a while on native interop for android / java [1]. But I haven't been able to work on that since long time.

[1] - https://mahesh-hegde.github.io/posts/building_jnigen/

2 comments

> State management is probably biggest concern - there are at least 5 approaches / libraries competing for mind-share - and none of them are particularly ergonomic.

I've heard this critique a lot (particularly about Flutter), but I'm not sure I agree that having multiple state-management approaches is a bad thing. Can you elaborate on why this is painful?

From my perspective, (and to borrow the 'ergonomic' metaphor), it's like opening a toolbox and finding 5 different screwdrivers with similar heads. Some might not be well-suited to your project, and of those that do, one might have a handle that you find more ergonomic. I find it hard to imagine a screwdriver that could fit all screws and feel amazing in all hands at once.

Also, fwiw, I find Riverpod to be very ergonomic ;)

I've never understood why people need to use libraries to "manage state", i.e. store variables.

I've written a lot of code in many languages. C, C++, Obj-C. Why does Dart need state management libraries?

None of my Flutter code uses "state management", and I've never felt the need for it, ever.

I think people are just too afraid to use static variables (globals) when necessary.