SQLite table constraints must be specified after all columns

Marking this one for future reference. TL;DR:  You have to specify all the columns in your table, in a CREATE TABLE statement, before you specify table constraints like primary or foreign keys. SQLite gives the most useless error messages most of the time.  Case in point: CREATE TABLE “Foo” ( “ColumnA” TEXT NOT NULL UNIQUE, “ColumnB”… Read more

Keyboard autocompletes

Apparently if you get bored enough you start just playing with the keyboards installed on your iPad.  Those that have the suggestion bar at the top can make some interesting ‘poetry’.  You just keep tapping in the same place, or in some simple pattern across the N suggestions.  Some are just bemusing drunk gibberish, but… Read more

Building John The Ripper Jumbo for macOS Sierra

It’s quickly apparent that John The Ripper Jumbo doesn’t build out of the box on macOS, and probably hasn’t for a long time, due to its complaint about missing OpenSSL headers. This guide was almost helpful, except it’s out of date – e.g. the Makefile.in patch it provides no longer applies cleanly – and simply doesn’t… Read more

Nikon SnapBridge

Finally. Nikon have released the SnapBridge app so that the much-touted Bluetooth+Wifi capability of the D500 can actually be used.  A mere eight months after it was announced.  Fuck you too Nikon. However, as I’d clearly forgotten, it’s not very useful anyway.  It doesn’t work with raws, you see.  Doesn’t even acknowledge that they’re in the… Read more

Photo gallery services

I recently needed to find a photo gallery service, as though I put my personal & favourite work on Flickr, I don’t necessarily want to mix in other photography I do, plus Flickr makes it irrationally difficult to control access to photos (specifically, to arbitrary people or groups thereof). I also wanted, ideally, something that… Read more

Silent data corruption

Alternate title:  Apple’s file system engineers are sadly naive. I was quite disappointed to see that APFS isn’t even trying to provide data integrity.  Data integrity is kind of step 0 of any file system, and checksums or use of ECC is pretty much standard in modern & leading-edge file systems.  APFS doesn’t want to… Read more