Back in 2017, our CTO and Founder, Gareth Reese (who’d been involved in mobile app development for 15 years) took a look at emerging technologies and decided that we were going to concentrate on developing apps using Google’s new Flutter platform.
In other words, Gareth used a bit of foresight, and that’s where the name came from.
So. Why choose Flutter?
A new wave of mobile app development tools
Flutter, along with React Native, represent a new wave of app development tools. Back in the early days, you either got an Android app or an iOS app for your money. The choice was very simple - and restrictive.
Roll back to 2010 and Microsoft released a development framework called Xamarin. Xamarin allowed developers to write one codebase which produced both an Android app and an iOS app. This, along with Drifty’s Ionic, was essentially the start of cross platform development.
Let’s roll forwards a decade. Xamarin and Ionic have both been superceded - as part of a natural evolutionary process - by a couple of completely new development frameworks which have essentially changed the whole mobile app development landscape.
Xamarin is in big trouble and currently has a massively declining market - less than 11% of US apps use the Xamarin framework - and Ionic is not far ahead. It's really become a two horse race.
Let’s keep it short.
If you’re writing a mobile app today, you have three choices. Either hardware requirements will constrain you to use (expensive) Native development, or you should really look at either Facebook’s React Native or Google’s Flutter.
Use anything else and you can either unnecessarily spend a fortune or find you’ve adopted something weird and wonderful which will be unsupported and abandoned by developers in a year to eighteen months.
Really, React Native and Flutter rule the market at the moment.
Both are the product of evolution from earlier cross platform software - Facebook and Google have learnt from prior mistakes, in terms of application, feature sets, documentation and support.
The result is two development toolsets which developers like (always a bonus). Both have seen widespread adoption and inarguably, both are well supported and will be around for a long time.
Opinions vary, but of the two, we vastly prefer Flutter. And here’s why.
One of Flutter’s many major plus points is that Google have actually listened to what the wider developer community want. Without developers wanting to learn a new framework, there isn’t much point writing one.
Flutter is easy to learn and use. It’s based - unlike React Native - around the Dart programming language, which is pretty simple to learn. Anyone with a grounding in C or C# will pick up Dart with relative ease.
Without getting too technical, Flutter is fast to develop in. It’s very intuitive and well supported and documented. As a developer, you don’t have to spend all day fixing pointlessly awkward mistakes.
So, that’s what developers get. As a customer, what do you get?
Well, how about 40 to 50% off the price of developing separate Android and iOS apps, for a start? That’s how much more efficient it is to develop apps using Flutter. You save on expensive development time, and there’s also less problems with ongoing support and maintenance - just one codebase to maintain. Not two.
You get great looking apps which are easy to maintain, have a similar look and feel across platforms and which utilise the latest, futureproof technology. Flutter’s Skia engine renders graphics in the same way that a video game does. This is a first, it’s never been done before.
There are 1001 technical reasons why Flutter is going to be the development framework of the future.
But here’s the big one.
Multi operating system support
This is why we think that Flutter is going to be the absolute must have future development framework.
Flutter 2.2 now supports the following platforms.
Android
iOS
Linux (Debian - stable)
macOS (stable)
Chrome
Firefox
Safari
Edge
MS Windows
In other words, one codebase can be easily adapted to work on all the above platforms. So. Integrated web, desktop and mobile. Now, you may pay slightly more to get a web app made from a mobile app build, but not the fortune you’d pay for developing one separately.
We’ve also had clients who took the opposite approach, start from a web app and build a companion mobile app out from it. The point here is that Google is positioning Flutter not just as a mobile app development framework, but one for web and desktop apps, too.
As for the future, Google’s dalliance with its experimental operating system - Fuchsia - which has an underlying Flutter core - show that Google has big plans for the future of Flutter. Rumour has it that Samsung will deprecate Android on their phones in favour of Fuchsia / Flutter over the next few years. Whether this causes a snowball effect with other providers is yet to be seen.
So that’s why we chose Flutter, and we’d seriously suggest that you do, too. Interested? Want to know more? Click the button below to get in touch, we’re happy to chat through your next project with you any time.