Two weeks ago, I built a search engine which only searches over a list of RSS feeds you expressedly give it. If you regularly read ten blogs, you can add those ten to the engine, and then search for stuff in them. I called it OpenOrb↗ - if you click on that link, you’ll be able to use my own instance. RSS feed readers can usually do this sort of...
Raphael Kabo's personal website and writing on programming, poetry, and academia.
Last month I picked up the Pimoroni Plasma Stick↗, which is essentially an RP2040-powered Raspberry Pi Pico bolted onto a terminal block and a Qwiic/STEMMA QT connector, to make it easier to connect WS2812/NeoPixel-style individually addressable RGB(W) LED light strips. That’s a lot of terminology! Once the Plasma Stick arrived in the mail, I...
Raphael Kabo's personal website and writing on programming, poetry, and academia.
Today I decided to finally try out Astro↗, a Javascript framework for building websites, by trialling it on my homepage. Suffice to say I liked it so much, and it was so easy to get to grips with, that this site is now built using Astro.1 I was previously less interested in Astro because I thought it was mostly a tool for building websites using...
When I lived in Australia, the local council would send us a little calendar a few times a year with all the bin collection dates listed on it. It had a magnet on the back, so you could stick it on the fridge. I think it also included some cheery information about how much the local MP was doing and why we should absolutely vote for them in the...
I’m setting up another PC with the delightful Void Linux↗ (my third so far!), and I decided I wanted to set this one up with Sway WM↗, a Wayland-based window manager. This is my first time using Wayland (I have, if anything, been over-cautious), and it’s been a real breeze so far. Despite what look like early teething problems with Sway on Void,...
I wanted to write a little guide, mostly for my own future use, to describe how I set up Wireguard on my home sever. Hopefully this will be of use to someone else! Why Wireguard? I run a home server (an old, reliable, much-battered HP Proliant called Ottoline). It runs a few public-facing websites in Docker containers, like a library of plants in...
I logged on to my computer on Monday this week and ran startx as usual, but Xserver crashed, complaining that it couldn’t write to /tmp. At first I thought there was an odd permissions issue or some problem with .Xinitrc, but it turns out after running some exploratory du -h commands that my root partition was completely full. The culprit turned...
I got my Raspberry Pi Pico↗ today (it’s now part of our mandatory lockdown ration, right?), and immediately tried to do something vaguely undocumnented with it - namely, run one of those generic HD44780 LCD displays. Mine was a lovely Adafruit one via Pimoroni↗; thanks for taking all my money Pimoroni! Suckers, what they don’t know is that I’m...
Nothing fancy, but I got bored of typing out both directories when I was mounting or unmounting my gocryptfs filesystem. This script creates a mount folder, mounts to it, and opens it in Thunar. When you unmount, it also deletes that directory if it’s empty. Neat, and makes me happy. #! /bin/bash # cryptmount v1.0.0 # mv this script to...
Over the last year, I’ve been really enjoying learning React, and I’ve recently used all the fun new skills I’ve learned to code two online card games, both about imagining and exploring utopian spaces and communities, but in very different ways. Both started life as physical games, but have become virtual because of the Covid-19 lockdown. Loving...
Recently, I decided to learn everyone’s new favourite programming language, Rust↗. I really, really enjoy Rust, mostly because learning it has made me realise that our human brains must do a vast amount of hiding the compile-time errors of our thoughts from us. My problem was that I am by no means a patient or an exacting coder. I had a brief...
Recently, I booted up Mini vMac, an emulator for classic Macintosh computers from the 1980s, and set up System 7 with Microsoft Word 5.1a, running on a Macintosh Plus. This replicates the first computer I ever used, a retired Macintosh Plus from mum’s office. My parents inexplicably set it up in the laundry, and I spent a lot of time writing...
I recently experienced a headache when I was trying to make a very, very small zine. Zines are great, and small zines are even better - especially for sharing academic research. People love small things; they’re memorable; and the small format forces you to really think hard and critically about the most important things you want to say to an...
In a previous post↗, I elaborated a complex solution to a problem I was encountering while writing my PhD (which, by the way, I’m still writing - isn’t procrastination swell?). I wanted to write in Markdown in the amazing MacOS text editor Ulysses↗, using citation keys automatically generated by Zotero↗ for my footnotes and bibliography. But I...
I’ve recently moved my webserver to Caddy↗, a fantastic modern webserver which is very user-friendly, with a helpful support community, and most importantly, effortless HTTPS on every site through the good folks at Let’s Encrypt↗. The one issue I had with Caddy was running a Wordpress blog which was located on a subdirectory...
Images, and image captions, are always a problem in Markdown. Not only is there no real way to semantically signify images using a text-only format, but it’s never really obvious how to tie image captions to the images to which they belong. This Stack Overflow post↗ demonstrates the simplest way to display image captions on a Jekyll site or blog...
I’ve just moved this site to Jekyll↗, which is the first time I’ve played around with it properly, and I’m very happy with how easy and logical it has been to use. Thanks, Jekyll. I keep my Jekyll sites in a folder on my Macbook, and have written this very simple bash script to build and upload any updates to my server. It’s a little different to...
Real nerds roll dice from the command line, so I made a command line die roller. It’s very basic and doesn’t have good error checking, but it’s the first proper thing I’ve ever written in Python. It’s heavily adapted from this script↗, but I’ve added the ability to repeat a roll multiple times (while losing the ability to roll multiple sets of...
Raphael Kabo's personal website and writing on programming, poetry, and academia.