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
- The Unix Philosophy — The Art of Unix Programming, ESR
- Richard P. Gabriel, Worse is Better
- Simon Willison, llm
- cat-v.org: Unix
- SQLite: Appropriate Uses