Widget Tricks Newsletter #26
How programming languages are built. Who is hiring. Debugging in Flutter. All about BuildContext. The Art of Code. Fear and uncertainty about AI. Generate fake GitHub activity graph and much more.
📝Post of the month:
💡Flutter Tips:
1. 3 Things I Liked from #FlutterInProduction
2. I always wonder how programming languages are built.
3. What I wish I knew when I started developing apps in Flutter. (Opinionated post)
4. SearchBar & SearchAnchor
💼 Job To Apply:
Senior Flutter Developer at Croco IT 2(On-Site)
We are seeking a highly skilled Senior Flutter Engineer to join our dynamic team in Cairo, Egypt. In this role, you will lead the development of cutting-edge mobile applications, ensuring high performance and exceptional user experiences across both iOS and Android platforms. If you are a seasoned Flutter expert with a passion for leadership, CI/CD, and continuous improvement, we’d love to hear from you!
Salary Range : Not Mentioned
Mobile Engineer (Flutter) at Architus(Hybrid)
As a Mobile Engineer (Flutter), you will design, create, and manage components of our product catalog within one of our business areas (e.g., Payments or Business Services). With a dynamic roadmap, you'll tackle exciting challenges that make a real impact.
Salary Range : 6,000 Eur/month
✍🏻 Articles to read:
Debugging in Flutter: Tools and Properties Every Developer Should Use by Sourav Sonkar
I usually debug Flutter UI using DevTools. It turns out we can enable those flags from the app itself. I found the new flags debugRepaintRainbowEnabled = true and debugPrintMarkNeedsLayoutStacks = true very useful.
Async Builders by ping
Flutter has built-in FutureBuilder and StreamBuilder, but it lacks some basic features like caching and error handling. This blog gives wonderful tips on how to solve that.
All I Know about BuildContext by Tsuyoshi Chujo
BuildContext is a fundamental concept that every Flutter Developer should know. I really like Kate Lovett's explanation of this: "Widget is configuration, Element is instance, RenderObject makes it so."
📺 Videos to Watch:
The Art of Code - Dylan Beattie
Everything is art. Even writing code is. This video describes it perfectly. Fun fact: Robert Felker is featured here, who generates art using Flutter.
Also, I didn't know we can create music using Sonic Pi language, and the talk ending is just perfect.
Ilya Sutskever: "Sequence to Sequence Learning with Neural Networks: What a Decade"
A lot of information is packed in this short 30-minute video. I wish it would be longer. We are moving to an era where AI computation speed is compounding faster than the data we can create. We now have power, but we don’t have enough data to process.
A Startup Guide to Ship Mobile App Faster Using Flutter - Devfest Chandigarh 2024
Everyone is talking about building apps at FAANG scale, but we rarely talk about how to build and ship apps quickly at a startup scale. Therefore, I wrote this guideline that I wish I had read 10 years ago. I’ve the blog version as well.
🪶 Quotes from Books
🐤Tweet I liked
1. So much FUD about AI
2. Reading more to think clear
I am writing a blog on this exact topic. So subscribe to Widget Tricks to stay tuned.
3. Git Tip
📦 Code from Packages
Async Builder
This package provides AsyncBuilder
, a widget similar to StreamBuilder / FutureBuilder which is designed to reduce boilerplate and improve error handling.
Two packages to access any Google services (Calendar, Drive, and many more) using REST API.
1. Googleapis
Generated Dart libraries for accessing Google APIs.
2. googleapis_auth
Provides support for obtaining OAuth2 credentials to access Google APIs.
😂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.