
I had just started building apps at work and wanted more practice outside it. I was a big fan of Kinda Funny, a gaming and comedy podcast, so I built a soundboard: a screen of buttons, each playing a memorable line from the show. I asked the team first. Greg Miller said yes, as long as I didn’t charge for it, so I never did.
Data, not code
Instead of hard-coding the buttons, the app reads them from a small SQLite database: the clip, who said it, and which photo to show. Adding a new sound means adding a clip, a photo and a row, without touching the code. It also taught me SQL. In hindsight a JSON file would have done, but I’m glad I learned it.
Like every Android app, it had to look right across thousands of devices, from small phones to tablets.
Handing it to the community
The app stayed popular after my own interest moved on, and I didn’t want it to become abandoned. The app’s code depended on private Android libraries I’d written, so I couldn’t simply open-source all of it.
Instead, I open-sourced the content: the database, the sound files and the photos. Fans could add new clips with a pull request, and I could rebuild the app with their changes in about 20 minutes, without editing any code. A small change in how the project was split up kept it alive for years.