I'll just build a simple email app."
That's what I told myself. How hard could it be?
It turns out, "simple" apps are often the most complex. Building my own All in one email app taught me more about project planning than any other project.
Before you write a single line of code for your "simple" app, here are 3 lessons I learned the hard way.
- Your MVP's "Core Problem" is Everything My MVP (Minimum Viable Product) wasn't "an email app." That's too vague.
My MVP was: "A user must be able to add a Gmail and an Outlook account and see them in one inbox for all accounts
This was a hard MVP. It forced me to tackle the single biggest technical challenge first: handling two completely different authentication and sync protocols (OAuth, IMAP, Exchange).
Lesson: Define your MVP by the hardest problem you need to solve. If you can't solve that, you don't have a product.
- Research Your "Deal-Breaker" API Every app has a "deal-breaker." For a weather app, it's the weather API. For my Mail App it was the protocols.
I spent the first two weeks just building a simple command-line app that could get all mail access from Gmail and Outlook. I didn't write a single line of Android UI.
- Choose Your "Hill to Die On" (Your Core Value) My "hill" was speed. I wanted a fast and smart mail client, not a "super-app."
This meant saying NO to features:
No Calendar
No To-Do List
No Note-Taking
My app had to be the best email app for Android for one job: to manage all email in a Unified Inbox This focus is what makes a product great, but it's hard to stick to.
The Result
This planning made the project possible. The All mail App I ended up building is "mail App - All Mail Anywhere"
It's a lightweight, free email app that solves the multiple email account app problem without the bloat. It supports all email providers precisely because that was the "deal-breaker" I solved first.
You can check out the final app here: https://play.google.com/store/apps/details?id=com.allmail.anywhere.inbox
Top comments (0)