hhc
mikeymykey.bsky.social
hhc
@mikeymykey.bsky.social
Melbourne dev building an app that turns recipe photos into smart grocery lists. Looking for beta testers!
www.opabinia.com.au
mikechiao.substack.com
5/5

The ghost is (hopefully) busted! Your grocery list should now correctly clear out after a trip, and you won't be bothered about duplicates from the past.

Building Opabinia, one bug at a time. 🛒🦐 opabinia.com.au
Opabinia: Your Grocery List Shortcut
Opabinia is the ultimate Recipe Enabler. Get your grocery list shortcut from any recipe photo, link, or text. Turn inspiration into dinner.
opabinia.com.au
November 14, 2025 at 7:54 AM
4/5

The fix was to teach the app what "deleted" really means. I had to go into the core database logic and add the proper filter to make sure it only loads active, non-deleted items.

It's humbling how one tiny, missed filter can create such a confusing experience. Always learning.
November 14, 2025 at 7:54 AM
3/5

It turned out to be a deep data-layer bug. The app was correctly marking the old items as "deleted" in the local database, but it wasn't filtering them out when loading the list!

It was like inviting a ghost to the party.
November 14, 2025 at 7:54 AM
2/5

This was a frustrating one. You'd finish your trip, everything would move to your inventory, but the app was secretly holding onto a "ghost" of your old list.

So the next time you'd add "chicken," it would pop up like, "Hey, you're already buying this!" which was just confusing.
November 14, 2025 at 7:54 AM
5/5

It’s a humbling lesson. This kind of polish isn't "extra"; it's a core part of the experience. Still learning how much effort this takes, but it's worth it.

Building Opabinia, one bug at a time. 🛒🦐 opabinia.com.au
Opabinia: Your Grocery List Shortcut
Opabinia is the ultimate Recipe Enabler. Get your grocery list shortcut from any recipe photo, link, or text. Turn inspiration into dinner.
opabinia.com.au
November 11, 2025 at 7:47 AM
4/5

I also hunted down other visual bugs:

"Invisible" buttons on the recipe image that blended into the photo.

Overlapping text in dialogs (like "Unit" and "g" on top of each other).

A truncated "Add to List" button that just... looked... awk...
November 11, 2025 at 7:47 AM
3/5

After a few failed attempts, I landed on a clean, two-column layout. Now, all ingredient names are perfectly aligned, and quantities (even "to taste") sit neatly beside them.

It's so much easier to read. A small change that makes the app feel 10x more professional.
November 11, 2025 at 7:47 AM
2/5

The main bug was my ingredient lists. An item like "1 cup flour" would align, but "basil leaves" or "to taste salt" would be offset, breaking the whole layout.

It looked messy and made the lists hard to scan quickly.
November 11, 2025 at 7:47 AM
Maybe activity contribute a bit? Might meet people that can help?
November 11, 2025 at 7:33 AM
I think just need to be mindful, I think posting links might get you banned if you don’t have enough karma
November 11, 2025 at 7:32 AM
I have the same issue haha let me you when you've figured out!
November 10, 2025 at 10:11 PM
Yeah for sure that's a challenge. Currently focused on single user, but have family sync in mind to implement in the future, will definitely seek your feedback when family sync is ready if you are keen! :)
November 9, 2025 at 11:01 AM
5/5

The new logic is much safer. Before uploading any change, the app now asks the server, "Is your data newer?" It only uploads if its local data is actually the newest. A lesson in building defensively.
Building Opabinia, one bug at a time. 🛒🦐 opabinia.com.au
Opabinia: Your Grocery List Shortcut
Opabinia is the ultimate Recipe Enabler. Get your grocery list shortcut from any recipe photo, link, or text. Turn inspiration into dinner.
opabinia.com.au
November 8, 2025 at 10:30 PM
4/5

Fixing that led me to another potential nightmare: the "sync conflict." What if you used the app on two devices? Your phone could accidentally overwrite new cloud data with its old, stale data. A recipe for data loss. Still so much to learn about data sync.
November 8, 2025 at 10:30 PM
3/5

The fix was a single-line change to listen for "user updates," not just "user sign-ins."
The real lesson? This time, I've locked in the fix with a new unit test. Now, if I ever break this specific logic again, my tests will fail instantly.
November 8, 2025 at 10:30 PM
2/5

I was looking in all the wrong places. The problem wasn't the migration failing—it was never starting.

Turns out, a previous refactor I did had caused this "lost signal" bug to reappear. A classic regression that's been driving me mad!
November 8, 2025 at 10:30 PM
5/5
It feels like a small change, but it's a huge step for trust and stability. The goal is an app that's not just smart, but also safe and predictable. Still so much to learn on this journey.
Building Opabinia, one bug at a time. 🛒🦐 opabinia.com.au
Opabinia: Your Grocery List Shortcut
Opabinia is the ultimate Recipe Enabler. Get your grocery list shortcut from any recipe photo, link, or text. Turn inspiration into dinner.
opabinia.com.au
November 5, 2025 at 7:47 AM
4/5
Fixing the UI was just the start. It uncovered a subtle bug where a first-time Google sign-up didn't get the same clean setup as an email sign-up. It's a small detail, but these inconsistencies are the ones that can cause confusing problems for users down the line.
November 5, 2025 at 7:47 AM
3/5
The solution was to stop guessing and just ask. Now, if you have an unsaved list, the app presents a clear, simple choice first:
* Save & Link this list to an account.
* Discard this list & Sign in.
You are always in control.
November 5, 2025 at 7:47 AM
2/5
The old sign-in panel tried to be clever, showing different options based on what it thought you wanted to do. But I'm learning that "clever" can easily become confusing. Worse, it created a path where you could accidentally delete your local list. Not a great experience.
November 5, 2025 at 7:47 AM