A screenshot of code that reads:
// Create a Recomposition Tracking Rule
@get:Rule
val composeTestRule = createRecompositionTrackingRule()
@Test
fun incrementCounter_onlyValueRecomposes() {
// Perform an action
composeTestRule.onNodeWithTag("inc_button")
.performClick()
// Assert that Composables change like you expect
composeTestRule.onNodeWithTag("counter_value")
.assertRecompositions(exactly = 1)
// Or assert that they remain stable
composeTestRule.onNodeWithTag("counter_title")
.assertStable() // asserts recompositions = 0
}
Today Iβm open-sourcing Dejavu!
Testing UI performance in Jetpack Compose is frustrating. We profile and watch tools, yet regressions still creep in.
I built Dejavu to make recomposition behavior something you can actually test.
09.03.2026 21:47
π 5
π 2
π¬ 1
π 0
"I promise you youβre not here on earth to provide fucking shareholder value."
I agree! My value does not depend AT ALL on whether or not shareholders are engaging in sexual relations.
.
.
.
Oh, no, wait... that's probably not what @swank.ca meant...
π
07.03.2026 13:14
π 2
π 0
π¬ 0
π 0
Hey, I just published jetc.dev Newsletter Issue #304! Compose updates! Compose Multiplatform alpha! @aditlal.dev on the Compose styles API! LaTeX rendering! And... a linked list, for realz?!? jetc.dev/issues/304 #JetpackCompose #AndroidDev
03.03.2026 13:59
π 4
π 1
π¬ 0
π 0
What happens to Square / Block Android OSS projects post layoffs?
Let's start with some context
OSS at Square is mostly a happy accident. Jack hired Bob, who's job was attracking world class engineers, and he did that through talks & OSS.
02.03.2026 16:37
π 81
π 25
π¬ 2
π 1
If it were easy, everyone would do it! π
01.03.2026 15:55
π 1
π 0
π¬ 0
π 0
@commonsware.com coming in with the high and inside fastball
commonsware.com/blog/2026/02...
27.02.2026 13:41
π 2
π 1
π¬ 0
π 0
The Kotlin roadmap was just updated! Check out what you can expect the team to work on in the near future.
kotlinlang.org/docs/...
27.02.2026 13:35
π 21
π 6
π¬ 1
π 1
That's rough. Best of luck in the job search! It's a tough market out there...
26.02.2026 22:54
π 0
π 0
π¬ 0
π 0
Almost all of Cash Mobile Engineering was laid off today.
None of us have any clue what their rubric was for choosing who stayed and who went, but whatever it was, I'm on the job market again!
26.02.2026 22:51
π 31
π 11
π¬ 5
π 0
Hey, I just mailed out jetc.dev Newsletter Issue #303! @brwngrldev.bsky.social on reducing development friction! Line graphs! CMP IDE plugin! Syntax highlighting! And... can we *finally* get rid of ViewModel?!? jetc.dev/issues/303 #JetpackCompose #AndroidDev
24.02.2026 13:59
π 8
π 3
π¬ 0
π 0
I released jetc.dev Newsletter Issue #302! Compose patch release and alpha release! Compose Multiplatform patch release! Bottom sheets! @eevis.codes on colors and accessibility! And... can we work with Glance?!? jetc.dev/issues/302 #JetpackCompose #AndroidDev
17.02.2026 13:42
π 5
π 2
π¬ 0
π 0
Thanks for including my Android 17 Beta 1 random musing in today's newsletter!
15.02.2026 16:42
π 2
π 1
π¬ 0
π 0
I sent out jetc.dev Newsletter Issue #301! AI! Orchestration composables! Stability! Instant Compose! jetc.dev/issues/301 #JetpackCompose #AndroidDev
10.02.2026 13:58
π 3
π 1
π¬ 0
π 0
Issue #3 of Inclusive Android Apps is live! π
This one covers the problem of color-only indicators: why relying on color alone excludes users, with code examples for fixing the issue with text, icons, and/or patterns.
Read it: buttondown.com/inclusive-an...
#AndroidDev #InclusiveAndroidApps
10.02.2026 09:45
π 5
π 1
π¬ 0
π 0
Could be both!
09.02.2026 13:50
π 1
π 0
π¬ 0
π 0
If you mean a mobile-facing Web API... the risk with multi-MB responses is that mobile bandwidth is not evenly distributed, and low-end devices are still RAM-constrained, even today.
05.02.2026 15:47
π 0
π 0
π¬ 0
π 0
Web service API, SDK/library API, or something else?
05.02.2026 15:38
π 0
π 0
π¬ 1
π 0
"I was told you're a monster," the hero said.
"So they say," said the monster.
"But you're beautiful!"
"Thank you."
"Have you always been a monster?"
"Heh. I was a young maiden. But I did something forbidden."
"And became a monster?"
"Got named a monster."
"What did you do?"
"I hit back."
04.02.2026 18:38
π 1104
π 387
π¬ 4
π 12
OK, I mailed out jetc.dev Newsletter Issue #300! It's the tri-centennial issue! Bug fixes! @sinasamaki.com on dials! onGloballyPositioned! APK slimming! And... can we have a slice of a font?!? jetc.dev/issues/300 #JetpackCompose #AndroidDev
03.02.2026 13:57
π 5
π 1
π¬ 0
π 0
Awesome, thanks!
01.02.2026 21:32
π 0
π 0
π¬ 0
π 0
Screenshot from Mike Masnick's blog post, showing a "Connecting to Bluesky..." banner after the end of the post and before the Responses section
Nice writeup!
Possible bug with the site: there is a "Connecting to Bluesky" banner below the last paragraph and before the Responses section. I get it with Firefox, Chrome, and Brave, so it's not browser-specific.
01.02.2026 21:09
π 0
π 0
π¬ 1
π 0
@mikepenz.dev Thank you for your Compose multiplatform material Markdown library. I'm using it in a couple places. It's great!
30.01.2026 14:51
π 4
π 1
π¬ 1
π 0
I just mailed out jetc.dev Newsletter Issue #299! Security! PinnableContainer! Nested scrolling! tvOS for Compose Multiplatform! And... will the Kotlinlang Slack archive ever get updated?!? jetc.dev/issues/299 #JetpackCompose #AndroidDev
27.01.2026 13:57
π 5
π 1
π¬ 0
π 0
OK, I released jetc.dev Newsletter Issue #298! Compose Multiplatform 1.10! π Compose Hot Reload! @eevis.codes on bottom nav bar accessibility! Responsive tab rows! And... a no-Chromium desktop WebView?!? jetc.dev/issues/298 #JetpackCompose #AndroidDev
20.01.2026 13:58
π 7
π 2
π¬ 0
π 0
It certainly would not surprise me if what's being portrayed there is reality, or close to it. But Ed Zitron is pretty deep in the AI weeds, so I give his take a fair bit of credibility.
And I had forgotten that Salesforce bought Slack. βΉοΈ
17.01.2026 18:39
π 0
π 0
π¬ 0
π 0
FWIW, bsky.app/profile/edzi... suggests that these articles are based on a sketchy source.
17.01.2026 18:30
π 0
π 0
π¬ 1
π 0
A group of six nature valentines. A picture of a bog with pitcher plants, with text saying "Our love is like a bog. Built up over time, resistant to decay, deeply interesting to just a small number of people." A yellow slime mold stretching out and exploring. "Our love is like a slime mold. Collaborative, complex, at times unnerving to behold." A piece of limestone with a small trilobite in the corner. "Our love is like limestone. Layered, useful for many purposes, shaped by the friends we met along the way." A ring-billed gull with a french fry on a beach. "Our love is like a ring-billed gull. Abundant, found in North America, sometimes sustained by french fries." An Atlantic horseshoe crab walking on the sand. "Our love is like a horseshoe crab. Tough, timeless, unrelated to true crabs." A drawing of the phosphorus cycle, with arrows connecting various parts of a scene, including algae and fish and a farm and a river and a forest. "Our love is like the phosphorus cycle. Important, really hard to draw."
Nature valentines. This comic is now available as a set of 6 Valentines cards: topatoco.com/collections/...
15.01.2026 14:00
π 1237
π 434
π¬ 14
π 10
I just published jetc.dev Newsletter Issue #297! Memory leaks! Image-loading libraries! Screenshot testing! SVGs! jetc.dev/issues/297 #JetpackCompose #AndroidDev
13.01.2026 13:56
π 5
π 1
π¬ 0
π 0