Keep the side project small

Douglas Pereira

The graveyard is full of personal CRMs. I have started three. None of them were a CRM problem. They were a "I wanted to feel like I was building a company" problem.

Unix, not a platform

The Unix philosophy still wins for personal software: do one thing, text in and out, compose. A script that renames files outlives a dashboard with OAuth. Richard Gabriel's Worse is Better is the uncomfortable twin: the slightly worse, smaller thing ships and gets used.

Simon Willison's llm CLI is the shape I copy: a tool you run, not a product you onboard.

Hardcoded is a feature

One user is a valid market. Auth is how side projects die. If the data is a JSON file in $HOME, you can grep it. If the data is a tenancy model, you are at work.

#!/usr/bin/env bash
set -euo pipefail
# two flags. no config object.

Finish the tiny version. Use it for a month. Only then decide if it wants Postgres.

Scope that survives a job

When the idea needs billing, a roadmap, and a status page, it is an unpaid second job. Keep the interesting experiment in a repo you can delete on Friday without a migration.

References