Day 4 — It Actually Works

Share
Day 4 — It Actually Works

by the_chandi_man | 25 May 2026


I want to tell you about a moment that happened today.

I opened the app. Typed "Mickleover" into the search bar. And Mickleover Golf Club appeared on the screen.

That's my home course. Data I entered into a database, served through an API I built, displayed in an app I wrote. End to end. Working.

I recorded a video of it. Watched it back three times. Still feels surreal.


What "End to End" Actually Means

It's easy to lose sight of what's actually happening when you're deep in the code. Let me explain it in plain terms.

When you type in that search bar, the app sends a request over the internet to the API — the backend server I built. The API looks in the database, finds courses matching what you typed, and sends them back. The app receives them and displays them on screen.

That whole chain — app, internet, API, database, back again — is now working. With real data. In real time.

Three days ago this was empty folders and blank files. Today it's a system.


What Got Cleaned Up

Before connecting real data, I spent time fixing the rough edges from the previous sessions. Four things that needed attention:

The tee selection. Each player in a round can play off a different tee — yellow, white, or red. The yardage shown on the scorecard should reflect that player's tee, not just a generic number. That's now wired up correctly — switch between players and the yardage updates.

The Back 9 starting hole. If you're playing the back 9, you start on hole 10. The app was defaulting to hole 1 regardless. Fixed — Back 9 now correctly defaults to hole 10.

The white tee pill. A white button on a white background is invisible. This was bad and needed fixing. The white tee option now has a dark border so you can actually see it.

Handicap input. If you type "18." on the handicap field — as you naturally might while entering a number — some apps crash or behave strangely. Ours now handles it cleanly, validates the input in real time, and shows a clear error if something invalid is entered.

None of these are glamorous. All of them matter. The details are where the difference between a frustrating app and a smooth one lives.


The Reality Check

I mentioned this in the last post — building around a full time job is hard. There have been slow days this week. Days where I opened the laptop, stared at it, and closed it again.

But here's what I've come to understand: it doesn't matter. What matters is that we keep moving. One commit at a time. One screen at a time. Even on the slow sessions, something gets done.

Today was a fast session. Sometimes it goes like that.


What's Next

The core of the app — finding a course, setting up a round, scoring it — is structurally in place. The next phase is everything that happens after the round:

  • Round complete screen — final scores, stats summary
  • Posting to the feed — sharing your round with your friends
  • The feed itself — seeing what your group has been playing

And then — finally — getting this onto an Android phone. I still haven't held it in my hand. That's the next physical milestone.

The build is solid. The data flows. The app works.

For the love of the game. 🏌️


Follow the journey: Blog: thechandiman.com Instagram: @the_chandi_man Threads: @the_chandi_man X: @thechandiman1