We recorded a special episode of Android Developers Backstage to celebrate 5 years of Compose! youtu.be/HEqXwUm6vd0?...
The inside story of Jetpack Compose
YouTube video by Android Developers
youtu.be
Andrei Shikov
@shikasd.bsky.social
Mostly read/rarely post • Jetpack Compose @ Google • Opinions are my own
We recorded a special episode of Android Developers Backstage to celebrate 5 years of Compose! youtu.be/HEqXwUm6vd0?...
The inside story of Jetpack Compose
YouTube video by Android Developers
youtu.be
you are waiting for fable, I am finally playing fable 2, we are not the same
even with all the wrong assumptions that llms make these days, the bug reports we are getting for /weird/ bugs are way better in quality it is still slop and the conclusions are mostly incorrect, sure, but i can at least start from a better place than when people would just copy paste an exception
the worst thing about talking to LLMs is that I started using "absolute" terms to make them actually do the job somehow their "good enough" is mine "barely passable"
my favourite thing is when I try and prototype something just to realize I already did it couple of years ago
I am around @kotlinconf.com this year too (just hanging out) Find me at the Google booth! Or next to the Jetbrains booth! Or next to the coffee pot! Or at the afterparty!
somehow I don't feel very different about reviewing AI slop it was always part of my job to review random apps code for performance issues... and llms are fairly consistent with how people actually write code
fun fact, themes and design systems are consistently the most expensive thing in Compose, especially for startups for some reason, everybody LOVES storing every value in hashmaps
I wrote a little blog engineering.block.xyz/blog/18mb-of... #Android #AndroidDev
my lukewarm take about coding llms is that we are too focused on oneshotting tasks for higher benchmark numbers that gets us into situations where the model is doing extremely stupid shit just because it is stuck
For years I've been told that I can shove 16 bits of data into a 64-bit pointer. Today I tried it out, just to realize that both macOS and Android use those bits for safety cookies 🫥
github is such a joke, apparently if PR hits a certain file limit, it just pretends the files are not there
i dreamt about a realistic mafia game where i am awake at night to witness everything but wake up too late to influence any decisions
This is excellent, one of my favorite long-form pieces on agentic engineering - includes several non-obvious ways in which leaning on coding agents can catch you out
I just published a deep-dive into the 250-hour build behind syntaqlite, a SQLite formatter and LSP I built using AI agents. AI agents were the only reason built this after 8 years of wanting but there's a psychological toll to AI-assisted engineering. The post-mortem: lalitm.com/post/buildin...
my favourite part about LLM adoption is that everyone is finally documenting their workflows
In the next version of AGP - R8 makes coroutines 2x faster
my favourite part of the exploratory projects is when I come up with an idea within minutes and then go on a multi-day bender to try everything else just to return to the original idea which was actually perfect the whole time
yes macOS notes app, I definitely wanted you to replace my ASCII single quotes with your fancy unicode that looks exactly fucking same
I introduced Factorio to a friend who is very particular about his sleep schedule, like always in bed before midnight we played for 12 hours straight until 8am yesterday.... just straight up crack, especially multiplayer / 10
my god i am reading python code where everything is expressed in tuples, dicts and arrays and it took me 2 hours to realize that the function that accepts tuples can also work on dicts untyped languages were a mistake
PSA: Starting Android Gradle Plugin 9.0 (or the latest stable version of R8): R8 will automatically optimize all Intrinsics.check* APIs in Kotlin automatically ! This should greatly help improve app performance (especially Compose given the large Kotlin library API surface).
Oh you have "depression" and "anxiety"? Funny way of saying you're fundamentally weak of spirit
ok I found my new favourite arm instruction - ubfx (sorry fjcvtzs) developer.arm.com/documentatio...
Documentation – Arm Developer
developer.arm.com
i've spent hours trying to understand why my assembly contains frame pointers in all functions and why godbolt output doesn't turns out, rust compiler forces them /specifically/ for my arch (x86 mac) lol
Here's the new page about the new stack traces in Compose, in case you were wondering how it all is supposed to work: developer.android.com/develop/ui/c...
Stack traces in Compose | Jetpack Compose | Android Developers
developer.android.com
This release also adds support for Compose stack traces that work with minified apps! (requires R8 and Kotlin 2.3.0+)
Compose 1.10 was released yesterday! 🔟 It includes some nice new features: 🧞♀️ Support for dynamic shared elements 👰🏻♀️ New Enter/Exit Transitions: unveilIn / veilOut ⏭️ Modifier.skipToLookaheadPosition() 📦 New retain APIs influenced by Circuit android-developers.googleblog.com/2025/12/what...