This article is more than 1 year old
Canonical: Flutter now 'the default choice for future desktop and mobile apps'
Cross-platform appeal outweighs performance penalty, argues Linux flinger
With an aim to expand the Linux app ecosystem, Ubuntu desktop engineering manager Ken VanDine has popped up in marketing material for Flutter to say that Google's cross-platform framework is Canonical's "default choice for future desktop and mobile apps".
Flutter is a framework using the Dart language that targets Android, iOS, Windows, Linux, macOS, and web applications – though the macOS and Linux versions are "considered beta quality".
Despite that limitation, Canonical declared last month that it would build new desktop installers in Flutter. Now the company has gone further, pointing developers to a statement by VanDine, who said that "Flutter is the default choice for future desktop and mobile apps created by Canonical" and that the Flutter SDK is available from the Snap Store, making it easy for developers to get started.
Google's multi-platform app framework Flutter reaches version 2, expands to the webREAD MORE
Last week Ubuntu product manager Rhys Davies said that a Flutter app can look native thanks to "a collection of widgets modelled purposefully after native Ubuntu desktop designs" and that "Flutter has better performance than alternatives such as Electron and while it isn't as performant as native development platforms, it does so well that the ability to develop for multiple platforms and across operating systems outweighs the difference."
The goal, it seems, is to encourage more developers to build apps for Ubuntu. "Cross-platform development doesn't just mean Linux developers can write apps for other platforms, it means Flutter developers for any other platform can contribute their apps to Linux and expand the Linux app ecosystem," said Davies.
Ubuntu is among the most popular Linux desktop distributions so it is an influential backer for Google's framework. The value of cross-platform frameworks is endlessly debated, though, with the productivity of developing once for multiple targets set against the compromises that entails, both in performance and in platform integration.
Despite Canonical's reassurances on this subject, there is risk of what Thoughtworks chief scientist Martin Fowler, writing a decade ago, called the "uncanny valley", where a user interface looks nearly right but "there are just enough tiny differences to throw users off."
Canonical turns to Google framework for new installer, but community asks why not have a Flutter on GTK?READ MORE
Fowler said that "you may notice that cross-platform apps have, on the whole, not been successful" and that "if it's worth building a native app, it's worth building it properly, including an individual experience design for that platform."
Ten years on, cross-platform technology has improved and there are plenty of examples of successful applications such as Visual Studio Code, the productivity suite LibreOffice, or the audio editor Audacity.
There is a still a cross-platform overhead, though, and an argument that first-party applications for a platform should be fully native in order to show off the best that platform can offer. Anointing a cross-platform toolkit as default therefore does introduce risks, despite the appeal of an expanded application ecosystem. ®