Flutter 2
I&#x27;m currently 5 months into developing a mobile app for a startup with flutter and my experience so far is very underwhelming.<p>Flutter as a framework is not the worst but far from best, it&#x27;s very OO while trying to use reacts vdom model which just wants to be functional.<p>The biggest limitation of the platform is Dart - it&#x27;s a horrible language that should have died once TS and ES6 became mature enough. And I&#x27;ve used dart back when it was supposed to be a JS killer shipped with browsers, used dartium to build a MVP for an app using Angular Dart durgin the betas.<p>Back then Dart was miles ahead in terms of tooling and JS the language didn&#x27;t even have async&#x2F;await - so I was singing it&#x27;s praises. But the language stagnated and it&#x27;s fundamentals with a nominal type system and a closed object model make the language so inflexible and full of boilerplate it&#x27;s incredible. It&#x27;s very much like Java (the language, without the powerful ecosystem) and people prefer Kotlin for frontend for a reason. C# is similar but they figured out that they need to build a lot of things in to the language to reduce the boilerplate so they are adding stuff like Records and pattern matching.<p>If you look at state management patterns in flutter there&#x27;s probably 5-10 competing approaches all lacking in their own way and all severely hampered by how unexpressive dart is. Or how you deal with serialisation&#x2F;immutability&#x2F;etc.