For the past month, I've been working on an updated version of 99 reddits for iOS with Aman. 99 reddits is a lightweight Reddit client that lets you quickly explore images and (some) animated GIFs from any subreddit.
99 reddits was first launched back in 2012. Up to this point Aman had been updating the app 1-2 times per year with folks from Elance / oDesk and funding development with an In-App Purchase. Looking for a side project with real users and inspired by Artsy's Open by Default, I shot him a PR one day.
Compared to other times I've worked on side projects, this release has been a real success. There are two things that made a big difference this time:
- Trusted team > lonely developer. Aman and I have worked together for over 4 years at different companies and on different projects. I've learned a ton about product management from him. We know our working styles and know how to work well together. Putting together a release is no big deal because we've done it so many times before.
- Having an audience! With zero marketing, 99 reddits had accumulated a couple thousand monthly active users. Writing software for an audience immediately raises the bar and creates a strong feedback loop.
GOTCHAS & Roadblocks
- Because of trademark concerns brought up during app review, we had to change the name from the original "99 reddits" to "99 edits" and modify the app icon to hide Reddit alien. Unfortunately, this make the app harder to find, but this update is more for the devoted users that use 99 reddits regularly.
- ERROR ITMS-90101: "This bundle does not support one or more of the devices supported by the previous app version". Did you know Apple doesn't let you drop iPad support once you make your app universal? As part of the update, we wanted to focus all of our attention on iPhone since an overwhelming majority of usage happens on iPhone. Once we found out we weren't allowed to drop iPad, I leaned heavily on UISplitViewController & trait collections to reuse code between iPhone and iPad. I had to work around several UISplitViewController bugs around iOS 11 large titles and iPhone X layout.
- Tech debt had piled up for 5 years. Working on this code base was like stepping through a time portal to a time when ASIHTTPRequest and NimbusKit were the latest hotness. My first instinct was to rip out, rewrite and replace. Here's where having a pro product manager was super helpful. Aman kept us focused on shipping, so we ended up with a good balance of product features and tech debt pay-down.
* Removed payment/upgrade stuff. The app is now totally free. Thanks to all who paid over the years, your support meant a lot!
* Improved cache management.
* Many fixes, including crashing when saving a pic.
* iPhone X and iOS 11 updates.
* New iPad layout.
For product questions and support, you can head over to the official 99 reddits subreddit. Found a bug? Feel free to open an issue on Github or submit a pull request if you're trained in the dark arts of Objective-C and preprocessor macros.