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.
The Flutteristas Conference should be live on YouTube by the time you read this. I'm looking forward to watching the talks. There are some great speakers, and also a code challenge about art and Flutter. I'm curious to see what people will come up with.
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.
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.
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.
The new Google Earth is made with Flutter. There is not much information in the blog post, but it is confirmed by the Flutter team.
I talked about local-first last week, crdt_sync and sql_crdt (with its implementations) by Daniel Cachapa seem to be good starting points to help Flutter developers with network synchronization, being compatible with Conflict-free replicated data type.
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.
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.
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.
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!
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”.
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”.
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.
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.
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.
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.
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.
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.
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.
The Appwrite Hackathon on Hashnode just ended and there are a lot of new Flutter projects being posted on Hashnode. Have a look at them and get inspired to start your own.
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.
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.
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.
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.
The Google I/O keynote was focused on AI but we also got plenty of Dart and Flutter sessions. At the same time, the Dart and Flutter teams published an article on Dart 3, one on Flutter 3.10, and a more general one about both.
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”.
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?
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.
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?
Google I/O has been announced and Flutter is going to be in it, as usual. Make sure you do not miss it on May 10.
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.
As usual, after a break there are a lot of interesting articles to catch up. So enjoy this rich issue spanning from upcoming features and chat bots, to UI-centric in-depth articles and some backend related ones.
These days, relying on huge cloud providers can result in bad surprises. Such surprises can become very costly, especially for hobby projects. A way to avoid them is to self-host the services you need.
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.
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?
A lot of architecture links in this issue of the newsletter. A couple of them are about Clean architecture in Flutter, using the BLoC pattern. The very last link, instead, is more about architecture in general in software projects.
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.
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
There was Flutter Forward this week. Do not despair if you didn’t watch live. You can watch the video or, even better, read the articles shared by the Flutter and Dart teams.
More content has been shared this week for the 17 days of new Flutter content. We are getting closer to the Flutter Forward event, and, after some technical problems at the start of the week.
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.
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.
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.
With Flutter for desktop, the team announced support for Linux, and Canonical, the company behind Ubuntu, started working on several packages to help developers integrate their Flutter apps in the Linux ecosystem.
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).
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.
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.
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.
The Flutter team tweeted a date Jan 25, 2023. What are they going to announce? Impeller being production ready? Dart 3 dropping support for null unsafety? Material 3 full support? End of Flutter? Support for wearables and TVs?