How to ship apps faster 🚀
- Choose speed over quality
- Eliminate code reviews
- Don't do sprint planning
- Remove CI & Analyzer & Linter
- Ignore user feedback and testing
- Don't build a working MVP with minimal functionality
- Avoid regular team communication and updates
- Ignore documentation and code comments
- Ignore industry best practices and coding standards
- Do not periodically refactor to improve code quality.
- Leave a pile of TODOs after coding
- Don't think about backups
- Don't handle errors & exceptions
By doing all this, your app will definitely be shipped very quickly (maybe not where you planned though).
- Choose speed over quality
- Eliminate code reviews
- Don't do sprint planning
- Remove CI & Analyzer & Linter
- Ignore user feedback and testing
- Don't build a working MVP with minimal functionality
- Avoid regular team communication and updates
- Ignore documentation and code comments
- Ignore industry best practices and coding standards
- Do not periodically refactor to improve code quality.
- Leave a pile of TODOs after coding
- Don't think about backups
- Don't handle errors & exceptions
By doing all this, your app will definitely be shipped very quickly (maybe not where you planned though).
❤2😁2
I am writing an article on one of the most popular Stoic principles - the dichotomy of control.
After it, I will post a curated list of tips, best practices, and suggestions for flutter apps.
After it, I will post a curated list of tips, best practices, and suggestions for flutter apps.
👍5❤4
And one more thing I wanted to share: I decided to set myself a challenge:
Post on LinkedIn every day for a month.
I will tell you how many followers, impressions, likes, etc. I gained during that time.
Post on LinkedIn every day for a month.
I will tell you how many followers, impressions, likes, etc. I gained during that time.
👍4🔥4
How to efficiently transform data using Codecs in Dart. Read in today's post :)
https://www.linkedin.com/feed/update/urn:li:activity:7130419429242224642/
https://www.linkedin.com/feed/update/urn:li:activity:7130419429242224642/
Linkedin
Michael Lazebny on LinkedIn: #dart #flutter #converter #json #utf8 #serialization
How to effectively serialize data in Dart & Flutter?
There is a very sophisticated way:
Dart has a built-in package called "dart:convert" that includes…
There is a very sophisticated way:
Dart has a built-in package called "dart:convert" that includes…
🔥6
Decided to hide the dock in macos. Always thought it was inconvenient.
In fact, it is, but it removes distractions and allows you to focus on the open window.
How do you fight with #distractions?
In fact, it is, but it removes distractions and allows you to focus on the open window.
How do you fight with #distractions?
👍3❤2
Hey! Today I created a brief article about character encoding. A bit of history and explanations of terms like ascii, utf8 and unicode.
https://lazebny.io/character-encoding-and-how-it-works-2/
https://lazebny.io/character-encoding-and-how-it-works-2/
👍2🔥2
Will it be interesting if I create my own Dart & Flutter roadmap?
👍18🔥5😐2
Please open Telegram to view this post
VIEW IN TELEGRAM
Medium
What’s new in Flutter 3.16
Material 3 by default, Impeller preview for Android, DevTools extensions, and much more
🔥8
I will publish Best practices of flutter on Monday :) hope you are waiting!
🔥11❤5👍5
When to use InheritedModel in Flutter?
Inherited widgets are a powerful, natural way to propagate information down the tree in Flutter.
The crucial thing is that they are O(1). It means, that the time needed to obtain an inherited widget from the tree is equivalent to constant.
When InheritedWidget changes (i.e., some data is updated), dependent elements are notified via didChangeDependencies and eventually rebuilt.
However, when clients (modules that depend on a widget) are interested only in a certain part of its data things become a bit complicated as the inherited widget doesn’t support it.
In such a case, the Inherited Model comes to our help. Basically, they extend the functionality of InheritedWidget by adding an aspect field.
Clients declare the aspect they’re interested in and are notified only if the data they’re interested in changes!
I’ve enclosed an example of an inherited model used for settings. Basically, when the client is interested in the locale -> it will be notified if the locale changes.
There is also a widget called MediaQuery that’s probably used by every #Flutter application. It also implements InheritedModel with its brightnessOf, sizeOf, and others.
LinkedIn
Inherited widgets are a powerful, natural way to propagate information down the tree in Flutter.
The crucial thing is that they are O(1). It means, that the time needed to obtain an inherited widget from the tree is equivalent to constant.
When InheritedWidget changes (i.e., some data is updated), dependent elements are notified via didChangeDependencies and eventually rebuilt.
However, when clients (modules that depend on a widget) are interested only in a certain part of its data things become a bit complicated as the inherited widget doesn’t support it.
In such a case, the Inherited Model comes to our help. Basically, they extend the functionality of InheritedWidget by adding an aspect field.
Clients declare the aspect they’re interested in and are notified only if the data they’re interested in changes!
I’ve enclosed an example of an inherited model used for settings. Basically, when the client is interested in the locale -> it will be notified if the locale changes.
There is also a widget called MediaQuery that’s probably used by every #Flutter application. It also implements InheritedModel with its brightnessOf, sizeOf, and others.
Linkedin
When to use InheritedModel in Flutter? | Michael Lazebny
When to use InheritedModel in Flutter?
Inherited widgets are a powerful, natural way to propagate information down the tree in Flutter.
The crucial thing is that they are O(1). It means, that the time needed to obtain an inherited widget from the tree is…
Inherited widgets are a powerful, natural way to propagate information down the tree in Flutter.
The crucial thing is that they are O(1). It means, that the time needed to obtain an inherited widget from the tree is…
👍11
“Design first, code next”
In the rush to ship features faster, we often miss a valuable stage: planning.
At first glance, the components, modules, architecture, and work front may seem like something we'll figure out along the way. To be fair, that’s what happens. However, understanding often comes to us after repeated attempts to rewrite the code.
This approach also has additional problems. If you don't have the whole picture in front of you, like a diagram, you're more likely to miss some details, or just make it worse and harder to maintain.
On the other hand, if you had a diagram, it would be much easier to get other developers on board.
Imagine workers trying to construct a building without architectural drawings or any plans. It is obvious that they won't get anywhere.
Finally, I'd like to emphasize that the value of design is underestimated. Don't fall into this trap and always do at least the basics.
LinkedIn
In the rush to ship features faster, we often miss a valuable stage: planning.
At first glance, the components, modules, architecture, and work front may seem like something we'll figure out along the way. To be fair, that’s what happens. However, understanding often comes to us after repeated attempts to rewrite the code.
This approach also has additional problems. If you don't have the whole picture in front of you, like a diagram, you're more likely to miss some details, or just make it worse and harder to maintain.
On the other hand, if you had a diagram, it would be much easier to get other developers on board.
Imagine workers trying to construct a building without architectural drawings or any plans. It is obvious that they won't get anywhere.
Finally, I'd like to emphasize that the value of design is underestimated. Don't fall into this trap and always do at least the basics.
Linkedin
Michael Lazebny on LinkedIn: “Design first, code next”
In the rush to ship features faster, we often…
In the rush to ship features faster, we often…
“Design first, code next”
In the rush to ship features faster, we often miss a valuable stage: planning.
At first glance, the components, modules…
In the rush to ship features faster, we often miss a valuable stage: planning.
At first glance, the components, modules…
👍6