Skip to content

About

Who writes this

I'm James, a middle-aged technology professional based in Singapore. By day, I manage technology and software projects. After hours, I build web applications on my own. I have deployed nine applications so far, all hosted on Zeabur, each built to solve a concrete problem for a specific group or workflow.

Why this site exists

I found myself having the same conversation regularly with colleagues in finance, friends outside technology, and family members. People would ask what ChatGPT actually does, whether these tools are truly intelligent, or why a system confidently gave them incorrect advice. My answer was always the same: a language model is not a sentient being or a search engine, but a statistical tool that predicts the next likely sequence of words. Having that conversation repeatedly made it clear that a plain-language resource was worth putting in writing.

What I build

I build focused, practical web applications. These include a study aid for Singapore students, a live trivia platform for group events, a prayer board for a church cell group, and a transposable chord sheet library for musicians. An overview of all nine applications, including their access requirements, is available on the apps page.

Why "Good Soil"

The name draws from the familiar parable of the sower. When seeds are scattered, much of what happens next is simply out of the planter's hands. Some get taken by the birds, some fall on shallow ground, and others get choked out by weeds along the way.

Building software often feels the same. You can invest genuine craft into an application or an article, but technology shifts, circumstances change, and plenty of ideas never take root. It is easy to look at the birds and the weeds—everything outside your control—and let hesitation keep you from starting.

Yet if fear stops us from scattering seeds, we never get the chance to find good soil. Every app and guide here is built in that spirit: do honest, careful work, accept the misses without resentment, and keep planting anyway.

How I work

I develop software using modern coding agents, primarily Oh My Pi (OMP) (my current favorite, built on Pi) and OpenCode, along with Claude Code and Codex CLI. These agents operate within specific local folders under defined boundaries. I review proposed edits line by line before accepting changes. Applications are deployed across Zeabur and Vercel.

What I do not publish

I do not publish details about my employer's work or proprietary client projects. I do not share confidential material, internal source code for private community applications, or financial trading code. Content on this site is limited to verified technical capabilities and practical workflows.

Elsewhere

You can find me on LinkedIn.