Over the past weekend I had some time to explore new tech. I found Flutter and watched couple of presentations and keynotes and it grabbed my attention right away.
In my current company I lead a mobile project using Xamarin Forms, targeting Android and iOS. I always think about how to boost productivity and performance of the application and at the same time maintain an acceptable level of standards and maintainability. Having that said, I’m not personally involved with the coding a lot and I mostly observe the development.
After years of being actively working with Xamarin I realized that if I want to depend only on the built in controls I cannot get very far from just a prototype. In order to have a production level polished app I need to spend lots of time developing custom controls. You are still sharing the same code base in terms of logic and the main flow of the app and it’s all great but it takes time and effort to make an app look great.
Flutter in the other hand is different. It’s based on Dart (which is new to me) and has a very expressive way of working with the UI. Soon after my second video I found my self typing flutter create hello-world. I followed couple of the online tutorials and managed to put a smooth working app together in a very short time. Then I couldn’t stop there and I created a new project to try out form fields and see if I can put a page together on my own. One hour later I had a login screen with icon-text-fields, validations, hints, moving labels, tap screen to dismiss keyboard and even a small little snack bar with cute notifications. It looked like a production ready screen to me comparing to what I could achieve with Xamarin in the same amount of time.
Here are a few bullet listed facts regarding my first experience with Flutter and Dart.