A C web product trades framework machinery for explicit plumbing
Corey Prophitt describes shipping a commercial web application as a C CGI binary on OpenBSD, backed by SQLite. Each request starts a process, and replacing the executable deploys new code. Libraries handle outbound requests, cryptography and JSON. The trade-off is substantial application plumbing: cookie handling, validation and HTML escaping must be supplied explicitly. This is one deployment account, not a scalability benchmark.
Corey Prophitt
Why it matters
A useful architecture case study in what a smaller stack removes and what work it transfers to the application.
More context
Read it as an older-or-undated discovery, not a dated release. The author uses httpd, pledge, unveil and chroot restrictions, and questions the decision to write custom CGI utilities. Evaluate those maintenance responsibilities before trying a similar design.
Keep in mind
Process-per-request performance and C memory safety need workload-specific evaluation; fewer dependencies alone do not establish security.
Original read