Getting going with Gemini

I’ve been really interested in Gemini space for about a year now, having read the protocol and used a few web proxies to explore Gemini space

I finally gone whole hog and downloaded a Gemini browser, Lagrange on my home computer in order to explore Gemini space better, faster and using the experience the actual Gemini users get. (Kudos to Lagrange for being a browser written in C which actually compiled first time when I wanted to make a small change!)

Gemini has been great!  

It’s incredible to find all these people publishing content on the internet which is totally invisible to the web. It’s been said many times before but it really does feel like the early days of blogging, where people are exploring the new formats, new types of engagement and ways of browsing, editing, uploading and exploring each other’s content.

The limitations of the format (no styles!) means there are some really interesting pieces of functionality in the client, like auto-selecting a colour palette based on the domain name, or adding in-page references or tables of contents as part of the native browser, rather than through a plugin. This works especially well in Gemini because there is no server-side layout to consider, so the browser is free to use the full width of its window to provide affordances in a consistent way across multiple sites.

Another of the really interesting aspects is Titan. This is an extension to the Gemini protocol which allows for editing and uploading of content in Gemini space, in a way much more similar to the original envisioning of the read/write web by Tim Berners-Lee back in the 90s. A good example of this is through using the Phoebe wiki software.

And so the question remains what best to do to join in with this fun?

Well, it turns out that it’s absolutely trivial to run a Gemini server on a Raspberry Pi, of which I have many in a box, and so I chose agate (download binary, execute binary), created some pages, added some firewall rules and lo! up and running!

So, plenty of playing to do now and to see if I can use some conversion tools (and editing discipline) to multi post both to here and its Gemini equivalent. Exciting!

When my bins go out

I had to write some PHP to tell me when to put out my bins because my council doesn’t follow their own rules for collections.

Every week my council organises the collection of our 5 bins – but there is a pattern to how they are collected.

This is a pretty simple pattern, with 3 of the bins going out every week and the two largest (general waste and garden waste) alternating each week.

Except that it’s not. 

What actually happens is that for the first three months the garden waste is collected in the first week and then for the second three months the black bins are collected first, and so on. Mostly this works out fine and it looks like the collections simply alternate each week. But August 2023 (which is in the middle of the third quarter of the year) had 5 weeks, meaning there should have been two weeks in a row where the general waste was not collected, and the garden waste was collected. This did not happen.

This means that the document they provide residents with dates of collections is now wrong. The PDF with this info is also wrong. The way to find out what’s being collected is to use their website. The website does everything using ajax and does not push state to the URL, and so the page with your individual information on it is not bookmarkable. This is annoying.

Luckily, watching the network requests revealed a very simple JSON file that covers the bin collection timing of my area and thus I could extract it trivially to provide the useful service that neither the council leaflet nor website provide.