On Building Software

The one-person product: Throwing the AI train in reverse

My latest adventures in the software space

Ka Wai Cheung
On Building Software
4 min readJul 8, 2024

--

A common anxiety among technologists today is to figure out what to do with AI. We’re all jumping onto a train steered down tracks just being laid as we cross them. The ride is exhilarating for some, petrifying for others, and certainly bumpy for everyone onboard.

The loudest voices these days still come from the same places. More of this thing every tech narcissist craves to do—disrupt—leading to more of the thing they crave to be—big. More powerful. More loud. AI is just the latest fodder.

I’m looking at it differently because with something as big and loud as AI and the people that are carrying its torch, there’s also an opportunity for something different. For the exact opposite. Because everything after awhile gets old and stale and people crave the other thing.

I see an opportunity to build smaller things by yourself. Both because the tools are always getting better and because AI—as one such tool—is a tremendous assistant when it comes to writing code. It’s been core to what I’ve been doing recently—ramping up on Ruby on Rails*, a framework I’ve known about since its inception 20 years ago but just got around to installing a few months ago.

*- My ramp-up in RoR over the past two months has been a combination of the Rails and Hotwire video series from Pragmatic Studio along with having ChatGPT as an assistant to write nitty gritty Ruby stuff.

After all, there is an “AI” in Rails…

I’ve always loved the culture around Rails. Specifically that it tries to be as much a philosophy as it is a programming framework.

These philosophies, like convention over configuration, Ruby’s emphasis on succinctness, and the viability of a one-person framework sometimes seem to come at the expense of some other more traditional ones. And that rubs some programmers the wrong way.

But I’ve become more fond of its opinions (and the simple fact that it has opinions) as I’ve gotten older. Even more so in a time where some folks are eschewing learning to write code altogether in the shadows of these AI assistants.

As I’ve dug into writing a Rails app, I find myself smiling, nodding, sometimes frowning, but altogether excited about this thing I’ve known about forever but never used. Some stuff I don’t love.

Two quick examples:

  • I find the convention over configuration thing sometimes makes understanding what’s going on a bit harder, though my opinion is already changing as I get more comfortable with them.
  • I find the automatic return of the last output of a method a bit too cute while opening up the possibilities for confusing results. But then again, it’s an available feature of the language you can leave at the table if you’d like. I’m just used to being told there is no option.

But most of the stuff I do. Anyways, that’s how any good thing should be right?

With Rails, I’m trying to build simpler, complete, one-person products. By one-person I mean I’m the only one doing all of it—database, design, front-end, back-end, marketing, pricing.

Because while the AI train seems headed toward the usual mountains and valleys of big tech, it might also be leaving room for people like me that just love to make useful and beautiful things in a time where it seems more and more possible.

And room for products that make what’s already out there…better.

DNS Digest: My first “one person” product

My first such attempt is (tentatively) called DNS Digest. It’s a tool that reads DNS records directly from your name servers and displays them in a human-friendly and informative way.

Early screenshots of a few screens of DNS Digest v1.

It also lets you annotate your DNS records so you remember why they’re there and when you delete a record from your actual DNS server, DNS Digest will keep an archived copy of it….just in case.

It’s a simple idea. But not one I’ve seen on the market. Maybe it’s an idea too small for most companies to want to chew—but just right for someone like me, who still loves to create meaningful things, in a time like now, where the tools available make it feasible to build whole products by yourself.

More to come in the coming weeks…

--

--

Ka Wai Cheung
On Building Software

I write about software, design, fatherhood, and nostalgia usually. Dad to a boy and a girl. Creator of donedone.com. More at kawaicheung.io.