Michele Volpato

Michele Volpato

Newsletter

#126: Flutter 3.16 and Dart 3.2

This week the Flutter team announced the release of Flutter 3.16, with a preview of the Android Impeller, updates to the Game Toolkit, iOS app extensions, and more. The new release also adds support for DevTools extensions, which will allow third-party developers to add their own tabs to the DevTools UI.

#124: About Flutter and team culture

I already talked about Fluttercon 23 and David DeRemer’s keynote focused on culture. David published an article on the same subject, Flutter Can Transform Engineering Team Culture, I suggest you read it if you did not watch the keynote. It’s about the opportunity we get, as Flutter developers, to contribute to the team’s culture.

#123: Better codebase maintanability with flutter_lints

A new version of flutter_lints was recently published. Lints help keep your code base consistent. They can also be used to avoid potential future bugs. Many new rules have been added in this version and some have been removed, bringing the minimum Flutter version to 3.10. See the full changelog.

#122: Why is this game made with Flutter?

We know Filip is working on GIANT ROBOT GAME, a game made in Flutter. In Why is this game made with Flutter? Filip explains that Flutter’s ability to render thousands of triangles at 60 frames per second is crucial for creating smooth user interfaces in the game. Although other game engines may be more successful or faster for certain scenarios, Flutter was the better choice for this game, which primarily focuses on menus and simple 3D objects with a heavy reliance on UI work.

#119: Design your Flutter app local-first

Local-First, similarly to offline-first, refers to a way of building apps where data is manipulated first in the client and then synchronized with a server. In Some notes on Local-First Development by Kyle Mathews, you’ll find a review of how the space is shaping.

#118: New Flutter conferences are announced

November seems to be a busy month for Flutter conferences. Among the newly announced ones. Flutter Bytes in Lagos, Flutter Kaigi in Japan, and the online Flutteristas conference. The Flutteristas is a world-wide community of people active in the Flutter ecosystem. I attended some of the their members’ talks at Fluttercon, and many of those made into my favorite ones.

#117: We're better than this

Bjarne Stroustrup is the computer scientist who invented C++. He has some (life) advice for developers. From the interview, So you can’t just do code. You have to do something about culture and how to express ideas. I mean, I never regretted the time I spent on history and on math. Math sharpens your mind, history gives you some idea of your limitations and what’s going on in the world. And so don’t be too sure. Take time to have a balanced life.

#116: Transition from one shape to another shape in Flutter

I linked articles about animations with Flutter in previous issues of this newsletter. When and how to create Custom Implicit Animation Widget? is a bit different. It shows how the author, Adebisi Adetoba, went through different iterations of the solutions to the problem smoothly transition between different gepmetric shapes. The article has also code snippets you can run directly, added using Zapp!

#115: F3 and giant robots

I reported some Flutter-related conferences in the past, but I think I never mentioned Flutter Firebase Festival in Prague. It’s organized by Invertase, a well-known company in the Flutter community. One of the speakers is former Flutter team member Filip Hráček with a curious topic, “Flutter Mad Science”.

#114: Flutter conferences and updates

Last week, I linked “🫴🦋 Is this an emoji?” as a general programming article. A newsletter reader pointed out that there is a package on pub.dev, characters, that helps dealing with “strings viewed as sequences of user-perceived characters”. Google published a blog post on this package and the subject in general. There are also some news about Flutter conferences FlutterCon videos and Flutter & Friends talks are out. There is some overlap between the two conferences, but there are some talks I am looking forward to, like “Flutter on the Server Why & How it is Interesting”, “The 6-Step Flex Layout Algorithm, for Humans”, and “Building Voice-Enabled Flutter Apps A Comprehensive Guide”.

#113: Migrate a native production app to Flutter in a year

Tide is a financial services platform with a strong presence in the UK market and very ambitious global growth plans. In a recent talk, Giorgos Ampavis and Anna Leushchenko discussed Tide’s decision to switch to Flutter and their journey of transitioning from native development. In the talk, they highlight the challenges they faced in expanding to new markets and the need for a flexible and cost-effective solution. Learn about their decision-making process, the creation of an internal Flutter Academy, their approach to scalability and maintainability, and the importance of automation and quality assurance in the development process, as well as their release strategy. They believe that the transition to Flutter has been instrumental in accelerating Tide’s mission and paving the way for new opportunities.

#112: Fluttercon 23 Resources

Videos of the talks at Fluttercon 23 are not available yet, but Andrea Bizzotto managed to collect many of the slides from the speakers. Have a look at them while waiting for the videos to be published.

#111: Add widgets to your phone home screen in Flutter

One of the areas that Flutter does not cover compared to native iOS and Android development is the possibility to add home screen widgets. On iOS and on Android, you can add app-specific widgets to your phone home screen but this cannot be done with just Flutter. So it is nice to see that the Flutter team takes these framework limitations into consideration and created a codelab to help developers do that.

#110: More notes about Fluttercon

Last week, I gave you my list of favorite talks from Fluttercon in Berlin. This week, I give you a link to Dominik Roszkowski’s notes from Fluttercon 2023. At the end of the notes, you can also find the slides to his talk - From Network Failures to Offline Success A Journey of Visible App.

#109: Attending Fluttercon 23

I have been to Fluttercon 23 this week. I met a lot of people and listened to many talks. I decided to dedicate this issue to my favorite ones, among those I attended. Videos and slides are not available yet, except for a couple of them, but I will update the newsletter website with the links when they will be.

#108: Quarterly Flutter survey

The results of the Q1 survey are out. I am surprised to see that both sides of the job interview table are having problems. Hiring managers with finding qualified candidates, and job seekers with getting their skills to the level required by hiring companies. In my experience, job seekers who do not have much experience working in established Flutter teams should concentrate on growing as software engineers. If you are a good software engineer who knows a bit of Flutter, you have a higher chance to find a job in the field, compared to a Flutter developer with no knowledge of software architecture and design.

#107: Flutter events and conferences

Only a few links this week, most Flutter developers must be getting ready for the upcoming conferences like Flutter Croatia and Fluttercon in Berlin. There have also been Google I/O extended events recenlty and more are coming up, check if there is any near you.

#105: Google Summer of Code 2023

The Google Summer of Code program aims to get new developers started with open-source software development. This year, there are two Dart organization projects. Not all the ideas from the Dart team were selected for a project, maybe you can pick one of the remaining ideas as a personal project.

#104: Tim Sneath is leaving Google

Tim Sneath is leaving Google. He joined the Flutter team in late 2017 and, since version 1.0, Tim has successfully led it. He has been crucial to the success of the framework. Google is known to kill projects, even fairly used ones. At Google, it seems that starting a project is more beneficial for your career compared to maintaining and improving existing ones. So when I see people leaving the team, I do get a bit worried. Let’s hope that, like Android and Youtube, Flutter is considered too big to fail.

#103: Wireless debugging with hot reload on iOS

I never tried it before. Apparently, Flutter 3.10 enabled wireless debugging with hot reload on iOS. I do not see my life getting any easier with it, but it does look cool to have one fewer cable on your work desk. Learn more about it in Flutter iOS Wireless Debugging Is Awesome by Robert Brunhage.

#102: Upcoming Flutter conferences in Europe

Droidcon Berlin is an upcoming three-day conference about Android development. This year Fluttercon, the largest(?) Flutter conference in Europe, will be co-located with it, for a total of hundreds of talks, 10 tracks, and thousands of attendees. The agenda is not available yet, but you can already check the list of speakers with the title of their talk. Are you unable to attend the conference? Check Flutter & Friends in Sweden next September.

#100: A new podcast dedicated to Flutter

Welcome to issue number 100. Thank you everybody for sticking around. If you also like to listen to people discussing Flutter, Beyond Flutter is a new podcast by Max Weber. It joins other active podcasts; It’s all widgets! and Flying High with Flutter. In the first (non-introductory) episode, Hubert Białęcki and Marcin Wróblewski, mobile developers at Monterail, join Max to discuss “the world of cross-platform development, discussing the benefits of Flutter, industry trends, AI-powered tools like ChatGPT and Copilot X”.

#99: Dart and Flutter content at Google I/O

Google I/O content was announced this week and there are some interesting talks about Dart and Flutter. Reading the titles, I think nothing really new will be presented. You can already find references to those talks in content that is already available online. Nevertheless I am going to watch the Material 3 and and Impeller related talks. What about you?

#98: A new GameKit for Flutter, by Rave

Rive announced a GameKit for Flutter. It helps you building performant games that use the Rive animations. It can also integrate with Flame. The Rive Editor, the main product from Rive, is built with Flutter, so it makes sense that they chose Flutter for their new GameKit.

#97: A new Flutter video series

The Flutter team added a new video series, The Flutter Build Show, to all the others like Observable Flutter; Learning to Fly; Decoding Flutter; Flutter in Focus - I bet you forgot about this one; The Boring Flutter Development Show. Plus the package and widget of the week series. I am not sure about the differences between this new show and the others but I hope it will touch on more advanced topics. What do you think?

#95: Flutter strategy and roadmap for 2023

The Flutter team published the strategy and roadmap for 2023, a must-read for developers who wants to keep using Flutter in the long-term. You can also read a more technical roadmap for 2023, which is always publicly available next to the Flutter code.

#92: New articles about Dart 3

Dart 3 is getting closer, with a long list of changes. Articles about the new features are starting to appear so that you can have a preview of what you can do with them. In this issue, I link a couple of them, but I am sure we will get to read more in the upcoming weeks.

#91: Strive as a mobile developer during tough times

This year there have been, and there are still, massive tech layoffs. The biggest tech companies are letting go many employees, as they increased their headcounts a lot in 2021. What can you do now to help you fall on your feet in case you lose your job in the near future?

#89: Realm for Dart and Flutter

Realm is a mobile-first database with SDKs available for Swift, Kotlin, React Native, and others non-mobile stacks. This week MongoDB announced the availability of a Realm SDK for Flutter/Dart as well. It is open source and the Dart team posted an article about it. The SDK calls the C++ Realm library using dart:ffi. If you have used Realm in other projects you can now port your knowledge to Flutter projects as well.

#88: Review of submissions

As usual, right after an official Flutter event, community created content slows down a bit. Expect fewer links this week. Regarding Flutter Forward, Craig Labenz reviewed in a live stream the submissions for the

#85: 17 days of Flutter is going strong

You need to take some days off to be able to keep up with all the content shared by the Flutter team. In these first days of the 17 days of new Flutter content the team already shared (Codelab) Build a game with Flutter and Flame; (Video) Package of the Week Flame; (Video) Building Doodle Dash with Flutter & Flame; (Video) More Doodle Dash Improvements!; (Video) Adding platforms, enemies, and power ups.

#84: 17 days of Flutter

The Flutter team announced 17 days of new Flutter content leading to the Flutter Forward event on January 25th. There is also a funny video announcement.

#83: Back after the Christmas break

With everything that has happened with Twitter lately, I decided some issues ago to avoid linking Twitter profiles in the newsletter. I prioritize personal websites, but if I cannot find any, I link either GitHub or LinkedIn profiles.

#81: Dart 3 is coming

Soon Dart will drop support for unsound null safety. If you have been updating Dart versions and dependencies regularly, not much will change for you, probably. In the article above, there is also a preview of a new feature that will be introduced during Flutter Forward - patterns. With patterns you get multiple returns for a function, destructuring, pattern matching over algebraic datatypes (switch over class types).

#80: Am I a Flutter course creator now?

Educative is a learning platform that focuses on written courses, rather than the usual video courses of other platforms. Not everybody like to watch a video to learn something new. Some people prefer to read explanations and observe what they are learning in a hands-on coding environment, where they can change the code and see what happens.

#79: Black Friday deals?

There is a big black Friday sale on Kodeco. I am biased because I occasionally do some tech editing work at Kodeco. Books and courses are created by passionate developers, and you should have a look at what is available for Flutter. Kodeco is the new raywenderlich.com.

#78: What is Flutter Forward?

The Flutter team gave more information about the announcement they made last week. They are still not giving any precise information, but expect to see what they are working on and expect to get more updates between now and January 25.