Principles (of software design)

This may sound pretentious, but the development of SlenderSite is guided by certain principles, because one must have principles, especially in tech. But it’s not easy to talk about them. In fact the first version of this was a preachy rant.

For one thing: you don’t need half the Python ecosystem to run a text file through the markdown utility and stick the output into a template. That can be done with a few lines of shell script and Awk. (That would be a fun project to try later.) How much more can be done in only a thousand lines of PHP? Let’s find out!

Second: it’s been said that static site generators are made for programmers. Doesn’t mean they have to assume proficiency with Git, local web servers and continuous integration pipelines. SlenderSite should be just as useful to people who only want to get a bunch of files and upload them to Neocities using the web interface.

(That said, if you can code, more power to you! Another goal for it is to be hackable. The only required tool is a text editor, like in the old days.)

Third: maybe you’ve seen the kind of static site generators whose quick start guide begins with, “first, here’s how to make a template with loops and conditionals to display a blog homepage”. Then they go, “oh yeah, you’ll need a dozen more before your site is remotely usable”. There are premade themes available… but all of them are old and partially broken.

Y’all, that’s not helpful. There has to be a better way.