Annyce Davis

Davis Technology Consulting

  • Home
  • About Me
  • Blog
  • Courses
  • Newsletter

Improved caching with Kotlin flows and the reduce function

March 17, 2022 by Annyce Davis

I’ve been on a caching crusade. I’m working to reduce the load on our database by focusing on various caching solutions. In an ideal world, data that is “static” will be heavily cached; minimal database interaction required. However, that’s not the world I’m living in. Each request to our GraphQL API leads directly to a database hit. Ugh!

Apollo GraphQL offers a few caching solutions to help with this endeavor. We decided to go with the responseCachePlugin. This plugin stores cacheable data in a datastore of your choice, for us that was Redis. The key thing to keep in mind is that the data must be cacheable. Which leads us to “the problem.”

Continue Reading

Testing Hybrid Jetpack Compose Apps

September 6, 2021 by Annyce Davis

We’re developing a hybrid Jetpack Compose application. It’s comprised of one Activity and several Fragments. Each fragment includes a ComposeView directly as the entire screen is built with Compose. But how do we write tests for this?

Continue Reading

Programmatically laying out views in ConstraintLayout with Flow

March 17, 2021 by Annyce Davis

Rotating the phone to landscape caused users of the app to experience a suboptimal experience. Turns out we had some legacy code that was manually calculating the size and position of each “chip”. 😱

Buggy Profile screen in landscape
Continue Reading

Talk: Musings on Kotlin Multiplatform Mobile

January 28, 2021 by Annyce Davis

In this talk, I share my initial thoughts on Kotlin Multiplatform Mobile (KMM). I walk through how I started on this journey. I also compare my experience with KMM to that of working with Flutter. Flutter is another cross-platform solution that I’ve worked with in the past.

 

Resources:

  • Getting Started with KMM
  • Sample App: Todo with KMM
  • Sample App: KaMP Kit
  • Xcode Plugin from Touchlab
  • Kotlin/Native interoperability with Swift/Objective-C
  • Kotlin Multiplatform YouTube Playlist

Recordings

  • None yet
« Previous Page
Next Page »

Follow Me

  • Bluesky

Categories

  • AI (4)
  • Android (62)
  • Career (7)
  • Communication (5)
  • Flutter (1)
  • Git (4)
  • Gradle (4)
  • Grails (23)
  • iOS (1)
  • Java (8)
  • JavaScript (6)
  • Kotlin (17)
  • Leadership (4)
  • Life (5)
  • Public Speaking (26)
  • Revenue (2)
  • RxJava (1)
  • Software Development (16)
  • Twitter (3)
  • Uncategorized (11)
  • Video Course (5)

Follow Me

  • Bluesky

Copyright © 2026 · All Rights Reserved · Log in

Loading Comments...