Category: Flutter | Format: Session
3:10 pm - 3:50 pm | Lenana Peak
From Chaos to Clarity: Navigating Flutter Code Complexity
Flutter began to gain popularity in 2018, but it's still relatively young compared to other mobile development frameworks like Android and React. One advantage of Flutter, which is also its main issue, is that there are many ways to do similar things and it's easy to invent new methods, especially for state management. This has led to a scenario where, as app complexity grows, the code turns into spaghetti very quickly, making it challenging to maintain. When an app becomes difficult to maintain, business goals cannot be properly achieved, and engineering becomes the company's bottleneck. My session will cover insights that I have gathered from direct involvement in 22 Flutter projects during that period. These insights can be applied by any engineer who wishes to reach a point of managing a fairly large codebase, characteristic of apps with numerous and complex user interactions. The aim is to transform the code from an unmaintainable mess, as it may have been initially found, into a maintainable state that empowers both the team and developers to work from a point of stability. The experience presented in this session is derived from direct involvement in a few abandoned apps where the engineers who initiated them ended up leaving the project. This was often due to their inability to maintain it, leading the business side to believe the developer wasn't adding value. Consequently, I had to step in to remedy the situation. I will also cover strategies for reaching a point where the code is easy to understand and predict.