A month of Flutter

Noto is the third iteration of an idea that has been cooking in my head for a while now.

The first and second iterations where built in ReactJS and React Native. I am using Flutter for this third prototype (hopefully the final one!)

Working on Flutter is super fun and very efficient from the first lines of code. In just one month, I have the first public beta almost ready.

Want to participate from the very first beta? I will invite the first fifteen subscribers. Join below! 🙄👇

As this milestone is approaching, I wanted to write a bit about my first impressions while learning Flutter after using React and React Native.

Productivity and iteration speed are amazing in both. Coming from game development, things like hot-reload blow my mind. It's so much more fun to work like this. Lots to learn for game developers from these frameworks.

React Native has a bigger community and it's easy to find tutorials on anything. Problem is you often find content of varying quality, conflicting solutions and you'll need to spend time figuring out what's the right/modern way to do things.

Flutter compensates with a lot of official documentation, videos... They have "Codelabs" that are detailed, easy to follow and on relevant topics. Overall, I would recommend #Flutter over #ReactNative for someone completely new to app development

Flutter comes with everything in the box: Styled components (Android or iOS style), navigation, IDE plugins... React Native comes a bit more barebones and you will likely need third-party dependencies to fill the gaps. Another reason to start with Flutter if you are new to this.

React Native is a more valuable skill to acquire: A quick search on job portals shows ~10x more React Native jobs than Flutter. React and React Native are more widely used in the industry. Flutter is new and... Who knows if Google will stay behind it in the long run?

React uses JSX for declaring the UI structure. Having spent so many hours as a web developer, I love it. Flutter uses an extreme composition syntax based on Dart, which is not well suited for this job.

Android Studio tries to mitigate the crazy syntax with "virtual comments", and with a lot of refactor actions (wrap in widget, remove widget, etc.) It helps, but I'm still far from getting used to it.

To summarize:

  • Flutter is fast, easy to learn and tremendously satisfying to use.

  • It has a smaller community but the official documentation compensates for it.

  • It comes with everything you need “in the box”. Ideal for prototyping quickly or for solo developers (like me!)

Found this content useful? Please share! 👇 Or just drop me a note on Twitter :)