3 ms·
It took me about two decades to settle on a personal website stack. It started off as a Classic ASP website back in 2001 but I eventually moved to Common Lisp.
by susam 3y ago
It took me about two decades to settle on a personal website stack. It started off as a Classic ASP website back in 2001 but I eventually moved to Common Lisp.
A Common Lisp program generates static HTML files from handwritten HTML content. The website has minimal dynamic elements in the form of comment and subscriber forms, implemented using Common Lisp + Hunchentoot. All content is written in simple HTML, facilitated by Emacs' HTML+ mode. The CSS is basic, offering support for light and dark modes. I host the website on a virtual private server (VPS) running Debian and Nginx. The CSS and HTML layout change very rarely, so it allows me to focus on content.
This stack has proven to be stable and cost-effective, with the server handling low traffic of 1 request every 5-10 seconds or so on normal days. During occasional spikes, like when a page reaches the front page of HN, the traffic increases to about 10-20 requests per second but this is still a piece of cake for the $5/month VPS the website is running on.
"Analytics" is just a handful of make targets in a Makefile that invokes commands like zgrep, sort, uniq, etc. to filter the access logs and show me which posts are getting the most hits, which days are the busiest, etc. That's all. I'm quite happy with this stack and I think this will serve me well for the next few decades.