Tips & Tricks
Building a Chat Messaging UI in Flutter
Andrea Bizzotto wrote this short and simple article describing one way to layout a chat UI in Flutter, including left- and right-aligned "bubbles" to visually distinguish between chat messages sent by the current user and the person on the other end of the chat.
There are often multiple means to accomplishing the same end goal, and regardless of whether you would decide to implement this in the same way, I think it's helpful to be exposed to a variety of techniques. Thanks to Andrea for adding one more tool to our UI toolkit.
Implementing a Mentioning System In Your Social Networking App
Now that you've read Andrea's article on formatting those speech bubbles inside your chat app, you may also want to take a look at this tweet by Joe Muller, which describes one way to add a mentioning system to those posts, including proper syntax highlighting with the "@" sign in front of the mentioned user's name.
I'm not sure about you, but this came along just in time for me, as I've been considering adding this capability to my own app.
Thanks, Joe! :-)
Widgets and Packages
Flutter Universal Platform Check - Also Works on Web
Sometimes all you need is a simple utility to accomplish something specific, and this handy package by Mike Rydstrom fits the bill nicely for those occasions when you need to know the specific platform you're running on. (Hint: You can't just use dart.io's Platform class, as it will throw an exception if run on the web.)
This week's Flutter Package of the Week features the font_awesome_flutter package. This package is a friendly reminder that font packages can be used for more than just your regular alphanumeric characters.
Note that if you do use this package, you'll want to use the FaIcon widget to access your font data, as it offers options specific to the Font Awesome package.
More Flutter Jobs!
Since the time I mentioned Flutter job finding resources a couple of issues ago, I've continued to find more that didn't make that issue.
This week I thought it would be worth highlighting this Twitter thread started by Google Engineering Director Eric Seidel, where folks have posted several open Flutter positions.
And I'll say it again, if you've got a job resource you think would be worth sharing with readers of this newsletter, please pass it along. (Contact info is on the main Flutter Newsletter page.)
Business and Marketing
Achieve Product-Market Fit 10x Faster
Sometimes I find it helpful to pull my brain out of the trees of the code to see the larger picture of the forest I'm working in, and this video helps to do that.
Here, VC Garry Tan sits down with startup coach and game designer Amy Jo Kim to discuss not only the importance of working on the "right" set of features, but also how to discover which features are important faster.
Given Amy's impressive track record working on such products as Rock Band, The Sims, and NetFlix, I think you'll find this one extremely helpful in expanding your vision to what's really important as you iterate on your product's feature set.
// From Mark
A Tale of Two Projects
As I've been trying to keep in touch with the Flutter job market lately, I came across something that I found interesting with two companies doing mobile app development.
The first company has been using React Native in their mobile app, but now appears to be parting ways with RN and moving toward a pure native approach. The intent seems to be to support Android and iOS using separate teams and projects.
The second company, which competes in a similar business space, has been developing for Android and iOS natively, and is now looking to combine their mobile efforts into a single code base, using Flutter.
Since I don't know how these decisions were reached in either company, I can't be sure what led one to move away from RN to pure native, and the other to move from pure native to Flutter. Is it possible that in the first company's case, they had simply hit so many RN "edge cases" in working around platform differences that the code was naturally forking anyway, and they thought they'd be better off going full native?
I really don't know the answer to this question, but what I do know is that I still remain impressed with Flutter, and I'm happy to see that the second company here seems to agree. After working with Flutter in developing my own apps for more than two years now, I'm still happy with my choice. I LOVE that by taking over the painting of every pixel on the screen, Flutter insulates me from the whims of the OS designers, rather than bringing them to the forefront, as that "bridge" to native UI elements from RN seems prone to do.
I know I'm biased here, but that bias comes from experience with actually working with Flutter for a while now. So to the second company, I say "Welcome to the world of Flutter!"
I don't think you'll regret the move.
This wasn't a "big news" week for Flutter, so this week's issue is something of a grab bag. I hope you'll appreciate some of the items which caught my eye.