Widget Tricks Newsletter #17
In Build Badge Widget. Who is Hiring? Hard work wins in business. Macros: A Game-Changing Feature. How to fix bugs & contribute to Flutter Framework. Release your patch using Shorebird and much more.
📝Post of the month:
💼 Job To Apply:
Senior Flutter Engineer - Hub At Monta : (Hybrid Remote)
We are on the lookout for a talented Senior Flutter Engineer - Hub
As a Senior Flutter Engineer - Hub at Monta, you will help realize exciting new features in the Hub, our B2B Charge Point Management System (CPMS).
Salary: 72,000 - 81,000 Eur
Mobile Developer (Flutter) At Legal Startup : (Remote)
The client is in the early stages of a start-up in the Legal domain and is seeking to hire a Mobile Developer specialising in Flutter. This role focuses on developing the mobile aspects of the client's projects. The initial development will be project-based, with the potential for full-time hiring at a later stage.
Salary: Not available
Senior Mobile Engineer At Fujitsu Launchpad : (Remote)
We are seeking a senior mobile engineer with Flutter expertise to work with the Launchpad engineering & product teams and intrapreneurs to build and grow digital products from scratch, while setting a strong foundation for Launchpad’s technical organization
Salary: Not available
✍🏻 Articles to read:
How to Navigate Without Context with GoRouter and Riverpod in Flutter by Andrea Bizzotto
Navigation is one of the most complex things to implement and test. Doing it wrong can break your user journey. Usually, we need a BuildContext
to get our Navigatorand perform necessary navigation. However, this BuildContextmakes unit testing harder. So if you are using Riverpod, then you can use navigation without context and also easily test it.
Hard work wins in business (aka it ain’t just about luck) by Anand Sanwal
If a random guy off the street asks me how I became successful, it’s humble to say, “I got lucky.”
If my kid asks me how they can be successful, I won’t say a word about luck. I’ll tell them to work their ass off.
New and Successful Experiment of webOS with Flutter for Better Performance and Playful Experience from LG
LG is building its webOS using Flutter. They find it very productive for developers to ship apps faster and have control over the UI.
Macros, Static Metaprogramming, and Primary Constructors in Dart and Flutter by Sandro Maglione
I recently gave a talk at Google IO Extended Udaipur about macros. This feature really changes the way we write Flutter code. A lot of boilerplate code like stateless, stateful, notifier, and other Dart code like equality and so on can be easily replaced with macros. This article is a quick overview of macros and primary constructors feature.
A Bunch of Programming Advice I’d Give To Myself 15 Years Ago by Marcus Buffett
Learning from your own mistakes while doing is one of the most effective ways to learn. But sometimes you can also learn from other people's experiences or mistakes, which can save you a lot of time, money, and energy. This is one of those kinds of blogs.
📺 Videos to Watch:
Fix a memory leak in Flutter (#148291) | Building Flutter
When it comes to fixing bugs in a framework, we might think it's an impossible task for us as application developers. But after watching this video, you realize that it's not that hard and YOU can fix bugs in the Flutter framework too.
The most essential skills you will learn from this video are:
How to read code
Use proper debugging tools
Write tests to verify your assumptions
Fix the bug and run tests to see if everything works.
Create PR and follow the guidelines for the framework.
It takes years of experience to be fluent in this. And Debugging is one of the most underrated skills of any developer. In my experience, the biggest time-consuming task in solving a bug is not the code solution but rather the time spent on debugging.
Flutter code push with Shorebird | Observable Flutter #46
This talk focuses on why Shorebird was created, what was the motivation behind it, how it works under the hood, how the patch fix works, and how it gets deployed to the user quickly. Also, in between, you get some interesting stories from Flutter's past history, which they have also talked extensively about in the "Before Flutter" video.
The past, present, and future of local-first - Martin Kleppmann (Local-First Conf)
I liked building offline-first apps for two reasons.
It provides a seamless user experience because users don’t see any loading indicator and it feels fast to them because everything happens local first on their local device.
It's a hard problem to solve. If you do it right, then your app will be 10x better than everyone else.
Even If you do not have a backend background, I recommend watching this video to broaden your thinking and improve your mental models for building great apps.
🪶Quotes
Most people do invert of the above quote; they focus so much on themselves that they lose focus on the main goal: the team goal. I’ve seen this in tech as well. Some developers just push their solution onto the team rather than focusing on whether this solution will actually help the user or not.
📦Code/Pub Packages/Plugins:
local auth
This Flutter plugin provides a means to perform local, on-device authentication of the user.
Pin code fields
A flutter package that will help you generate pin code fields with beautiful design and animations. Can be useful for OTP or PIN code inputs 🤓🤓
Crdt sync
A Dart-native turnkey solution for painless network synchronization.
🐤Posts I like:
😂Fun and Memes
The prank cursor that resulted in an employee being fired before they even started : Raymond Chen
TLDR: An intern pranked the test team by changing the Windows 3.1 cursor to a middle finger under specific conditions. This harmless prank escalated into a major scandal when the beta version reached the public. The intern was effectively fired before starting their full-time job to contain the damage but was later rehired.
80% of programmers are NOT happy… why?
👋🏻 That’s it, Folks
If you are a Flutter developer who wants to advance your Flutter skills, then I am currently running live classes called effectiveflutterdev.com. So if you are interested, then apply now.
Also, If you enjoyed this post, then would you be able to do me a quick favor and share my latest blog post with your friends and colleagues? I'd really appreciate it and I think it could be valuable to them.