@Zhuinden You know what's funny? There are projects out there that still use Jetpack Navigation.
I know of one, my current company's project. godamnitall
@Gio_Sastre@KalumeYves@Zhuinden I have to agree with @Zhuiden here. Why create a new function every time when you can just use `viewModel::onFavoriteClicked` directly? Kotlin treats functions as first-class citizens, take advantage of that.
@github_skydoves@getstream_io Great article! I have a few questions about ControlActions. Wouldn't it be better to provide actions as @Composable RowScope.() -> Unit rather than a list of composable functions?
@VasiliyZukanov Your points about complexities are valid, but I still train junior devs to use Kotlin Flow. It handles more use cases with our toolkit than traditional approaches, avoiding lifecycle and data change issues.
@Zhuinden I'm focused on Kotlin and KMP (shared logic, native UIs). Compose's benefits don't justify the time, and constant changes in "experimental" features make it hard to track — let alone explain to your boss.
@Zhuinden Honestly, the project’s a mess—no dedicated tests, no proper designs. That “simple task” of upgrading dependencies ended up breaking tons of app designs, especially bottom sheets and popups. 🙃
@Zhuinden We have a project using Jetpack Compose with Material 3 from before they introduced "surface container roles." Recently, we needed to upgrade to the latest versions.
@Zhuinden@theapache64 Yeah, last year I have to write my own rememberStandardBottomSheetState because somehow the one provided by framework won't remember the skipHiddenState.
@Zhuinden What even is "best practice" these days? With tech "evolving" almost daily, I'm not here to solve problems that "might" happen in the future. By the time they do, 99% of that code will have "evolved" into a whole new set of issues anyway.
@kikermo@Zhuinden Agreed, a tool is just a tool—its value depends on how we use it. Our MVI implementation may not be ideal, and I have my biases. But the reality is, while our codebase seems easy to maintain at first, side effects happen unless you dig deep to ensure everything works as expected.