Widget Tricks Newsletter #5
Plan vs. No Plan. Who is hiring. Designing Flutter apps with Material 3. Learn a new presentation style. How to have a long-lasting career in IT. Why people don't reply until a day later & much more.
Usually, I post a newsletter once a month, but this time, based on feedback, I am trying to make it bi-monthly. So this is the first newsletter of the month for June. Let's see how long I can maintain this consistency.
📃Post of the Month
I used to draw a lot when I was a kid. Until now, whenever I get a random thought, I used to post it in text form. However, I thought of trying something new this time - expressing it in visual form.
💼 Flutter Jobs to Apply
Senior Flutter Engineer: MediaMarktSaturn (In-Person Germany)
About the role: A passionate developer with experience in building projects using Flutter. It also requires experience in Android or iOS development.
A strong interest in software architecture, and familiarity with Streams, Widgets, builder functions, and Provider. Collaboration, good communication skills, a problem-solving attitude, and a willingness to seek help are important qualities.
Senior Flutter Engineer: Architus (In-Person Lithuania)
About the role: You will be a key member of an agile engineering team, working on strategic projects including Payments and Open Banking, Credit, and Loans for a rapidly expanding international company at the leading edge of banking technology.
Salary Range: ~€72K
Flutter Mobile App Developer: GoHenry (Hybrid London)
About the role: The key responsibilities include collaborating with the Mobile App development team to develop and implement required functionality, understanding and meeting the requirements and functionality desired by the Product teams, and providing research-based recommendations for technical solutions when needed.
✍️ Articles to Read
90% of My Skills Are Now Worth $0 by Kent Beck
Every time a new tool is introduced in the market, this kind of shift happens. The tools are designed to eliminate repetitive tasks and remove irrelevant work.
Whenever jobs are replaced by any tool, new jobs are created. In this blog, Kent adds a valid and crucial point that most basic skills can be replaced, but the remaining skills that cannot be replaced will become more valuable.
Use Dart Mixins More Often! Here is Why by Quickbird Studios
I think this is one of the best blogs I've read so far, explaining the mixin concept in Dart with examples of all kinds of birds in nature. This blog was the inspiration for me to write a blog on how to use mixins. It's a must-read for Flutter developers.
📦 Code from Pub Packages
Wolt Responsive Layout Grid
This library introduces the Flutter implementation of Material Design's responsive layout grid. It provides a unified, multi-platform grid system that ensures consistency and visual integrity regardless of the device or operating system being used.
Flutter Tests UI
A wrapper of testWidgets, setUp, and tearDown that provides the WidgetTesterCallback argument to the set-up and tear-down functions: testUI, setUpUI, and tearDownUI.
📺 Videos to Watch
Design for Every Device With Flutter and Material 3 by Material Design
An introductory video on how to use Material 3 with Flutter. The key takeaways for me were the new dynamic color scheme theme, which can be generated based on the image color scheme, and a 12-column grid layout system for building adaptive UI for which the Wolt team has a blog explaining it in more detail.
Forget Velocity, Let's Talk Acceleration • Jessica Kerr • GOTO 2017
The reason why I am sharing this video, apart from the awesome talk content, is Jessica's unique presentation style.
She hand-drew all the slides using Apple Notes, shared the presentation on her iPad, and explained all the stuff using only drawings.
In this video, I learned two things at once: storytelling through great drawing.
📚 Quotes From Books
Practical Object Oriented Design in Ruby
Although the title says Ruby, after reading this book, I feel that the programming language doesn't matter much. The concepts, ideas, and design decisions explained through examples are the same across any object-oriented language.
When the future cost of doing nothing is the same as the current cost, postpone the decision. Make the decision only when you must with the information you have at that time.
The above quote was a key learning for me, i.e., get enough information before you abstract anything. Most of the time, when we see duplicate code, we have a temptation to abstract it right away. This happens to me all the time. As a rule, I extract the duplicate code only when it's repeated thrice instead of twice.
You can read the full summary here.
The Phoenix Project: A Novel about It, Devops, and Helping Your Business Win
I’ve figured out that the trick to a long career in IT Operations management is to get enough seniority to get good things done but to keep your head low enough to avoid the political battles that make you inherently vulnerable.
🐦 Tweet I liked
https://twitter.com/chrisbanes/status/1663478606012579840
https://twitter.com/rohantaneja_/status/1664216887134388224
😂 Fun and Memes
People in Remote work
Hey there, If you enjoyed this post then would you be able to do me a quick favour 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.
Thank you for being a part of the Widget Tricks Newsletter, and I am looking forward to hearing from you soon.