Just a little follow-up to the previous post. One feature I had in Sawfish that I hadn't yet got in StumpWM was a function to periodically change the wallpaper. You might say, hang on, if you're running applications fullscreen, what do you need a wallpaper for? Well, there are those brief moments when there are no apps open in a workspace. But more importantly, I use the terminal a lot (if nothing else, I always have IRC running over an SSH connection), and I generally use a terminal application with a transparency feature, showing my wallpaper in the background (tinted darker, of course, so that text is legible). A man can't live entirely without eye candy, after all. (rxvt-unicode is the current terminal of choice.)
For Sawfish I found a ready script on the website to change backgrounds. No such luck for StumpWM, so I decided to take a look at how hard it would be to implement it myself. It turned out to be very easy, just a few lines of Lisp code, although, again, I had to spend some time brushing up on my Lisp skills. A combination of Common Lisps features and functions built into StumpWM made it actually much simpler that the script for Sawfish, in the Librep dialect of Lisp.
There's a certain satisfaction you get from successfully) coding your own solutions that you can never get from installing ready apps or using graphical tools to configure your system. It's hard to describe in words.
With this hack I'm pretty much set up for regular, everyday use, with some very convenient shortcuts for switching between my favourite apps. Some more configuration might be needed to get the most out of multi-window applications like Gimp, but that can wait until the time I need such applications.