Sign in

Ryan Harter

@ryan.harter.us
617 followers 139 following 57 posts

Dad, Husband, Programmer, Google Developer Expert, Gradle Fellow. He/him.

PostsRepliesMedia
Ryan Harter @ryan.harter.us · 17/07/2026
I don't, but definitely recognize this pain. Composables being top level functions inverts our dependency inversion, which makes separating API from implementation difficult. You could put Composable functions in an interface, as there's no reason they *have* to be top level, but that is awkward.
020
Ryan Harter @ryan.harter.us · 17/07/2026
You seem pretty committed to this idea, but just in case it doesn't work out, there's always this. youtu.be/s6wBCaMHSwM?...
youtu.be
Heartbeat3 작동영상
YouTube video by Kwanghun Hyun
010
Ryan Harter @ryan.harter.us · 17/07/2026
It took a while on account of trying to edit on my phone on vacation, but this should be better. Thanks for the heads up!
A screenshot of this post on my website with the note box fixed.
110
Reposted by Ryan Harter
Ralf @ralf-wondratschek.com · 16/07/2026
I'm glad that the same ideas are working for you too. I extracted this module structure with enforcement of these rules into a library vrallev.github.io/app-platform...
vrallev.github.io
Module Structure - App Platform
A lightweight application framework for state and memory management suitable for Kotlin Multiplatform projects.
041
Ryan Harter @ryan.harter.us · 16/07/2026
Oh boy, you're not kidding! Thanks, I'll try to fix it from the airport, today!
110
Ryan Harter @ryan.harter.us · 15/07/2026
Here's a post about a Gradle module structure that I helped institute at Dropbox 4 years ago which has been serving us well. ryanharter.com/blog/2026/07...
ryanharter.com
A Great Gradle Module Structure :: Ryan Harter
Flattening my Dependency Graph Jesse Wilson Jesse explores a Gradle module structure that he likes. Read now ➡ I liked this not-so-recent post from Jesse Wilson, which outlines a Gradle module convent...
391
Ryan Harter @ryan.harter.us · 21/06/2026
A few weeks ago I ordered a new (from 2018?) NES game, Micro Mages, and it came in yesterday. Naturally, it made for a great Father's Day afternoon activity.
Me and my boys sitting on the floor of a very Lego and Hot Wheels heavy play room, playing a Nintendo game. A brand new box, instruction manual and cartridge for the indie game Micro Mages.
020
Reposted by Ryan Harter
Clarkesworld @clarkesworldmagazine.com · 19/06/2026
The annoying thing about doing a subscription drive is having to keep yelling about it. Doesn't work if I say nothing. Strange, eh?
311377
Ryan Harter @ryan.harter.us · 20/06/2026
Ahh, just found that new rule. Make sense so they can't say racist shit.
040
Ryan Harter @ryan.harter.us · 20/06/2026
Oh no, I'm watching on Telemundo in Spanish, and have no idea what this red card is for!!
120
Ryan Harter @ryan.harter.us · 18/06/2026
I'm having fun printing frames from this trip to the racetrack. #darkroom #filmphotographt
A printed black and white photograph of midget cars driving around a racetrack at night.
050
Ryan Harter @ryan.harter.us · 15/06/2026
@dankim.com turned me on to Plain Text Sports, and its now my go to! plaintextsports.com/world-cup/
plaintextsports.com
Today’s World Cup Scoreboard
Instant live sports scores, play-by-play, and box scores
120
Ryan Harter @ryan.harter.us · 13/06/2026
I went with the family to a local speedway for some races. It was my first time, and lots of fun. Here's a photo of a driver chatting up the race official as his car is being towed off the track. 😅
010
Ryan Harter @ryan.harter.us · 13/06/2026
Yesterday I sent off my Canadian citizenship application for my boys and I! I've been working on this for months, so I'm super excited to have this part taken care of.
060
Ryan Harter @ryan.harter.us · 31/05/2026
Just ordered Micro Mages as a new NES cartridge! morphcatgames.itch.io/micromages
morphcatgames.itch.io
Micro Mages (NES / PC) by Morphcat Games
A platformer developed for the NES. Now available on PC! ROM included. Play solo or with up to 4 players simultaneously.
000
Ryan Harter @ryan.harter.us · 27/05/2026
Being smart?
000
Ryan Harter @ryan.harter.us · 18/05/2026
ORD 🛫🛬 SFO for Google I/O. If you're going and see me, come say hi! #GoogleIO
140
Ryan Harter @ryan.harter.us · 14/05/2026
I'm often working with old code, and it's not that bad. It's even easier if you practice incremental maintenance. ryanharter.com/blog/2026/05...
ryanharter.com
Incremental Maintenance :: Ryan Harter
I recently reviewed some code at work that made me pause. The change affected a part of the codebase that we affectionately call “The Monolith”, which is some of the oldest code in our 16 ...
031
Ryan Harter @ryan.harter.us · 30/04/2026
Pamplemousse was always one of my favorite French words!
030
Ryan Harter @ryan.harter.us · 10/04/2026
I spent spring break in Arkansas, where I got to visit Crater of Diamonds State Park and Hot Springs National Park. I also go to try out the new Harman Switch Azure film, with some color couplers switched, which is really surreal.
A surreal image of a mine shaft building under a yellow sky. The colors are flipped in unexpected, unexplainable ways. A surreal photo of a tall building with a Hot Springs National Park sign in the foreground. The sky is yellow, the building looks cyan.A surreal photo of the facade of a spa. The building looks cyan and the sky looks yellow.
030
Ryan Harter @ryan.harter.us · 06/04/2026
Does it count as "using" Bluesky if you're just here for @frogandtoadbot.bsky.social? Asking for a friend.
020
Ryan Harter @ryan.harter.us · 03/04/2026
I could have sworn this already worked, but perhaps it was only RubyMine?
210
Reposted by Ryan Harter
Jesse Wilson @swank.ca · 07/03/2026
✊🏻
publicobject.com
‘Humans use Energy and Water too’
An engineer I admire was lamenting about AI. He said that his new programming agent is excellent at fixing bugs! And all that it costs is a bunch of energy and many litres of water. He said that he co...
0228
Ryan Harter @ryan.harter.us · 14/02/2026
I've been working with an artist for months to design a piece that captures my fascination with light and color. I've spent 15 years learning to simulate it with graphics programming, then moved to analog processes in the darkroom. Today the piece was installed, and I love it!
A piece of art hanging on a wall, above a record player. The art is made up of a white panel with a light in the corner, and several dichroic glass panels sticking out, creating colored reflections.
080
Ryan Harter @ryan.harter.us · 12/02/2026
This is built in to Mastodon, I think. Not sure it does likes, but posts for sure.
Screenshot of the mastodon web settings interface.
000
Ryan Harter @ryan.harter.us · 24/01/2026
Oh man, when Halcyon kicked in it took me right back!
000
Ryan Harter @ryan.harter.us · 24/01/2026
It's Friday night! Let's go!
The title screen of the 1996 movie Hackers.
150
Ryan Harter @ryan.harter.us · 18/01/2026
Ahh, I see it's there at index.xml, looks like your html layout is just missing the meta tag for discovery to work. gohugo.io/templates/rs...
gohugo.io
RSS templates
Use the embedded RSS template, or create your own.
000
Ryan Harter @ryan.harter.us · 17/01/2026
Have I been missing your writing?!? Your rss feed broke!
000
Ryan Harter @ryan.harter.us · 10/12/2025
Already exists. Throw the cast iron on the stove over high heat. When the big button in the middle turns red, press it!
000
Ryan Harter @ryan.harter.us · 23/07/2025
After introducing the boys to Star Wars the last couple of weeks, it's time to start on the next challenge!
030
Reposted by Ryan Harter
Amanda Hinchman-Dominguez @amanda-hinchman.bsky.social · 26/06/2025
Thanks for attending my #dcnyc25 talk! You can find the slides here on Speaker Deck: speakerdeck.com/amanda_hinch... #AndroidDev #Android
speakerdeck.com
Kotlin Coroutine Mechanisms: A Surprisingly Deep Rabbithole
Sometimes you think you know coroutines, and then after a while, you’re like, “Wait, do I really know coroutines?” Inspired by the O’Reilly book _Progra…
1124
Ryan Harter @ryan.harter.us · 08/06/2025
To me, that also feels like the promise of AI. It makes writing *more* super easy. But I don't want quantity, I want clarity. Having to use an AI summary makes the point even clearer.
000
Reposted by Ryan Harter
Saket Narayan @saket.me · 06/06/2025
Your post is also a good reminder of why writing abstractions for code that _seems_ similar is often a bad long-term idea.
051
Ryan Harter @ryan.harter.us · 06/06/2025
This is clearly what you click when you think you sent an email but it's stuck in your outbox!
020
Ryan Harter @ryan.harter.us · 06/06/2025
What's better than lots of great code? No code! I wrote about a recent tech spec review and how a teammate and I helped simplify a proposal down to nothing! ryanharter.com/blog/2025/06...
ryanharter.com
Celebrate the code you didn't write :: Ryan Harter
Over the past few years I've been driving an architecture and tech spec review process at work. This has been helpful in breaking down certain silos, distributing knowledge across the organization, an...
1253
Ryan Harter @ryan.harter.us · 24/05/2025
I just returned from a week in California for Google I/O and some other stuff at Google, which was amazing. I was a little surprised to come back to this kitchen renovation, however. 😅
A photo of my kitchen, with a large terrarium with two Russian Tortoises sitting in the kitchen island.
020
Ryan Harter @ryan.harter.us · 24/04/2025
I recently had the chance to share how we test at scale at Dropbox in a guest post on the Android Engineering blog! ⁨https://medium.com/androiddevelopers/how-dropbox-leverages-testing-to-maintain-high-level-of-trust-at-scale-b7b1bdf6161e⁩
1112
Ryan Harter @ryan.harter.us · 25/03/2025
Didn't they just steal all the tennis courts? That feels a bit more like Uber inventing Taxis.
000
Ryan Harter @ryan.harter.us · 09/02/2025
I got to take part in @vinaygaba.bsky.social's newsletter this week, which was fun. There are a lot of interesting answers to the question "Where do you see Android development in 3 years?" jetpackcomposeapp.beehiiv.com/p/dispatch-i...
jetpackcomposeapp.beehiiv.com
Dispatch Issue #11 - "Future of Android" Special
💌 In today's issue, we talk to some Android experts and hear from them about their hot-takes, predictions, wishes and advice about how they expect the Android ecosystem to change and how to best prepa...
082
Ryan Harter @ryan.harter.us · 09/02/2025
I appreciate the thoughts here. While not explicit, it sounds like you're suggesting there is, or should be, a technical solution to this. I wonder if the reason that "the socials" devolve like this is because we search for a technical solution instead of treating this as a cultural problem.
010
Ryan Harter @ryan.harter.us · 23/01/2025
CGI is the AI of the 90s.
000
Ryan Harter @ryan.harter.us · 23/01/2025
Tonight I'm playing around with a C program to fetch my currently playing track from Last.fm. I'm thinking of using it as a CGI script so that I can have a fun current moment page at ryanharter.com while still keeping the site Javascript free.
Screenshot of my computer screen. On the right is a Sublime Text window with a C program called "lastfm.c", behind that is a browser with the last.fm API docs and a terminal with the getenv man page open.
020
Ryan Harter @ryan.harter.us · 30/12/2024
I just booked flights and hotels for a family trip to Bologna, Italy and Lisbon, Portugal in two months. I'm getting really excited!
0110
Ryan Harter @ryan.harter.us · 28/12/2024
I'm watching The Fifth Element with Sara, who's never seen it. As soon as the cab says "Dallas", Sara reflexively says "Corbin Dallas". I asked how she knew that and she reminded me that I wanted to name our kids Corbin Dallas Harter. I totally forgot. 😅
090
Ryan Harter @ryan.harter.us · 27/12/2024
After a year or so, I spent some time this holiday break to finally put a 4" touchscreen on my Volumio HiFi streamer. It was a nice addition, but I decided it could use a little more space for interaction, so I got a 7" touchscreen instead. It's nice to be able to control this without my phone.
A display showing Fall Out Boy on Volumio, sitting on a powered bookshelf speaker with an aquarium next to it.
020
Ryan Harter @ryan.harter.us · 27/12/2024
Wow, glad you're alright! I hope you're able to make the trip soon!
110
Ryan Harter @ryan.harter.us · 27/12/2024
I've been waiting for it, and built it for Fedora today. I'm quite impressed so far. The perf is great, and the integration with GTK is seamless. I hear it's great for Mac as well. Seems very customizable, though it's entirely config file based without GUI (for now).
130
Ryan Harter @ryan.harter.us · 21/12/2024
Honestly, with the recent support for RCS on iPhones I find myself falling back to in-app sharing MUCH less frequently. For shared albums that auto update while on vacation or something, sure, but I think those still show up in albums.
010
Ryan Harter @ryan.harter.us · 15/12/2024
We decorated our Christmas tree today, and set up a "new" train! The old one was from Sara's grandpa, from the early 50s. This one came from a family member in an unopened box packed with a Lionel catalog for 1988.
A Christmas tree with a Lionel train set around the base. Two boys and I sit on the floor playing with the train.
070