Yves Kalume
banner
yveskalume.bsky.social
Yves Kalume
@yveskalume.bsky.social
Bug-end Engineer 😃 Android @ Moneco (YC S22) • Android GDE
Complexity isn't lines of code or fancy algorithms.

It’s a tax on every future PR.

If a "simple" change requires a 5-file refactor and 3 cups of coffee to keep the dependencies in your head, your system is complex.

Simple = easy to reason about. Simple = easy to change.
January 10, 2026 at 7:20 AM
The engineer who ships 10x faster by ignoring design, skipping comments, and hacking abstractions.

They look like heroes today. But they leave a wake of technical debt that the "slow" senior engineers spend months cleaning up.

Speed != Velocity.
January 9, 2026 at 6:50 PM
If your interface is as complex as your implementation, you haven't abstracted anything.
January 8, 2026 at 7:27 PM
Red Flag: Your function calls a helper with the exact same signature.

If the abstraction doesn't change as you move down the stack, you’re just adding latency to your cognition.

Every new layer must provide a unique view of the problem. Otherwise, delete it.
January 7, 2026 at 7:55 PM
Is your class a "Pass-Through" middleman ?

Methods that do nothing but call another method with a similar signature add complexity without functionality.

It increases interface complexity while hiding zero implementation.

A class should be a wall of logic, not a window to another module.
January 6, 2026 at 5:13 PM
If a condition is hard to handle, don't just throw an exception for the caller to deal with. That’s pushing complexity upwards.

Take the "suffering" into your module. A complex implementation with a simple API is a Senior-level trade.
January 5, 2026 at 4:55 PM
If your method is hard to describe in a comment, it’s hard to use in a codebase.
January 4, 2026 at 10:11 AM
Hot take (not so hot...) : Software should be designed for ease of reading, not ease of writing.
January 3, 2026 at 7:20 AM
Developing "good taste" means learning to distinguish what is essential from what is noise.
January 2, 2026 at 6:50 PM
If your functions feel messy or hard to follow, it might be because you're mixing abstraction levels.

I just published a post about this simple habit that makes your code much more readable.
yveskalume.dev/please-stick...
Please, Stick to One Level of Abstraction
Learn how to write cleaner code by maintaining one level of abstraction in functions for better readability and maintainability
yveskalume.dev
June 10, 2025 at 9:33 PM
A few years ago, I used to think that I would be on top of everything if I found the right routine or a good time management (to-do) app. I was so delusional !!!
April 22, 2025 at 9:08 PM
Reposted by Yves Kalume
I've written a short blurb on ways to upgrade your coroutine debugging game on Android Studio and IntelliJ. Check it out!

medium.com/@hinchman-am...
Debugging Coroutines in IntelliJ and Android Studio
Debugging asynchronous code is difficult, as it can be hard to capture its true nature while putting regular breakpoints in debugging. Here…
medium.com
March 24, 2025 at 11:27 PM
Reposted by Yves Kalume
Full:
• YouTube: www.youtube.com/watch?v=BSrx...
• Spotify: open.spotify.com/episode/3Udz...
• Apple: podcasts.apple.com/us/podcast/d...

Brought to you by:

• Sentry — Error and performance monitoring for developers. Get 150K errors (3 months of the Team plan) for free at sentry.io/pragmatic
Developer Experience at Uber with Gautam Korlam
YouTube video by The Pragmatic Engineer
www.youtube.com
March 12, 2025 at 7:28 PM
Reposted by Yves Kalume
🚀 Streamline your mobile app development with Fastlane in #KotlinMultiplatform projects! Gustavo's latest post shows you how to automate tasks for both Android and iOS.
Fastlane in Kotlin Multiplatform projects
Fastlane is a great tool for automating your mobile app tasks. In this post, we will show how to use Fastlane in a Kotlin Multiplatform project.
touchlab.co
March 12, 2025 at 6:33 PM
Reposted by Yves Kalume
Since then, we've had folks at Square write and run many Macrobenchmark tests, evaluating the impact of their changes with the script I provided here:

blog.p-y.wtf/a-script-to-...
A script to compare two Macrobenchmarks runs
In Statistically Rigorous Android Macrobenchmarks, I laid out a methodology for rigorously comparing the outcome of two Jetpack Macrobenchmark runs. To summarize the article: Remove sources of variations until the distribution fits a normal distribu...
blog.p-y.wtf
February 25, 2025 at 5:22 AM
Reposted by Yves Kalume
We're reworking one of the sharp edges of kotlinx.coroutines, the `withTimeout` function, which is useful, but has a few funky cancellation corners.

👉🏼 We need a name for the improved replacement function! What would you suggest as a name? (e.g. I'm a fan of `withTimeLimit`!)
February 20, 2025 at 3:22 PM
Reposted by Yves Kalume
✨ First video out now!

Learn how to create delightful mesh gradients in #JetpackCompose
Works on Android and #KotlinMultiplatform

If you like the video, you can check out the code that made it, fully open source on GitHub (aka tell me how bad my code is, 😅).

youtu.be/C7iq8m2dQOo
January 24, 2025 at 3:59 PM
Reposted by Yves Kalume
Okay, where did Google hide the "fuck off, go away" toggle for Gemini in Workspaces this week?

They're rapidly running out of goodwill to burn.
January 22, 2025 at 2:30 PM
Reposted by Yves Kalume
Here is a detailed explanation about how 'Compose Hot Reload' actually works under the hood 🔥 Hope you enjoy the video. Easier videos are coming again soon!

www.youtube.com/watch?v=I_FM...
How 'Hot Reload' is implemented for Compose
YouTube video by Sebastian Sellmair
www.youtube.com
January 21, 2025 at 11:12 AM
Reposted by Yves Kalume
📺 Get ready for something new ✨
January 20, 2025 at 8:26 AM
Reposted by Yves Kalume
🎧 Episode #252 of Fragmented is out.

Everyone needs a starter template! We also talk to @zsmb.co from @jetbrains.com about #Amper (their new build & config tool).

Listen here: https://fragmentedpodcast.com/episodes/252

#AndroidDev #Podcast
November 26, 2024 at 12:00 PM
Reposted by Yves Kalume
Hello bluesky! Join the #droidcon community! 🌎 Read daily #Android & #Flutter blogs, & get updates on all our global events for #AndroidDevs & #FlutterDevs. We also offer #codelabs on our #elearning platform, droidcon Academy! Invest in your future & take a #MobileDev course! 🚀 academy.droidcon.com
November 19, 2024 at 8:18 AM
It was great to meet fellow #SSA GDEs at droidconke and FlutterconKE 😃
November 15, 2024 at 4:38 PM
Are we on the 3rd episode of “Let’s leave Elon’s platform” story ? 😅

Fingers crossed this one sticks, though!
November 3, 2024 at 3:22 PM