Getting ready to kill another app. It’s always hard to do, but it is becoming clear it’s time to end-of-life Interact on iOS. Since day one it’s been plagued by bugs in the underlying Contacts frameworks and almost none of them have been fixed by Apple in the intervening years.

It works great for most people, but for the ones with contact data that does not get along with the Contact framework, it fails in annoying ways. There are likely still places I could improve their experience in Interact, but I’ve burned too much time and effort on those edge cases for it to make sense to keep it going.

The app itself is a bit of an oddity with a confusing UI, which is on me. Had I not struggled with some of the bugs, I might have made it come together and make sense for more people - but that did not happen.

I’m not sad, in that the whole enterprise was a good learning experience. It was the first app I wrote in Swift. The first that I architected around using Operations for everything possible. I think I will be able to repurpose the most useful part of the app - the Scratchpad, which parses contact from plain text - into a component of Drafts 5.

Drafts 5 is my business moving forward though, and I need to remove distractions to make that happen.