Annyce Davis

ones and zeros

  • Home
  • Public Speaking
  • About Me
  • Courses
  • Life

Improved caching with Kotlin flows and the reduce function

March 17, 2022 by Annyce Davis 3 Comments

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 1 Comment

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 Leave a Comment

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 Leave a Comment

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

What engineering leaders need to know from this year’s Google I/O

I didn't intentionally aim to create a rhyming title, but there you have it. Each year, I look forward to Google I/O like a kid going back to school. This year … [Read More...]

Talk: The Real MVP

You have an idea for a new app. You've secured buy-in from the business. What's next? The MVP. But what does it take to ship a new app these days? What are the … [Read More...]

Categories

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

Copyright © 2023 · Beautiful Pro Theme on Genesis Framework · WordPress · Log in

 

Loading Comments...