-- Leo's gemini proxy

-- Connecting to capsule.usebox.net:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini; charset=utf-8; lang=en

Picking the wrong technology


Posted Sat 1 May, 2021.


It has been a while since I released the latest version of SpaceBeans, my Gemini server that runs on the JVM. I'm very pleased with it, and it is serving this content to you currently.


I think at this point the server is stable, although I have a TODO list with a few things I would like to add at some point:


Investigate a close_notify issue with TLS. I don't have a lot of control on that, and looks like something in the stack is not sending the signal before closing the connection. Not fatal, but not good either.

Add some sort of CGI support, probably SCGI (simple, clean, and with good support).


I should also review the no so recent rewrite (reformat?) of the protocol spec to ensure that the service is still fully compliant. I'm tracking changes on GitLab, but there were a few changes at one point and I should confirm that the server doesn't need changes (although I've updated Lagrange since then and it doesn't have issues reading this capsule).


But in essence, the two pending points in my TODO are basically consequence of using Akka Streams to build the service. Yes, that was a great experience and I learnt a lot, but now I'm in an awkward position because both the close_notify issue and the SCGI support require me to go next level in my knowledge of the library, and I'm hitting a wall.


I guess is not the end of the world. I don't even know if anyone else is using this server (drop me an email, perhaps?). As I mentioned before, there are a good number of high quality Gemini servers out there, and in a lot of cases the "low-tech" spirit behind Gemini is probably not a good match with the JVM and its requirements. Even if the resulting service is rock solid and performs excellently, is that really that important?


So I don't know. I feel that perhaps I picked the wrong technology for me to build a Gemini server (to be clear: Akka and the JVM are great, is me that I don't have experience with Akka!). May be I'm over-thinking this and SpaceBeans is a happy experiment for me to use and have some experience with new tech (for me), and that TODO doesn't really matter.


Back to the index

Back home


-- Response ended

-- Page fetched on Fri Apr 26 08:21:30 2024