OkHttp 5.0 has a stable API. πΏ
This is just a personal anecdote but probably worth noting for job hunters and learners:
I've been asked 3 times just in the past week (!) by hiring managers for native Android developers!
If you're deciding what you want to pick up/hone, that seems to be in pretty high demand right now.
Is there a reference implementation of this? Would be neat to see
Ukraine <3
Interesting - $7-8 for only no ads on YouTube feels pretty compelling imo. Iβm sure theyβre doing a ton of testing on it to make sure it doesnβt cannibalize too many sales of the full Premium membership
I want to like YouTube Music, but it feels like an afterthought of a product from Google. If they ever unbundled it from YouTube Premium I think itβd be in trouble.
Great podcast on data modeling and preventing invalid states!
My favourite fact about the Super Bowl is businesses have to call it βthe big gameβ since βSuper Bowlβ is trademarked
Thanks! π
New post! Why you should use EmptyCoroutineContext instead of Dispatchers.Unconfined. code.cash.app/dispatchers-...
No memory leaks? π
go.bsky.app/BWjNgtr
Thank you @p-y.wtf for the wonderful idea (still building the list)
I swear the notification sound hits different in the emulator
This is one of those top tier posts that everyone should read. It still helps me with designing APIs!
Getting feedback loops below the "I can alt tab while this builds" threshold is so critical for me. A 1 minute build is basically the same as a 3 minute build if I lose focus.
I wrote a blog post that's really just an excuse to trick you into watching @worrydream.com's Inventing on Principle talk
Two Kotlin functions that take 2 float parameters a and b. Each function returns a divided by b if b is not 0, or a constant called DefaultValue otherwise. The first function does so using takeIf, let, and the "elvis" operator. The second function uses a simple if/else statement.
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.
Let's look at Bluesky performance on Android!
I managed to build a release build of the app and ran some traces, let's see what we can find...
I have ~hour, will add to this thread as I investigate
I donβt think so. Itβs more likely a symptom of an overly complex view hierarchy
@romainguy.dev would know best
π I made a starter pack of past & present Android engs from Block (Square, CashApp..)
Ask us what we think about fragments π
If you want to be in this lost, you know what to do π block.xyz/careers/jobs...
#AndroidDev
go.bsky.app/SLiJNP5
Could I get added too? π @androidhamilton.bsky.social and @birthdaybuffalo.bsky.social are here too
Building a Kotlin Multiplatform starter pack. Still working through followers and finding other folks on the platform. Lots of people joined recently, so I'm definitely missing accounts. Ping me with suggestions! go.bsky.app/2oR84o6
Me checking status.maven.org after it throws an exception when trying to release.
Mix Native iOS Views in Compose Multiplatform With Touchlab's New Library! youtu.be/UukFp6TbcZ8?...
Compose Swift Bridge (touchlab.co/composeswift...) looks like very useful addition to Compose Multiplatform ecosystem!
Picasso has officially been deprecated: github.com/square/picas...
Super easy to set up! Iβm @colinwhite.me now.
Extension functions and top level functions! They changed the way I design classes and expose APIs (for the better).
Coil 3.0 is out now! The main feature of this release is full Compose Multiplatform support, but there are tons of other smaller improvements. Check it out! colinwhite.me/post/coil_3_...