Widget Tricks Newsletter #24
Caching Expensive Results. Testing Method Channel. Who is Hiring. Benchmarks are experiments. Architect your Flutter apps. The Death of Junior Developer. How to Write Effectively and much more.
📝Post of the month:
💡Flutter Tips:
💼 Job To Apply:
Flutter Engineer at Popcorn (Remote : Europe)
You'll join our team as a Frontend Engineer helping to craft a delightful UI/UX. You'll work on our iOS app built in Flutter. Additionally, you will help us create an Android app. Over the coming years, we'll look to build up a team around you.
If you love working on those UI magic moments and animations, this is your calling.
Salary Range : $70-100K + Equity.
✍🏻 Articles to read:
Countdown Timer by notes.tst.sh
You might think counting down would be simple, but there are a lot of nuances involved. For example, how do you update the timer in the foreground? How do you keep the timer updated when a widget is out of view, i.e., one screen on top of the others? This short blog explains this wonderfully.
Microbenchmarks are experiments by mrale.ph
Recently there was tweet showcasing speed of loop in different languages. This blog explain how this kind of benchmark are not actually helpful. And what we should we really aim in benchmarks.
Benchmarks are not numerology. Their results are not a divine revelation. Benchmarks are experiments. Their results are meaningless without interpretation and validation.
Architecting Flutter apps by flutter.dev
Developers are obsessed with architecture and they were asking for recommendations for Flutter. The Flutter team finally answered with their recommended architecture.
Useful built-in macOS command-line utilities by Wei Yen
My favorite is, you can generate a unique id using uuidgen command in macos.
📺 Videos to Watch:
The Death of the Junior Developer, and Other Lessons Learned
I am divided after watching this video.
One side of me agrees that LLMs are going to be a core part of our day-to-day development. For senior developers, LLMs are like junior devs where they can delegate some basic tasks and they can focus on higher-level decisions.
However, the other side of me does not agree that LLMs are going to replace junior developers. It's just that LLMs are going to raise the bar for everyone. Just like how compilers and IDEs save a lot of time for us, LLMs will save a lot of basic tasks for junior developers, and this gives the opportunity for junior developers to focus on more advanced level skills.
LEADERSHIP LAB: The Craft of Writing Effectively
I've been writing blogs from past 7-8 years, but I've never seen such a radical idea on how we should approach writing. I always thought that I am writing to share my ideas, but it's actually the opposite - I should write for reader to to change the there idea of the existing world.
What an amazing lecture!
🪶 Quotes from Books
📦 Code from Packages
Isolate Manager
Supports to create multiple Isolates for:
A single Function: One
IsolateManager
instance can be used for only one Function, so that thestream
can be used easily when using something like aStreamBuilder
(Use the@isolateManagerWorker
and@isolateManagerCustomWorker
annotations).Multiple Functions: One
IsolateManagerShared
instance can be used for multiple Functions, it's good for computing multiple Functions and doesn't care much about thestream
(Use the@isolateManagerSharedWorker
annotation).
Tabbed view
Flutter widget inspired by the classic Desktop-style tab component. Supports customizable themes.
😂Fun and Memes
👋🏻 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.