Three mason jars, full of fermenting things. Two Bánh Mì(ish) and one eggs.
Figure 1. Three mason jars, full of fermenting vegetables. Two Bánh Mì(ish) and one eggs.

I’ve been fermenting vegetables of various kinds (and occasionally other things) at home for a little over two years. It’s a fun, interesting & nutritious hobby. On the whole it’s pretty easy and low stakes – the worst thing that happens is a few cucumbers go mouldy.

Because it doesn’t involve any heat – but does include pouring, measuring, stirring, spiralizing, grating (and some chopping) – it’s ideal to do with little kids.

According to my notes (which I didn’t start initially), I’ve made ~56 batches of ferments, batches ranging in size from one 1l mason jar, to three 2l ones.

Lessons so far

The difference between science & screwing around, is writing it down
As they say, the difference between science …

Read More

Sometimes I want to resolve several promises at once, then do something when they’re all done. For example, make several API calls, then do something with all the results.

Read More

My new favourite thing in JS is Nullish coalescing:

The nullish coalescing operator (??) is a logical operator that returns its right-hand side operand when its left-hand side operand is null or undefined, and otherwise returns its left-hand side operand.

return this.thing1 ?? this.thing2 ?? 'default'

Also works well with the Optional Chaining Operator, which is also great - not more “Uncaught TypeError: Cannot read property ‘thing1’ of undefined”:

return this?.things.?.thing1 ?? this?.things?.['thing2'] ?? 'default'

This is like logical or - || - but instead of testing for truthy & falsy, it tests for nullish - which is often what you want.

Nullish all the things!


Read More

Time for another update on the Retro Gaming project. It’s been roughly a month since the last update and we’ve been playing a bit more often this time.

Favourite Games So Far

Roughly in order of playtime:

Gauntlet is far and away the kids favourite game so far. Almost nothing else got a look in since I put it on. Even Super Mario Bros is a pretty distant second place, and the other games have barely been played at all.

I think there are two reasons for this. Firstly, Gauntlet is a 4 player co-operative game. So far we’ve only played with two players, but even then, co-op games are just really fun. I think the other reason is that Gauntlet is an arcade game and Super Mario Bros isn’t …

Read More

Time for an update on the Retro Gaming project. It’s been almost four months since we started and it’s been, predictably, lots of fun. What with work and school and everything else, we have very little time for playing computer games. That, combined with a fairly dry winter & spring letting us get outside more, means that even with the Covid-19 pandemic curtailing activities, we haven’t clocked very many hours of playtime.

Favourite Games So Far

Roughly in order of playtime:

In the end, we didn’t actually play any ZX Spectrum or C64 games at all, sadly. I played a lot of these when I was a kid, so I was secretly disappointed …

Read More
Figure 1. Asciidoc.

I’ve been using reStructuredText for writing on this blog, because it has lots of built-in features that markdown doesn’t.

However, reStructuredText’s actual syntax is a bit…​ fiddly - particularly its non-atx headings, too many things relying on lining up white space, etc…​ If I don’t use it for a bit, I have to look up or copy & paste all the advanced syntax.

I’d prefer to use AsciiDoc, as it has all the extra features, and if you use Asciidoctor, all the simple stuff is the same as markdown - which isn’t (currently) standard AsciiDoc, but is a nice simplification.

The subset of features from reStructuredText (or Asciidoc) that Markdown doesn’t have – and that I’m actually using on this blog, are:

  • Figure/Images with captions
  • Admonitions
  • Front-matter/Metadata
  • Footnotes

Read More
Galaxians vector
Figure 1. Galaxians.

As a family gift for Christmas 2020, I set up a Raspberry Pi 400 with Retropie. The plan is to load a selection of the “best of the best” games from computer game history, starting with games up to, roughly, 1985.

The kid doesn’t really know any better, so we can play Space Invaders unsullied by time and expectations and enjoy a speedrun through gaming history, playing just the highlights.

I’ll add more games as we go along, progressing through gaming history, one classic game at a time.

Read More

This is a rather loose adaptation of a traditional Vietnamese recipe, which you can google for lots of variations.

If you can’t get daikon radish, you just whatever radish you can get.

Basic Brine

  • 45g salt per litre of water
  • Mix to dissolve

Important to measure carefully. This is the brine I use for everything, unless I find a recipe that has a good reason for using something different.


  • 1/2 Daikon Radish (650g)
  • 4 carrots (650g)
  • 85g ginger
  • 1 jalapeno/green/red chili (to taste)
  • Basic Brine to cover


Makes about 1 large jar.

  1. Lightly wash/rinse all veg, but leave skin on everything, including Ginger.
  2. Grated or spiralize about equal amounts of daikon radish & carrots.
  3. Grate Ginger with skin on, cut chili in half. If spiralized, roughly chop with scissors, so strands are not too …

Read More