Shawn Rainbow
banner
shawnrainbow.bsky.social
Shawn Rainbow
@shawnrainbow.bsky.social
Android Dev, Kotlin Multiplatform Enthusiast, Math PhD
Reposted by Shawn Rainbow
There are a lot of benefits of building for local-first offline-only. Offline apps are severely underrated. You don't need a server for most things (terms might vary; we're building different things, too).
October 30, 2025 at 9:22 PM
KSP is now independent of Kotlin versioning!

github.com/google/ksp/r...
Release 2.3.0 · google/ksp
What's Changed KSP1 has been deprecated #2657 KSP is now independent of Kotlin Versions #2658 Full Changelog: 2.2.20-2.0.4...2.3.0
github.com
October 25, 2025 at 6:45 PM
😢
October 11, 2025 at 4:48 PM
Reposted by Shawn Rainbow
There are three kinds of lies: lies, damned lies, and
September 29, 2025 at 2:42 PM
Y'all gotta stop buying smart TVs, so they stop making them. There is literally nothing appealing about them.

My TV doesn't show me ads when I'm just turning it on. It can't be ruined by a software update. It turns on and off when I want it to. It immediately responds to all inputs.
I'm tired of the lies

I'm tired of all this wasted power

I'm tired of having so little control over my life
September 24, 2025 at 3:56 AM
Reposted by Shawn Rainbow
I wonder if "Accessibility" would be less of an afterthought, and more people would be interested in it, if we renamed it "Best Practices"
September 20, 2025 at 10:26 PM
Early in my career, I wrote a piece of code that I thought was the most beautiful idiomatic piece of Kotlin code one could write. My manager commented in the code review that it was confusing.

My gut reaction was that he was wrong and probably too entrenched into Java idioms still...
If someone takes the time to report an issue to you, your first reaction should always be that they're correct.
September 19, 2025 at 3:52 PM
It always seemed insane to me that I was in the minority in grad school for preferring whiteboards. When I asked people why they preferred chalk, they would often tell me that whiteboards are messy? Like... messier than chalk?
Mathematicians will contract pleurisy before they'll give up chalkboards
September 8, 2025 at 6:01 PM
Reposted by Shawn Rainbow
I'm sad that Project Ara never came to be. The idea of modularity for a phone was a cool idea. Definitely get why it never went anywhere, but dang it would have been cool.

The idea was you buy a phone chassis and then modules that give features, storage, extra battery, etc.
August 31, 2025 at 3:01 PM
To add to the nomenclature of this short article:

I have also seen "value classes" defined as "models", "entities", and "newables"

"Service objects" would equivalently be "services" or "injectables"
August 23, 2025 at 9:01 AM
Lol, it's me at a punk show.
saw a blue salmon swimming upstream to spawn today
August 23, 2025 at 8:54 AM
That's a really interesting bug. I don't think I fully understand why the objects aren't instantiated when the companion object is instantiated, though. Seems like a language bug rather than a dev-side bug to me.
August 21, 2025 at 5:16 PM
Reposted by Shawn Rainbow
The biggest trick the devil ever pulled is to call LLMs “artificial intelligence.”
August 19, 2025 at 3:43 PM
Reposted by Shawn Rainbow
Wrote a lot of thoughts on junior developers, AI, and what I strongly feel is going to become the defining challenge of our industry's next generation.

www.zacsweers.dev/forklifts-re...
Forklifts Require Training
Sleepwalking into labor collapse
www.zacsweers.dev
August 18, 2025 at 6:17 PM
Reposted by Shawn Rainbow
Email addresses are very simple, and you will score highly in this quiz.

e-mail.wtf
Email is Easy
Everyone knows what an email address is, right?
e-mail.wtf
August 17, 2025 at 5:15 PM
This is a very well written article that explains what LLMs (and Machine Learning algorithms in general) actually are. Highly recommended read for anyone who actually uses these tools (most people).
There is some confusion about whether or not we understand LLMs. The answer is yes and no, but mostly no. It's a complicated enough question that it seemed like it needed an article.

www.verysane.ai/p/do-we-unde...
Do we understand how neural networks work?
Yes and no.
www.verysane.ai
August 14, 2025 at 11:39 PM
This picture just made me realize how great the design of Star Destroyers are.
#OTD in 1960, the decommissioned HMS Vanguard was on her way to the breakers yard when she apparently decided to go for a final pint. The Royal Navy's last battleship ran aground next to the Still & West pub in Portsmouth. It took an hour for 5 tugs to pull her away.
August 5, 2025 at 4:17 PM
Kind of insane, since Metro's not even at 1.0... But it is pretty damn good and is my current default choice already (with an extremely bright future)
July 18, 2025 at 1:11 AM
It's been over a year and this song still goes 100x harder than it has any right to (The Spark by Kabin Crew, aka a bunch of Irish preteens):

youtu.be/njE3EknkkBY?...
“The Spark” - Kabin Crew & Lisdoonvarna Crew
YouTube video by The Kabin Studio
youtu.be
June 16, 2025 at 1:26 AM
Reposted by Shawn Rainbow
The foundations of Continuous Delivery aren't pipelines...

• Fast, reliable tests
• Clean, modular design
• Version control everywhere
• Frequent, small changes
• Automation you trust

Without these, You're not doing CD.
June 12, 2025 at 10:50 AM
Reposted by Shawn Rainbow
Honestly, I think my pedantry is my coding super power.

When you sweat the details and get them right, you remove these tiny amounts of friction. These fractional frictions can really add up. Remove them mercilessly.
June 10, 2025 at 9:55 PM
Reposted by Shawn Rainbow
Looks like first 1.9.0 alpha of Compose Multiplatform (CMP) is now available (github.com/JetBrains/co...).

I'm still not fully sure what it offers but cool to see MaterialExpressiveTheme included in CMP already.
Release 1.9.0-alpha02 · JetBrains/compose-multiplatform
Changes since 1.8.1 Highlights Multiple Platforms material3 library now includes new experimental MaterialExpressiveTheme #2127 Migration Notes Gradle Plugin The Compose Gradle plugin requires t...
github.com
June 6, 2025 at 8:27 PM
I take Kotlin's data classes for granted every day.
June 6, 2025 at 3:18 AM
Reposted by Shawn Rainbow
When crafting a design system, teams often focus on colors, typography, shadows, UI components, and more.

But there’s a crucial aspect many overlook: dimensions formatting (dates, times, speeds, lengths, etc.).

By experience, it greatly reduces product and engineering friction.
June 4, 2025 at 3:44 PM
Hey @bsky.app, why do I see quote posts of blocked posts in my feed? What interest do you think I have in that?
June 3, 2025 at 11:32 PM