Arka
archie94.bsky.social
Arka
@archie94.bsky.social
Android Dev @ Ultrahuman.
"Patience is above perfection"
Well AI can't understand or write good BLE code but it is good in wiring up UI options over them, in 3 different places. 🤗🤗🤗
November 20, 2025 at 7:46 PM
Reposted by Arka
Just listened to adbackstage.libsyn.com/android-deve.... Hate it.
This really is as terrible as it sounds.

Not even addressing the orange elephant in the room (bad government actors!), or that anonymity is often crucial for personal safety.
This feature can, and definitely will, be abused. 1/2
Android Developers Backstage: Android developer verification
To protect users from malware and scams, Android has announced a new layer of security: developer verification. While this is nothing new for Google Play Store apps, Android is extending this to the e...
adbackstage.libsyn.com
October 4, 2025 at 2:16 PM
Reposted by Arka
Also the remote MCP server support is very cool e.g. accessing a Figma design and converting it into Compose code

developer.android.com/studio/previ...
October 1, 2025 at 2:15 PM
Reposted by Arka
Casey Muratori pretty much sums up how I feel about LLMs for coding:

"The AI will always be useless for me. I physically can't get what I want from programming when AI is involved, because what it is doing is robbing me of the experience that I wanted to have and the knowledge that I wanted to get"
September 19, 2025 at 2:56 AM
Has anyone here experienced higher build times after switching to ksp2? #AndroidDev
September 13, 2025 at 6:31 PM
Reposted by Arka
Another issue, another set of uncomfortable questions. Time time, they are about the proposed Android developer verification program: commonsware.com/blog/2025/08... #AndroidDev
August 26, 2025 at 11:16 PM
Reposted by Arka
Jetpack Compose 1.9 is out and comes with a lot of great new APIs: outer/inner shadows, new visibility modifiers, a new prefetching behavior to improve scrolling performance in lazy layouts, etc. android-developers.googleblog.com/2025/08/what...
What’s new in the Jetpack Compose August ’25 release
The Jetpack Compose 1.9 release introduces features like advanced shadow modifiers, new visibility modifiers, and enhanced rich styling capabilities.
android-developers.googleblog.com
August 14, 2025 at 12:45 AM
Reposted by Arka
What RenderNode really is 🧶

(thanks @romainguy.dev 🤩)

They are a list of drawing commands with some other properties like transforms (e.g: translation). These commands can be used to issue GPU commands by the internal renderer. They are not GPU commands on their own.
July 5, 2025 at 7:11 AM
Reposted by Arka
Where does one start with improving Android app performance? Should I start with writing benchmarks to establish a baseline? Should I enable StrictMode and LeakCanary first? How can I implement metrics in production?

Are there any good guides for beginners you'd recommend?
May 7, 2025 at 2:12 AM
Reposted by Arka
The Android UI & Jetpack Compose team is building a new team in Bengaluru!
Join us in building exciting new APIs for Jetpack Compose as well as the other UI libraries and help us expand to Bengaluru.

EM: goo.gle/4gt9dMl
SWE: goo.gle/4dQb9w7
PM: goo.gle/compose-pm-in
DevRel: goo.gle/3DE8B7T
Engineering Manager, Android Toolkit — Google Careers
goo.gle
January 30, 2025 at 10:44 AM
Reposted by Arka
Jokes are NP-Complete for me; I can recognize a good joke instantly, but it takes me an inordinately long time to generate my own.
January 9, 2025 at 2:11 PM
Reposted by Arka
Interviewer: Can you explain this gap in your resume?

#AndroidDev: 16.dp
Interviewer: Can you explain this gap in your resume?

Designer: It's actually called whitespace
Interviewer: Can you explain this gap in your resume?

Novelist: I could, but it's going to have a lot more impact if you figure it out yourself.
December 26, 2024 at 3:34 PM
Reposted by Arka
New blog post! If you are a Kotlin or Java Android developer, this one should make you go 🤯.

www.romainguy.dev/posts/2024/n...

I'm not even sorry.
Naming is Hard
Before we dive into today’s topic, I would like to make it clear that what follows is specific to how Android, and more precisely the Android RunTime (ART), works. Some of what follows applies to othe...
www.romainguy.dev
December 20, 2024 at 12:57 AM
Reposted by Arka
In a register a boolean is already an int. So the code I showed just disappears completely. This means I can do for instance (myBool.toInt() shl 6) - 1 to create a mask without using a branch. Sometimes an if will turn into a branchless condition but not always.
December 6, 2024 at 6:09 PM
Reposted by Arka
PSA: if you write v.pow(2f) (also .pow(3f)) on Android, please write v * v instead. pow() is a (relatively) expensive function call that won't get optimized away (yet). On a Pixel 6, pow(2f) is 5x slower than a multiplication. For long expressions, use inline fun square(v: Float) = v * v
November 27, 2024 at 10:22 PM
Reposted by Arka
I love Kotlin but please don't abuse its features. I regularly see code like in the first function when you can instead write a simple if statement: it's shorter, easier to read, and doesn't allocate an object!

Thankfully both functions compile to the same assembly when R8 is turned on.
November 27, 2024 at 6:20 PM