Below are the five most recent posts in my weblog. You can also see a chronological list of all posts, dating back to 1999.

This is the eighth part in a series of blog posts. The previous post was First successful Amiga disk-dumping session. The whole series is available here: Amiga.

The main goal of my Amiga project is to read the data from my old floppy disks. After a bit of hiatus (and after some gentle encouragement from friends at FOSDEM) I'm nearly done, 150/200 disks attempted so far. Ultimately I intend to get rid of the disks to free up space in my house, and probably the Amiga, too. In the meantime, what could I do with it?

Gotek floppy emulator balanced on the Amiga

Gotek floppy emulator balanced on the Amiga

The most immediately obvious things are to improve the housing of the emulated floppy disk. My Gotek adaptor is unceremoniously balanced on top of the case. Housing it within the A500 would be much neater. I might try to follow this guide which requires no case modifications and no 3D printed brackets, but instead of soldering new push-buttons, add a separate OLED display and rotary encoder (knob) in a separate housing, such as this 3D-printed wedge-shaped mount on Thingiverse. I do wonder if some kind of side-mounted solution might be better, so the top casing could be removed without having to re-route the wires each time.

3D printed OLED mount, from Amibay

3D printed OLED mount, from Amibay

Next would be improving the video output. My A520 video modulator developed problems that are most likely caused by leaking or blown capacitors. At the moment, I have a choice of B&W RF out, or using a 30 year old Philips CRT monitor. The latter is too big to comfortably fit on my main desk, and the blue channel has started to fail. Learning the skills to fix the A520 could be useful as the same could happen to the Amiga itself. Alternatively replacements are very cheap on the second hand market. Or I could look at a 3rd-party equivalent like the RGB4ALL. I have tried a direct, passive socket adaptor on the off-chance my LCD TV supported 15kHz, but alas, it appears it doesn't. This list of monitors known to support 15kHz is very short, so sourcing one is not likely to be easy or cheap. It's possible to buy sophisticated "Flicker Fixers/Scan Doublers" that enable the use of any external display, but they're neither cheap nor common.

My original "tank" Amiga mouse (pictured above) is developing problems with the left mouse button. Replacing the switch looks simple (in this Youtube video) but will require me to invest in a soldering iron, multimeter and related equipment (not necessarily a bad thing). It might be easier to buy a different, more comfortable old serial mouse.

Once those are out of the way, It might be interesting to explore aspects of the system that I didn't touch on as a child: how do you program the thing? I don't remember ever writing any Amiga BASIC, although I had several doomed attempts to use "game makers" like AMOS or SEUCK. What programming language were the commercial games written in? Pure assembly? The 68k is supposed to have a pleasant instruction set for this. Was there ever a practically useful C compiler for the Amiga? I never networked my Amiga. I never played around with music sampling or trackers.

There's something oddly satisfying about the idea of taking a 30 year old computer and making it into a useful machine in the modern era. I could consider more involved hardware upgrades. The Amiga enthusiast community is old and the fans are very passionate. I've discovered a lot of incredible enhancements that fans have built to enhanced their machines, right up to FPGA-powered CPU replacements that can run several times faster than the fastest original m68ks, and also offer digital video out, hundreds of MB of RAM, modern storage options, etc. To give an idea, check out Epsilon's Amiga Blog, which outlines some of the improvements they've made to their fleet of machines.

This is a deep rabbit hole, and I'm not sure I can afford the time (or the money!) to explore it at the moment. It will certainly not rise above my more pressing responsibilities. But we'll see how things go.


For Christmas, my great-great-grand-boss bought the Red Hat Newcastle office a 3D Printer1. I have next to no experience of designing or printing 3D objects, but I was keen to learn.

I thought a good way to both learn and mark my progress would be to create an initial, simple object; print it; refine the design and repeat the process, leaving me with a collection of objects that gradually increase in sophistication. I decided (not terribly originally, as it turns out) to model a little toy castle.

For the very first iteration, I wanted something very simple and abstract, in order to test the tooling. I installed OpenSCAD, which was already packaged for Debian. I was pleasantly surprise to learn that one defines objects in OpenSCAD via code. The language is a functional one that reminded me of building doom maps in WadC. Next, the object needs to be post-processed in a "Slicer", which converts a model specification into something that could structurally stand up (by adding lattices, temporary supports, etc.), sorts out scaling to real-world dimensions, terms of instructions that a 3D printer can follow (I think: precise head movement instructions, or similar). A colleague2 helped me with this part (Using Cura, I think)

The printed castle: four tall oblongs, joined by four shorter ones.

And here it is! Not much to look at. Let's see where I can take it.

  1. A Creality Ender 3
  2. Said colleague has printed some far more interesting—and useful— things, including smart card holders and little red fedora milk-toppers so we know which milk in the communal fridge belongs to us.

So as already implied I attended FOSDEM 2020, my second FOSDEM. The weather was nicer than last year and I was better prepared for trying to manage the conference, although a helpful analogy I heard this weekend was to think of it more like a festival than a conference: You go for one or two headliners and everything else is a bonus.

The business reason to be there was to attend (and help out the on-the-day running of) the Free Java dev room. We had the same room as last year, and just like last time, there were queues out the doors right from the first talk. The quality of the talks was very high. Of note was the presence of Microsoft, both with Nikola Grcevski's interesting talk about selectively stack-allocating some objects to reduce GC time and their contribution towards the Free Java dinner that evening.

I caught several other interesting talks outside the Java room but (inevitably) missed far more so I'm catching up on some of them as and when the videos appear. A couple of fun talks were about beeps and bloops in one form or another (Open Cubic Player, Just-in-Time Programming (live coding)). I was also drawn to a number of community management talks, ethics talks, etc.

The "Corridor Track" (and evening sessions) were great as usual. It was fantastic to catch up with some old Debian friends as well as meet some friends for the first time (including from the mumsnet-for-nerds private mailing list I somehow ended up on some years ago). This year several fellow PhD students from Newcastle attended. We saw out Brexit o' Clock at A La Mort Subite, my favourite Brussels pub, which I got to twice. It was a strange coincidence to be in the home of the European Parliament at the time my country is leaving it. Before arriving I wondered what the general attitude towards Brexit would be in Brussels, but it was indifference. I was happy to also get to The Sister Brussels Café which we discovered by accident last year and I've advocated for to anyone who will listen. Other folks who I met for the first time in-person (in sometimes extremely briefly) include Scott McCarty who I'm working with on a project in Red Hat (more on that soon), Michael Meeks (LibreOffice), Drew DeVault (aerc and sourcehut), Sam Hartman (Debian Project Leader), and more.

On the way home I managed to swing past the British Library / Turing Institute and meet my supervisor who by happy coincidence was visiting there at the time.

Hopefully I'll be there again next year!


This coming week is FOSDEM! If you're like me and find schedule planning easier with paper and highlighters, this might be useful.

FOSDEM provide a (30 page) schedule PDF for printing, but the printing order doesn't clearly show which tracks are in parallel.

By re-ordering the pages, inserting some blanks, scaling the pages down 50% and arranging 2 on each physical page, I ended up with this monstrosity:

printed and ready for the highlighters!

It looks like Sunday might need more tweaking…

So I remember how I did it for next time:

pdfjam --twoside -o fosdem_2020_a4_reordered.pdf --nup 1x2 a4.pdf \

edit, Sunday morning: I've just made a tweak to the end of the Sunday side to improve legibility.

And here it is. Enjoy!

Marcin Juszkiewicz wrote a very good blog post on how to survive FOSDEM.


Today on Lobsters I found a link to Kev Quirk's blog post How to self-host your web fonts. For the last nine years I've been using Google's font-hosting service, which whilst very convenient, carried some privacy concerns (which Joey Hess originally brought to my attention) and (it turns out) does not appear to have been faster, in network terms, than bundling what I was using locally. This is something I've been meaning to get around to doing for almost that long.


Older posts are available on the all posts page.