24 July 2025
Thinking Ahead on Projects
Well, the v0.7.0 milestone for Benben is now complete (the remaining empty boxes are just points I put on all milestones so that I remember to do those before release). There’s still a few more things to actually do for v0.7.0 before it’s ready to release, but they’re all minor loose ends. Things like “oh, I forgot to implement the –dump-config option”, which is trivial to do. Anyway, I expect to release Benben v0.7.0 this fall, probably October. That should give it a good solid two months of final testing. After that, the goal for Benben will be v1.0.0! 🎉 The concepts are obviously working and are mostly stable, the code has proven to be stable and fast, and the major stuff is now done. So I think it’s time to start looking at a 1.0 version.
Anyway, that’s just a quick update. Now for the real point of this post: what the heck am I doing to do after v0.7.0 comes out?
See, I usually take a break from Benben after a major version release so that I can work on other things. It gives me a metal break, and lets me keep my other side projects in working order. Last time I took one of these kinds of breaks I ended up creating my own system monitor called RemiMonitor. The goal was to replace multiple GKrellM instances (not tools like htop or btop) so that I could have a nice at-a-glance overview of my systems. It ain’t perfect (the UI can’t even handle more than five systems right now due to bugs lol), but it works well enough for my needs here at home.
But I don’t want to work on that right now :-P It’s just a personal toy program anyway.
I also have Aya, my Gemini server, which I kinda want to port from Crystal to Common Lisp. But it’s pretty much stable already, and it’s a very low-need program. Plus there doesn’t seem to be a lot of need to port it. So, I don’t really want to work on it this time around, either.
Instead, I want to work on something new. Here are the ideas I’ve come up with:
- XMPP library for Common Lisp and/or Crystal, mainly for writing clients. Yeah, I’m pretty sure some already exist, but I want to learn more about XMPP at a deeper level.
- Port a Matrix bot I use in my personal Matrix Space from Crystal to Common Lisp.
- Some sort of “service manager” for older init systems. Basically like some of
the newer init replacements, but one that’s designed to work in older BSD or
SysV-style init systems (like starting it from
/etc/rc.d/rc.local
on Slackware), and not become a bloated pile of festering, rotten horse manure and do things that an init system should never do in the first place. - Make my own X11 stacking window manager in Common Lisp. Preferably very similar to Sawfish.
- Learn how to do things with FUSE, then write something useful using it and Crystal. This implies FUSE bindings for Crystal.
- Weather/calendar PIM thing for a Raspberry Pi I have that’s connected to one of their touchscreens, and contained in a custom 3D-printed case I designed.
- Something like the Shards program that Crystal has, but for Common Lisp.
Currently I’m leaning towards the XMPP stuff or the service manager.