# I spent 3 years writing an Android Contacts API in Kotlin with Java interop. What I've learned...

DevFeed: [I spent 3 years writing an Android Contacts API in Kotlin with Java interop. What I've learned...](<https://devfeed.tech/articles/i-spent-3-years-writing-an-android-contacts-api-in-kotlin-with-java-interop-what-i-ve-learned-38868.md>)

Original publisher: [Read original article](<https://dev.to/vestrel00/i-spent-3-years-writing-an-android-contacts-api-in-kotlin-with-java-interop-what-ive-learned-54hp>)

Author: Vandolf Estrellado

Published: 2021-11-04T23:13:30Z

Content type: article

Language: en

Sources: [Vandolf Estrellado](<https://devfeed.tech/sources/vandolf-estrellado.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Java](<https://devfeed.tech/topics/java.md>), [API](<https://devfeed.tech/topics/api.md>), [Library](<https://devfeed.tech/topics/library.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [api](<https://devfeed.tech/tags/api.md>), [coding](<https://devfeed.tech/tags/coding.md>), [community](<https://devfeed.tech/tags/community.md>), [development](<https://devfeed.tech/tags/development.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [inclusive](<https://devfeed.tech/tags/inclusive.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [showdev](<https://devfeed.tech/tags/showdev.md>), [software](<https://devfeed.tech/tags/software.md>)

## AI overview

The author presents an Android Contacts API library built in Kotlin with Java interoperability. The article discusses Android Contacts Provider history and complexity, explains the library, and reflects on mistakes and lessons from developing open-source code privately for three years.

## Source excerpt

Hi, my name is Vandolf and I have a problem. I get addicted and obsessed about certain things. It spirals out of control, very quickly. Once I set my sights on something, I don't stop until I finish it, even if it takes years. Sounds like addiction... It is. Before I know it, I've spent three years working on private repositories building something no one knows about. Then, I make it public and write an article about it thinking that it will blow people's minds. Then get shocked that the repo has less than 100 unique visitors in the first month because I think that it will just magically get discovered by everyone... Does this sound relatable to you? Probably not, right? I think I'm insane in some levels. If you are interested in the Contacts API library I've built or the insanity I'm going through, keep reading! I'll split this article in two sections. The Contacts API that I've built. 🔥 The mistakes I made and lessons I learned from writing "open source" code, privately, for three years. 🤦♂ If you are not interested in the first section, I recommend at least reading the second. You might learn something from the mistakes I've made, and hopefully avoid making them yourself! I'm actually a bit hesitant and nervous about posting this as my first article here. I have no reputation here. No one knows me. I'm just a random stranger. However, I know that doing things that are only within my comfort zone will not get me anywhere. So, I'm pushing myself to publish this article 😰 I hope to make connections, and maybe even friends, in this community ❤ The Contacts API that I've built. First, here is the GitHub repo; https://github.com/vestrel00/contacts-android Please take a look at it and let me know what you think? The oldest commit in the repo is 2 years old. However, I have another private repo that has the 3 year old commits. I'm not lying! 😁 Exactly a month ago from today, I have made public the previously private repo and published an article in Medium introducing my