Sign in

Pearce Keesling

@keeslinp.bsky.social
91 followers 228 following 313 posts

Software developer at Quicken. Mobile dev enthusiast. Quality and performance are an art

PostsRepliesMedia
Pearce Keesling @keeslinp.bsky.social · 28/06/2026
A great feature of FOSS + agents is that I can fork @zed.dev and change/add the things that my workflow needs. Using closed source tools breaks that
000
Pearce Keesling @keeslinp.bsky.social · 14/06/2026
touchlab.co/the-future-of-kmps-ios-… was a very interesting read but the framing was a bit weird. Comparing SKIE to an alpha release of swift-export as if they are competitors feels premature. Also what's to stop someone making a "SKIE for swift-export" to fix the gaps?
000
Pearce Keesling @keeslinp.bsky.social · 23/04/2026
Every few months I open up the agent tab in Android Studio to try something out and it's always a pleasant surprise that it has gotten a little better. Panda 4 feels a lot better than the last time I tried it out
000
Pearce Keesling @keeslinp.bsky.social · 18/04/2026
I've added iOS style swipe gestures to a branch of our android app and now I want it everywhere. I still believe system back gesture is superior because of how ubiquitous it is, but I really enjoy having both options. I keep accidentally swiping on our production app to try and go back
010
Pearce Keesling @keeslinp.bsky.social · 27/03/2026
Something I love about the android developer ecosystem is that things just get better for free over time
010
Pearce Keesling @keeslinp.bsky.social · 23/03/2026
Nav3 for compose is so incredibly cool because what do you mean I can write my own scene strategy and get exactly the layout and transition behavior I want without the screens themselves even needing to change. Makes everything else I've ever used feel like handcuffs
000
Pearce Keesling @keeslinp.bsky.social · 21/03/2026
The #1 thing that could make CMP easier to figure out would be to align coordinates for dependencies so I don't have to do the song and dance of figuring out what version of an androidx package corresponds to the jetbrains coordinate. Someday I want to add compose as a dep and start coding
110
Pearce Keesling @keeslinp.bsky.social · 04/03/2026
Messing around with the new desktop mode on my Pixel is surprisingly good! @heron.tunji.dev mostly handles things like a champ on my 5k monitor. A few more years of tweaking from Google and I could see this being a real daily-driver for people.
110
Reposted by Pearce Keesling
Bob Nystrom @stuffwithstuff.com · 29/01/2026
Forgive me, I wrote a thing about AI: journal.stuffwithstuff.com/2026/01/24/t...
journal.stuffwithstuff.com
The Value of Things – journal.stuffwithstuff.com
88311
Pearce Keesling @keeslinp.bsky.social · 10/11/2025
Being able to write extensions in swift for kotlin types is so underrated. That's the power of high quality interop in kmp
000
Pearce Keesling @keeslinp.bsky.social · 04/11/2025
Big companies are so weird. Amazon is migrating FireTV to be first class React Native based, but then I listened to a podcast today about how prime video (presumably their flagship app?) is migrating from React to Rust
110
Pearce Keesling @keeslinp.bsky.social · 31/10/2025
AI is so consistently and confidently wrong about gradle project configuration. It will tell me all about how I need to do a ten step process to correct my configuration when the truth is I just mixed up a "." for a ":"
110
Pearce Keesling @keeslinp.bsky.social · 26/10/2025
Trying out @heron.tunji.dev for the first time. Holy cow it's impressive how much one dev can get done. 10% the size of the main app and absolutely gorgeous animations and polish. Obviously there are still some kinks to work out but it's already better than the default by leaps and bounds
131
Pearce Keesling @keeslinp.bsky.social · 21/10/2025
Currently updating some maestro tests that our QE team has put together. I'm starting to doubt the scalability of yaml files. It makes for a great demo but orchestrating hundreds of tests becomes painful. The JS/bash workarounds needed to scale are tricky and bespoke.
100
Pearce Keesling @keeslinp.bsky.social · 19/10/2025
Idk how Google messages doesn't have predictive back yet. It's the Google app I interact with the most so it would be nice to have all the modern experiences
000
Pearce Keesling @keeslinp.bsky.social · 15/10/2025
@asklyft.bsky.social just changed my driver after it already sent me a notification of my driver information so I was accidentally the asshole stealing a ride. Luckily the other person said something as we were driving away. Lesson learned, don't trust Lyft notifications and open the app.
000
Reposted by Pearce Keesling
TJ @tunji.dev · 29/09/2025
I'm excited to announce something I've been building, an open source atproto client heron.tunji.dev! Its currently available in beta on Google Play for Android devices. Please DM @heron.tunji.dev if you'd like early access. It will be released to all Android users in the next few weeks!
99321
Pearce Keesling @keeslinp.bsky.social · 14/08/2025
Just filed the "revert to old architecture" PR. Huge bummer, but the new arch is still way too buggy in our app. Not really sure what we're going to do about RN 80 being the last supported legacy arch release
010
Pearce Keesling @keeslinp.bsky.social · 12/07/2025
Finally had the "opportunity" to use the Tesla app this weekend. It's always hyped as an example of an awesome react native app. It's pretty rough and I think I'd pick a different app to hype. Unresponsive taps, randomly crashes, map basically didn't work
010
Pearce Keesling @keeslinp.bsky.social · 16/06/2025
Nothing makes me appreciate how great @kotlinlang.org is quite like writing swift
000
Pearce Keesling @keeslinp.bsky.social · 09/06/2025
I love the pause in platforms state of the union to randomly through shade at crossplatform toolkits. Peak pettiness
100
Pearce Keesling @keeslinp.bsky.social · 06/06/2025
Observing the switch 2 discourse about loading times is interesting because people are excited about loading times going from super duper slow to just very slow.
000
Pearce Keesling @keeslinp.bsky.social · 06/06/2025
React native is just being told "use X it makes everything better!" And then discovering that Y and Z that we also use don't work with X unless you turn off the cool features of X. Anytime we reach equilibrium I'm afraid to change anything. Right now we're dealing with native stack.
110
Pearce Keesling @keeslinp.bsky.social · 29/05/2025
I think the new @jetbrains.com lsp is awesome, it won't replace my usage of android studio, but when I'm editing my js code in @zed.dev and need to hop over to kotlin really quick it'll be super nice to have basic editor functionality
010
Pearce Keesling @keeslinp.bsky.social · 25/05/2025
I think compose is the only framework where you get such big wins just from upgrading. I don't have hard numbers but I don't think Hermes or the new arch had such a large impact in React Native (and neither of those was "just upgrade").
110
Pearce Keesling @keeslinp.bsky.social · 23/05/2025
#kotlinconf day one has me unreasonably and dangerously hyped for compose multiplatform
030
Pearce Keesling @keeslinp.bsky.social · 19/05/2025
I don't normally care for "x tips you didn't know articles" because it's usually blog-spam, but I actually did learn 3-4 new things from the one in here. Great find!
021
Pearce Keesling @keeslinp.bsky.social · 16/05/2025
Am I crazy for wanting to use react native brownfield from @callstack.com to move code _out_ of react native? Not that we're getting off RN, but we want to shift the ratio of native to RN more towards native
010
Pearce Keesling @keeslinp.bsky.social · 30/04/2025
Not being able to upgrade a library because of incompatible requirements like "the new mmkv needs new arch but the old version doesn't support rn 77" is my least favorite hell that I always run into with RN. I have to imagine it's better in expo-land.
030
Reposted by Pearce Keesling
Gábor Nyéki @gabornyeki.com · 19/02/2025
Greg KH is a voice of reason downthread: lore.kernel.org/rust-for-lin...
lore.kernel.org
Re: Rust kernel policy - Greg KH
39013
Reposted by Pearce Keesling
emilk @ernerfeldt.bsky.social · 04/02/2025
Introducing egui 0.30! This adds `egui::Scene`: a pannable, zoomable container for other UI elements. This release also makes frames and corner radius more in line with how CSS and Figma works. We’ve also improved the crispness of the rendering, and a lot more!
4344
Reposted by Pearce Keesling
Steve Klabnik @steveklabnik.com · 03/02/2025
hey could all of the various childish linux maintainers throw their tantrums in parallel? they're all identical anyway, would really speed things along lwn.net/SubscriberLi...
lwn.net
Resistance to Rust abstractions for DMA mapping [LWN.net]
1318510
Pearce Keesling @keeslinp.bsky.social · 26/01/2025
Trying to help people on Reddit who are having issues with our product is a roll of the dice. Some are very nice and others think that as an employee I'm somehow entirely to blame and/or I should magically be able to fix everything and anything less is unacceptable.
000
Reposted by Pearce Keesling
Software Mansion @swmansion.com · 21/01/2025
Announcing React Native Reanimated 4 🐴 Long-awaited CSS Animations and Transitions support is here! ✨ Available now in Beta. Read more 👇
418041
Pearce Keesling @keeslinp.bsky.social · 13/01/2025
Nothing quite like being in a demo meeting to motivate you finally tracking down that bug a few minutes before you have to present
000
Reposted by Pearce Keesling
Raph Levien @raphlinus.bsky.social · 13/01/2025
December was vacation time for many of us (myself included), but Linebender did impressive work on a number of fronts: releases of the Color and Peniko crates, progress on text layout and the masonry widget set, and a new Kompari crate for image comparison. Read more at linebender.org/blog/tmil-12/
linebender.org
Linebender in December 2024
Linebender in December 2024
1132
Reposted by Pearce Keesling
Matt Pocock @mattpocock.com · 27/12/2024
Node.js now supports TypeScript. Here's everything you need to know: www.totaltypescript.com/typescript-i...
totaltypescript.com
Node.js Now Supports TypeScript By Default
TypeScript is coming to Node 23. Let's break down what that means.
932982
Reposted by Pearce Keesling
Rolldown @rolldown.rs · 25/12/2024
🎁 A surprise holidays gift: after over a year of hard work, we have just published Rolldown 1.0.0-beta.1!
1034266
Reposted by Pearce Keesling
Romain Guy @romainguy.dev · 20/12/2024
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.
romainguy.dev
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...
1914845
Reposted by Pearce Keesling
Sebastian Sellmair @sellmair.dev · 18/12/2024
🎇 #ComposeHotReload is quite powerful. Here are some demos showcasing what the most recent builds allow, when writing compose apps A thread🧵
67813
Reposted by Pearce Keesling
Kevin Galligan @kpgalligan.bsky.social · 13/12/2024
Big Kotlin Multiplatform update for native mobile teams! With SKIE 0.10.0, and some helpful tweaks from KMMBridge 1.2.0, you can locally browse and debug Kotlin code, in Xcode, using published Swift Package Manager dependencies! touchlab.co/spm-kotlin-d... (cc: @touchlab.co @tadeas.bsky.social )
touchlab.co
Debugging Kotlin in Xcode with SPM Builds
Virtually all native mobile teams integrate Kotlin Multiplatform by publishing Xcode binaries, usually with SPM. This is generally easy to integrate, but prevented iOS developers from browsing o...
34613
Pearce Keesling @keeslinp.bsky.social · 13/12/2024
@github.com I really like the explore tab in GitHub but it is incredibly flaky. About half the time it ignores my starred repos. I haven't had it work well in a few weeks. I love it because it helps me keep track of releases but I just need it to be more reliable
010
Reposted by Pearce Keesling
camwing @camw.ing · 05/12/2024
In 2025 (less than 30 days away), PayPal will start selling your transaction history for targeted advertising. I very highly recommend logging into your account and going to Settings > Data & Privacy > Personalized Shopping. If you're reading this, turn that off RIGHT NOW before you forget.
A screenshot of PayPal's terms of service. Big wall of legalese text, which I will be pasting in below. You don't need to read it, here's the important part: 

"The key update to the Privacy Statement explains how we will share information with merchants to personalize your shopping experience and recommend our services to you. Personal information we disclose includes, for example, products, preferences, sizes, and styles we think you’ll like. Information gathered about you after the effective date of our updated Privacy Statement, November 27, 2024, will be shared with participating stores where you shop."


Here's the whole paragraph: 

We are updating our Privacy Statement to explain how, starting early Summer 2025, we will share information to help improve your shopping experience and make it more personalized for you. The key update to the Privacy Statement explains how we will share information with merchants to personalize your shopping experience and recommend our services to you. Personal information we disclose includes, for example, products, preferences, sizes, and styles we think you’ll like. Information gathered about you after the effective date of our updated Privacy Statement, November 27, 2024, will be shared with participating stores where you shop, unless you live in California, North Dakota, or Vermont. For PayPal customers in California, North Dakota, or Vermont, we’ll only share your information with those merchants if you tell us to do so. No matter where you live, you’ll always be able to exercise your right to opt out of this data sharing by updating your preference settings in your account under “Data and Privacy.”
366110598253
Pearce Keesling @keeslinp.bsky.social · 02/12/2024
#AOC day 2 in #kotlin, learned yet another zip util! I started out with windowed(2) but then discovered zipWithNext that makes pairs instead of lists (much easier to work with and more efficient). Sadly I was lazy and just brute forced part two 😬. I feel there must be a rule of association trick....
010
Pearce Keesling @keeslinp.bsky.social · 01/12/2024
Doing #AOC this year in #kotlin and I want to try and share a nifty kotlin feature I learn about each day. Today I found someone who used the unzip tool. I was folding to build the two lists but I could have just mapped into a pair of numbers and then unzipped it into the two lists
030
Reposted by Pearce Keesling
Jorge Castillo @jorgecastillo.dev · 01/12/2024
This post by @zachklipp.com on how to centre things in Compose is a master lesson on the compose layout system. Really recommended 💯 blog.zachklipp.com/centering-in...
blog.zachklipp.com
Centering in Compose
Let’s talk about centering things. There is no Modifier.center() in Compose, nor is there a Center composable, and I think the reason for that is because once you understand Compose's layout system yo...
14613
Pearce Keesling @keeslinp.bsky.social · 26/11/2024
I've noticed that the distinction between scroll vs swipe is something that is super hard to get right. Scrolling through my bsky feed I can accidentally swipe between tabs. It's a problem I've struggled with a lot in my own RN apps and is one of those native-isms that is hard to replicate correctly
000
Pearce Keesling @keeslinp.bsky.social · 03/11/2024
I accidentally plugged the wrong power supply into my kvm and it is totally fried (smoke and everything), but then like 10 minutes later my monitors both stopped working. Am I totally cooked or do I have a shot of fixing those?
000