News and announcements
- Flutter now supports the web. Open source, repo on GitHub.
- Flutter 1.5 ships to the stable channel (release notes). Includes preliminary support for targeting Windows, Mac and Linux operating systems. New plug-ins for in-app payment, state management. New samples for ML Kit-based image classification.
- Support for developing on Chrome OS and publishing apps to Chrome OS.
- Dart 2.3 released with new support for UI-as-code features including the spread operator, collection if and collection for; website and package siteoverhauled.
- New reference customers for Flutter announced: eBay, Sonos, and New York Times. The Assistant team is using Flutter for their smart display platform with Flutter, powering the UI of devices such as Google Nest Hub.
- Updates for the Visual Studio Code and Android Studio tooling extensions.
- Flutter training course published by App Brewery, in collaboration with Google. Thirty hours of videos and labs, at a subsidized price of just $10.
- Flutter Create award winners announced, along with demo reel.
- International community-organized Flutter hackathon on June 1st.
In plain English: So what the heck is Flutter and why is it a big deal?
Let me get this out there first: This article is meant to give you a general, extremely vague understanding of what Flutter is and why you should bother to care. It is absolutely not technical (or even technically correct) and it’s not meant to be. It’s meant to give you the general idea because you’re sitting there saying: “Why the heck is everyone is so worked up about this Flutter thing?”
At AppTree, we recently made the jump to Flutter to replace our existing iOS and Android applications. A major part of our application is mapping.
Flutter is still in alpha and as such, still has functional areas yet to be completely built out. However we find Flutter to be so useful that we prefer to fill any gaps ourselves rather than waiting to adopt it when it’s fully matured. Fortunately, the Flutter team has come up with a great solution by allowing early adopters to build plugins.
“Flutter is a new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.” Modern, reactive framework allows us to build powerful UI with animations, shared codebase and views over iOS and Android platforms. It makes development process easier, development costs at minimal and rapid deployment. Flutter is build with C, C++, Dart and Skia. And the most beautiful part is that all release code is compiled in native code (Android NDK, LLVM, AOT-compiled) without interpreter involved. If you are familiar with performance drawbacks of hybrid frameworks you can easy say that flutter compile fastest code very close to pure native performance.
GeekyAnts has been working with React Native since its launch in 2015 and with many awesome apps to our credit, we are proud to say that we are one of the top React Native companies out there! 🎉 🎆
Over the years, we have noticed a few issues in React Native apps that make us want for “something more”.
Our search for this “something more” has led us to Google’s Flutter!
Flutter is an open-source mobile app development SDK by Google and we’ve recently started experimenting with it.
Now why did it interest us?
- Consistency of UI elements.
- Lot of predefined widgets which serve as building blocks for making complex pages easily.
- Flutter does not use the OEM widgets or DOM WebViews, but provides its own widgets that look and feel good, are fast, and are customizable and extensible.
- Flutter ignores the traditional model of layout. In Flutter, each widget specifies its own simple layout model. Since each widget has a much smaller set of layout rules to consider, layout can be heavily optimised. What’s more, almost everything in Flutter is considered as a widget.
- Less chances of ending up writing a buggy code as we have a lesser need of implementing external libraries.
So, while we’re working on our first open source Flutter theme, we’ve taken the initiative of Start Flutter, a library of free and open source Flutter templates.
For now, we’ve curated and added three open source themes, i.e….
When people talk about User Experience (UX), they often talk about their beloved consumer products: a smartphone, a messaging app, or perhaps a pair of headphones.
User Experience also matters when you build something for developers. People tend to forget that developers are users too, and software development is an intrinsically human activity limited by not only how computers work, but also how programmers work. Admittedly, there are fewer developers than consumers in general, but the more usable developer tools are, the more energy developers can spend on delivering value to their users. Therefore, the UX of developer products is just as important as for consumer products. In this post, I am going to introduce the developer experience, explain one of the ways we assess it at Google, and share some lessons we learned from a specific study we conducted on Flutter, a new SDK for building beautiful mobile apps.
The idea of developer experience is not exactly new. Research on developer experience dates back to the early days of computing, since all users at the time were developers to some degree. “The Psychology of Computer Programming”, published in 1971, is a landmark book on the topic. When we talk about developer experience, especially applying the term to an SDK or library, we usually refer to three aspects of the product:
- API Design, which includes the naming of classes, methods and variables, the abstraction level of the API, the organization of the API, and the way the API is invoked.
- Documentation, which includes both the API reference and other learning resources such as tutorials, how-tos, and developer guides.
- Tooling, which involves both the command-line interface (CLI) and GUI tools that help editing, debugging, and testing the code. For example, research has shown that autocomplete in the IDE has a large impact on how APIs are discovered and used in programming.
These three pillars of developer experience complement one another, so they need to be designed and assessed as a package.