The Complicated Life of a Single Toggle Switch

When I first started building Mnemeo, the plan seemed simple. I missed the old Memrise typing mode, so I'd build an app that had a great one. But I also knew a simple Anki-style rating mode was essential for quick reviews or mobile use. The obvious solution: offer both.

I was surprised how few apps actually do this well. You can often get a typing mode in Anki, for instance, but it usually involves a fair bit of tinkering. So, making this dual-mode system a core, easy-to-use feature became one of Mnemeo's key differentiators.

But this humble toggle switch started causing architectural headaches.

Problem #1: Convenience vs Logic

The toggle is a global setting, so logically it belongs on the global "Settings" page. But for my own early testing, I slapped it onto every deck page because it was convenient. The problem was that it felt wrong. It was a global switch pretending to be a local one, living right next to truly per-deck settings. Heresy!

This was a classic battle between short-term convenience and long-term clarity. In the end, I decided logic had to win. A misleading UI is a form of friction, and my entire goal is to remove friction. I moved the toggle to its proper place.

Problem #2: The Default Dilemma

With the toggle now neatly tucked away, I had to decide what a new user would see first. I love the typing mode, but I had to admit that a simple rating mode is a much faster and lower-friction entry point, especially for someone signing up on their phone. So I made another pragmatic choice: the default for all new users would be Rating Mode.

Problem #3: Discoverability

I had just engineered a perfect nightmare. I had taken my app's most unique and powerful feature - the one I built the app for - and made it completely invisible to every single new user.

The risk of a user signing up for the typing mode, not finding it, and leaving was huge. I needed a way to make it discoverable without cluttering the clean, simple interface I was trying to build. I explored a few ideas:

For now, I've settled on a simple "nudge." After a new user completes their first couple of study sessions, a small tip appears in the summary: "Tip: You can switch to typing mode in settings for a different learning experience."

A screenshot showing the 'nudge' tip in the session summary.

It’s a classic design trade-off. This is my current solution, and I'm still gathering data on how well it works. It's funny how a single UI element can send you down such a rabbit hole of design decisions. What looks simple on the surface is often the result of a hundred tiny, deliberate choices.