|
Open the newsletter in your browser |
|
|
|
|
|
|
|
|
The notion of "server-driven UI" More and more applications are implementing a mechanism to create the application interface on the server side. The idea is to avoid an update for each visual change, but also to offer a differentiated experience from one user to another. Giants such as AirBnb and Zalando already use it, for example.
An official solution? It was through Guillaume Bernos that I discovered that a package had recently been added to the official Git flutter/packages under the name "rfw", which stands for Remote Flutter Widgets. According to the README, behind this rather barbaric abbreviation is hiding actually: "This package provides a mechanism for rendering widgets based on declarative UI descriptions that can be obtained at runtime."
And does it work? Well, yes! The project is fully functional and several examples are available. In particular, there is an example of code provided by the server which then renders the famous Flutter counter.
What's next? For the moment, the solution is in its infancy, but it does work. There is no documentation as such and the README already raises some limitations: "Flutter proper lets you create widgets for compelling UIs with gestures and animations and so forth. With RFW you can use those widgets, but it doesn't let you create those widgets." Likewise, this is only the client-side implementation, as the server brick is not provided. But on my side, I bet I'll be watching this Git closely. |
|
|
|
|
|
Once upon a time… With the first Android versions, Google Play used to exist under the name Android Market. At the time, the app shop was intended to be the polar opposite of Apple's: no checks when adding or updating apps and above all no limits on content. At the time, the Eurodroid site was worried about the pending arrival of hundreds of "sexy" applications. After renaming the service to Google Play, the American company began to clean up its act and set up checks. Of course, applications with sexual content were quickly removed.
Yes, but… Google's policy is therefore resolute on the subject, but last week, its controls reached their limits. In a video published on Twitter , a user spotted a "Connect-the-Dots" app with an advert for another game. There, a virtual model was shown, offering to remove her clothes. No need to draw you a picture… Very quickly a Twitter account @wtfgoogleplay was opened to spread the information and it took 3 days before Google reacted to remove the application and permanently ban the developer's account.
What's next? Still active, the Twitter account @wtfgoogleplay regularly urges Google's CEO to take action. But is it feasible and what can be done? Admittedly, such a manipulation could also have occurred on the AppStore, which is subject to stricter controls, however. Indeed, the application displayed this advertisement only after a certain amount of progress. And with thousands of applications being updated every day, it seems impossible to test them all in such detail. |
|
|
|
|
|
What is .NET MAUI? Announced in 2020 at the Microsoft Build conference, the acronym stands for .NET Multi-platform App UI and designates the successor to Xamarin.Forms, with the ability to create not only applications for Android and iOS, but also to generate native applications for Windows and macOS: the idea being to capitalize on the .NET developer ecosystem.
A release planned with .NET 6 When it was announced, this project was supposed to be delivered with the new version of .NET 6, namely in November 2021. Unfortunately, the deadlines have more than shot up, with Microsoft announcing a year's delay! In a blogpost , a Microsoft engineer explains:
"Unfortunately, .NET MAUI will not be ready for production with .NET 6 GA in November. We want to provide the best experience, performance, and quality on day 1 to our users. To that end, we need to slip the schedule. We are now targeting early Q2 of 2022 for .NET MAUI GA".
Now, what to do until then? For Xamarin projects, Microsoft is keen to be reassuring, indicating that it is continuing to work on the project, so that applications in production will not be affected. Several previews of .NET MAUI will be available by the end of next year: you can start developing with it today, as instructions are provided in the post . |
|
|
|
|
|
What is AngularDart? As the name suggests, AngularDart is the Dart-based version of Angular. At Google, the framework is notably used by Google Ads or Google Play Console. Unfortunately, and like Dart a few years ago, the Angular project is in decline. However, unlike its elder brother, the Dart team has recently announced it was going to reduce its investments in the project so as to focus on Flutter Web.
A move to null safety Google is certainly known for killing its own projects, but this time it has the merit of doing it in a progressive way. A 7.0 version has been made available for a few days and now supports the Dart 2.12 null safety.
A step towards the grave Unfortunately, this will be Google's last initiative, as it announced : "In the next few weeks, we'll deliver a stable external release of AngularDart with null safety; at that point, it will shift into maintenance mode. If a committed consortium or community group wants to take over leadership of the project and continue to evolve it, we're interested in hearing from them". And as far as we can tell, nothing is being done about it at the moment. |
|
|
Miscellaneous news in brief |
|
|
🐢 Do you find IntelliJ slow? No, it's not a feeling, the Flutter plugin seems to have huge slowdowns |
|
👨💻 One of the features of Dart 2.15 will be tear-off constructors (documentation ). They should be made ready for testing around the beginning of October . |
|
🧐 On Twitter, Nilay Yener, from the Flutter team, suggests that announcements will be made in the next two weeks. Wait & see 🕵️♀️ |
|
📈 Some highlights:
- Flutter's GitHub just topped 130,000 stars.
- Since its launch, the iPhone has reportedly sold over 2 billion units!
- Games on the App Store account for 70% of sales…
- … and this 70% is generated by only 10% of buyers
- 80% of App Store users do not generate any revenue
|
|
According to a study , PHP remains by far the most commonly used programming language for server-side development, with almost 78.9% in 2021! |
|
🔋 The European Commission wants to impose a universal USB-C charger for smartphones and other small electronic devices (headphones, consoles, cameras…), in the name of consumer rights and the environment. Obviously, Apple is in the crosshairs. |
|
🛍️ StoreKit, the APIs for iOS, iPadOS, watchOS and tvOS allowing to offer in-app purchases and subscriptions are going to version 2 . In addition to a rewrite in Swift, we will be able to determine access rights to products as well as offers eligibility, access a transaction history and quickly check the subscription status. In addition, the APIs present the same information as the new App Store server-side APIs. |
|
🌍 After focusing on privacy, search engine DuckDuckGo announces it is "carbon negative". |
|
💰 A good free plan: on 11 and 12 October, Microsoft will offer a two-day introduction to Azure . On the agenda: "Basics: you will learn about cloud computing concepts, models and services, covering topics such as public, private and hybrid clouds as well as infrastructure as a service; platform as a service; and software as a service". At the end, you can even take a certification, for free. |
|
📱 Smartphones with foldable screens are on the rise: the Galaxy Z Flip 3 and Z Fold 3 from Samsung, rumors of two phones from Google and now Microsoft has announced its Surface Duo 2. Available in selected countries by October 21st, it will be sold at $1,499/1599€… not sure it will sell truckloads…
On the other hand, there is a real trend for folding/foldable devices, so be sure to check out Microsoft's articles on the Flutter implementation of this type of device. |
|
🕵️ Chrome 94 is available and features a controversial API called Idle Detection that allows sites to detect when a user is idle. Apple and Mozilla have already announced that they have no intention of supporting this API, due to privacy concerns. |
| |
|
What a lot of nasty things have been said about QR codes! But let's be honest, they do us a lot of good when it comes to health-passes or restaurant-menus. Now, where do these notorious QR Codes come from?
Far from being a recent technology, it was invented in 1994 in Japan by Masahiro Hara for a Toyota subsidiary. At the time, the engineer wanted to be able to track the condition of spare parts. In those days, barcodes were too limited in the amount of data they could store: about ten characters. In contrast, QRCodes can contain up to 4,296 alphanumeric characters.
It was not until 1999 that the QR Code was released under a free license, allowing it to spread more widely, mainly in Japan in the early years. Gradually, they spread around the world as well as in museums.
In addition to its COVID-19 related use, these QRCodes are still used for, among other things, simply sharing access to a WiFi network. Proof that 20-year-old technologies are still very useful! |
|
|
Dart/Flutter articles and tutorials |
|
|
|
Sometimes several GestureDetectors in a widget tree conflict with each other: which one should intercept the event? In this article you will learn how to handle this case, which is not so complicated after all. |
|
|
|
|
|
So, you want to test your knowledge of Flutter or you are going to take an interview soon? Here are some links to practice:
|
|
|
|
|
|
|
Overflows, incorrect sizes… are problems we all face regularly. In this great article, the idea is not to provide a general solution, but rather to focus on an example and understand the process to correct it. |
|
|
|
|
|
A developer was not satisfied with state management solutions, including BLoC, Provider and Riverpod. That is why he created his own version and explains in this article how to use it. |
|
|
|
|
|
Since Flutter 1.22, it is possible to restore the state of your application when it has been killed by the system. In this article you will discover how to proceed, firstly, with the preliminary backup, secondly, with the restoration. |
|
|
|
|
|
Flutter is divided into two bricks: on the one hand, the framework we use to develop applications and on the other, an engine to which embedders (e.g., Android, iOS, etc.) are connected. Flutter can therefore work everywhere as soon as an embedder is created. In this article, you will learn how to create your own. |
|
|
| |
|
|
|
|
|
Testing Widgets in the Flutter documentation |
Very often the Flutter documentation offers an interactive Dartpad to view a Widget. But did you know that you can directly import this project at home? Indeed, at the bottom of each example, there is a command like flutter create --sample=widgets.AspectRatio.1 mysample (example with the AspectRatioWidget ) |
|
|
|
|
Ping attribute on links |
This is a very little-known attribute of the HTML <a> tag: ping. It makes it possible to give a list of URLs that will be evoked in POST when the user clicks on them. Very useful for those who want to track clicks… without having any Javascript code to write. |
|
|
|
| |
|
|
|
|
|
Do people still publish their #flutterpen demos? I had some spare time and partially reproduced bouncy focussss indicator by @hakimel in #Flutter. It was fun, but oh how I wish Flutter would perform better on web…
Here's the code and demo
|
|
|
|
Dominik had some fun reproducing the animation you see in the video, which consists of adding an animation when the user changes the field in a form. By the way, did you know that Codepen can execute Flutter code? |
|
|
|
|
|
|
|
|
|
|
|
The support for Macs with M1 processors is getting better and better, but not everything is as plug-n-play as it is on Intel processors. This utility allows you to install the entire Flutter environment without the hassle. And the good news is it also works on Windows and Linux. |
|
|
|
|
|
|
If you want to run Android applications on Linux without going through the emulator, Waydroid is a particularly good solution. Since it runs in a container, you can run as many applications as you want and also enjoy a multi-window mode. Note that the image used is currently based on LineageOS and Android 10. |
|
|
|
|
Job offers, assignments and internships |
|
| |
|
CrewNew.com - Mostly remote, with meetings in Eastern Europe or Latin America |
We are developing for a wide variety of devices. Your main task will be to implement adaptive screen designs and user experience for mobile, web and desktop Flutter apps. Requirements: at least 1-year experience with Flutter, basic knowledge of Flutter's rendering pipeline, have experience with developing projects with complex requirements… |
| |
|
Monstarlab - Prague, Czech Republic |
We are looking for a motivated and experienced Flutter Engineering Manager who will influence and support their respective development team to meet given objectives and deadlines. This is a people management role that includes responsibility for people's career development, client satisfaction, and overall delivery quality. In its implementation.
Monstarlab already creates awesome mobile solutions to join our team. If you are someone who is comfortable with Dart, then we would love to hear from you. |
| |
Are you looking for a Flutter talent? Send them to Flutter Jobs! |
|
|
|
|
|
14 October |
Woodstock - USA |
Making Responsive UI as Smooth as Flutter |
|
|
29-30 October |
Online |
Flutter Kaigi |
|
08-09 December |
Online |
Flutter Global Summit |
|
|
Your opinion on this issue |
| | | | |
|