Pada tahun 1994, situs web dinamis berarti menulis program C, menempatkannya di direktori cgi-bin, dan membiarkan Apache melakukan fork terhadapnya pada setiap permintaan. Tiga puluh dua tahun kemudian, penulis merilis produk web komersial, marketyour.games, dengan menggunakan teknologi yang pada dasarnya sama. Produk ini mencakup akun pengguna, dasbor pencarian untuk kreator konten, folder untuk mengatur mereka, pembayaran melalui Stripe, dan email transaksional melalui Postmark. Produk ini mengikuti prinsip progressive enhancement dan tidak memerlukan JavaScript.
Tumpukan teknologinya disebut BCHS: OpenBSD, C, httpd, dan SQLite. Tidak ada framework, bahasa templating, ataupun server basis data terpisah. Program C membaca variabel lingkungan CGI dan langsung mengeluarkan HTML. Binary-nya ditautkan secara statis dan diterapkan dengan mengganti satu file, sehingga permintaan baru langsung menggunakan versi baru tanpa perlu memulai ulang server atau mengalami downtime. Fitur pledge dan unveil dari OpenBSD membantu mengamankan program, dan httpd melayani dari chroot. Dependensinya terbatas pada libcurl untuk permintaan keluar, libsodium untuk pengidentifikasi, hashing kata sandi, dan verifikasi webhook Stripe, serta libcjson untuk pengurai JSON. Build bersih membutuhkan waktu beberapa detik.
Penulis menghargai CGI karena dasar-dasarnya, bukan framework. Spesifikasi 1.1 yang diterbitkan pada 2004 tidak berubah, dan memahami HTTP sudah cukup untuk memahami CGI. CGI bersifat agnostik terhadap bahasa dan platform, serta menjaga pemisahan tanggung jawab yang jelas, dengan satu web server yang memanggil logika bisnis secara langsung, alih-alih melakukan reverse-proxy ke server aplikasi terpisah. Aplikasinya adalah program biasa yang bisa dijalankan dari shell dan di-debug dengan gdb.
Pendekatan ini juga menawarkan risiko rantai pasokan yang minimal, sebuah keunggulan penting mengingat serangan terbaru terhadap repositori paket. Dengan dependensi yang sangat sedikit, paparan terhadap paket yang disusupi menjadi lebih kecil. Penulis berargumen bahwa kemunduran CGI pada 2004 memang beralasan, tetapi tidak lagi berlaku pada 2026, dan aplikasi web modern memang dapat ditulis dalam C.
Sumber: Hacker News · Diringkas oleh HeadlinesBriefing