Search This Blog

13 March 2024

Flutter

Let's look at some data for Flutter usage taken from the StackOverflow yearly developer survey. We will track how much Flutter and Dart change over the years. We can see that up to 2021 Flutter is growing for a top of 13.55%. After 2021 there is a downward trend.
















https://survey.stackoverflow.co/2019

https://survey.stackoverflow.co/2020

https://survey.stackoverflow.co/2021

https://survey.stackoverflow.co/2022

https://survey.stackoverflow.co/2023/


Some other ratings. These don't rank frameworks, but knowing the connection between Flutter and Dart, we would look at Dart ratings:

https://redmonk.com/sogrady/2023/05/16/language-rankings-1-23/

Rates Dart at place 19.

https://www.tiobe.com/tiobe-index/

Rates Dart at place 32 with overall percentage of 0.50%.

It seems that Flutter is following the normal path for a cross platform framework. Initial growth, because a lot of people believe the promise of write once, run everywhere, faster, better, easier. Then cool off, because these promises are not quite correct in general.

Comparing cross platform development for mobile, I can say Flutter looks best at the moment. Seems a lot easier than for example React Native. In addition it can do web applications as well.

Apart from Cordova or any embedded browser view framework, any of the other frameworks bring a big build complexity with them - what is the build process; what framework specific libraries are you going to use; how does this new dependencies tie with your project; what if you need to have a part of the application in native, how does this tie with the framework; Unknowns, decisions, problems and dilemmas. With native you have one problem - supporting two platforms - having two developer profiles Android and iOS. With cross platform you have additional problems.

In general if web is enough, than this is your develop once, run everywhere solution - but still as with the cross platform frameworks's promises for "write once, run everywhere, faster, better, easier", this isn't quite true - supporting different browsers, browsers on different OS, different screen sizes (desktop, mobile), etc. Otherwise if you need some cross platform keep native with embedded browser view.