← Writing

The app was the easy part

These days it’s easy to build an app. It’s not so easy to build something useful.

  • AI
  • UX
  • Vibe coding
  • Claude

I felt pretty happy when the app was starting to come together. The structure was right, the interactions basic but I could see where to go. Content was populated, UX copy seemed right. Except, when I read one piece, I had a bit of a panic. Is that true? Why didn’t I know that? That’s kinda pivotal information for someone moving here. Someone like, say, me.

Moving countries is pretty stressful, even between NZ and Australia. For most people they can feel like a bunch of islands in the same country, but there are a lot of differences in how things work and what you need. It’s not often as easy as jumping on a plane and springing up a new life.

When I moved to Melbourne from NZ recently, it involved a lot of planning and research. I’m not sure if it was more or less stressful with kids, pets, selling a house and redundancy, but here we are. I worked a pretty substantial Notion board to death that I checked every day, shifting things around, adding notes as I did more research, getting into the specifics on every detail. There are a lot of blogs out there, but you’ve usually got to read through a bunch of content and stories to get any valuable information, and half the time they’re out of date.

I created this app as the setup guide I wish I had nine months ago. What to do, in what order, and what to watch out for. It’s filled with hints, tips, links and gotchas. I wanted this to be, in essence, your knowledgeable friend who moved there a year before you.

The build

Started by writing some notes on what I was thinking. How would this work, what should be included. What wasn’t. Claude mocked me up a spec.md, which I gave to Claude Code and asked it to implement. It came together pretty quickly. I felt proud — look what I (we) built! Felt great seeing what I had been mulling over for months come together so quickly. Even all the content was populated.

I thought about sharing it at this point. Read some of the detail properly. Had a mild panic. Wait, was this true? How did I not know this? So Medicare enrolment wasn’t as easy as I thought for Kiwis? Did I miss something when I came over?

A callout card headed “Gotcha”, reading: An SCV is not the same as permanent residency — it affects things like Medicare enrolment timing and benefits eligibility down the track.
The Gotcha, that got me.

The app had a Gotcha card warning that Medicare was for permanent residents only, and New Zealanders aren’t (really) permanent residents — we’re on a special visa granted at the border. I read it. Re-read it. Half-believed it. It sounded exactly like the kind of fine print that catches people out.

But it’s wrong. Kiwis get Medicare from day one under a reciprocal agreement. It’s Centrelink, a completely different system, that locks new arrivals out for years. The AI had blended the two into one confident, plausible, wrong sentence. And because I half-knew the rules, I nearly let it through.

What actually mattered

AI can build whatever you tell it. It can write plausible-sounding wrong content all day. You need to understand what you’re actually solving for: if I were the user, what would I need, and is this true?

The interface was easy to get up and running. The value is the content. The help, the tips, the gotchas. That part, AI can’t do. That was nine months on a Notion board, and lived experience.

Validate the flows. Check it’s solving the right problem. Use it. Read it. Check it. Critically.

I’m writing a few posts on my experience building some things. What I got right, how the build went, trying to learn terminal, and critically assessing the build. This post is about the part that mattered. The next few are about how the build actually went — writing a spec for an AI, real dev tools, and figuring out what Claude Code is actually good at (and what it isn’t).

Originally published in Bootcamp on Medium. Bootcamp is published by the team behind UX Collective.