Flutter an Embarrassment for 99% of Developers
Flutter, a cross-platform app development framework, has gained considerable attention in recent years. However, it is not without its fair share of criticisms. In this article, we will explore some prevalent concerns surrounding Flutter, shedding light on areas where developers and users alike have faced challenges and limitations. The points are presented in an order that is easy to understand.
Flutter for Web
This is the easiest one to discuss. Flutter on the web has been a disappointment. By utilizing a canvas to draw everything, Flutter for web sacrifices too much. Many developers and enthusiasts within the Flutter community agree that the current state of Flutter for web falls short of expectations. The lack of native web components and the heavy reliance on a canvas-based approach have proven to be significant hurdles for creating web experiences that align seamlessly with user expectations.
In simple words, Flutter for web is subpar, and most people agree on that. For the very small percentage of people for whom it is useful for games and 3D animation stuff, they should consider using Unity instead.
Code Push/Updates
One of the notable drawbacks of Flutter is its lack of built-in code push capabilities. While companies like Shorebird have attempted to address this issue, developers still face hurdles when pushing updates to their apps.
Unlike some technologies, Flutter often requires developers to build a new binary and wait for approval, even for minor changes such as fixing a misspelled word or adjusting the width of a button. This approval process can lead to delays and hinder quick iterations, which can be harmful to your users.
Accessibility Features
Users didn't pay $1000 for an iPhone to get a cheap screenshot of a button that looks like a native iOS button. Even if it looks like a native button, it doesn't behave like one.
For example, the scroll view behavior on Flutter apps is absurd. With one-finger scroll, the speed is normal. When you scroll with two fingers, the speed is doubled, and so on.
Flutter's attempts to match or surpass the accessibility features provided by established platforms like iOS and Android have met with mixed results. While these platforms have invested years of effort into building comprehensive accessibility features, Flutter's relatively shorter development time has made it challenging to achieve the same level of sophistication.
For developers who value the native aesthetics and behavior of platforms like iOS, Flutter's attempts to replicate these features may fall short, leading to frustration and dissatisfaction.
Skia
Skia, the underlying graphics engine powering Flutter, has been both a selling point and a source of criticism. While it offers advantages to a specific group of developers, the overall abstraction provided by Skia can be problematic.
Many of the issues encountered with Flutter can be traced back to this underlying engine, as developers often find themselves reinventing the wheel to overcome limitations or achieve desired functionality.
In cases where complex graphical rendering is required, alternative frameworks such as Unity may offer a more suitable solution.

