The ACCU Conference is one of the key events in my work year. It’s been an important part of my professional life for (counts on fingers, remembers when first child was born) nearly twenty years - for the things I’ve learned there, the conversations I’ve had, and the people I’ve met and who have become friends. I’ve had the privilege of giving sessions at the conference several times too - on countback I was surprised to discover it was eight times - and those occasions have been important for me too.
When this year’s Call for Papers opened, I didn’t know if I had anything to submit. This runs slightly counter to my conviction that everybody has something they can talk about, so I just left the knowledge that the Cfp was running to sit for a bit. One year, I didn’t even have an idea for a proposal until about ten minutes before the cutoff. Last year, something came to me during a Twitter conversation and Chris and I had nearly two hours to thrash out the details.
In truth, I did already have an idea but I was, frankly, extremely wary of having my name associated on the internet with the words blockchain and cryptocurrency. Eventually I resigned myself to it - I’m a big grown up boy, I can handle it - and submitted the following -
Since Bitcoin first rose to public awareness in the early 2010s,cryptocurrency enthusiasts have predicted a new world order. Central banks would fall away to be replaced with a consensus currency arising almost magically out of a worldwide network of independent computers, each transaction indelibly carved into the blockchain. The blockchain, immutable and permanent, stretching back in time to the genesis block, and growing, every few minutes, one block at a time, is, they say, the answer to all our economic ills.
And not just our economic ills: blockchains, perhaps running some kind of smart contract have been proposed as solutions for insurance markets, music distribution, land registries, voting, distributed file archiving, provenance of artworks and antiques, domain name resolution, human resources records, cross-border customs clearance, and more.
In this session, we’ll have a look at what a blockchain is - how they’re implemented, and why they can indeed claim to be immutable. We’ll examine different consensus mechanisms, and how they allow new blocks to be formed without a central authority. That will lead into an overview of transaction mechanisms, and smart contracts. We might even write and a deploy a little smart contract of our own.
Into Snake Oil
Alongside establishing a baseline understanding of what blockchains are, we’ll also be looking at why they’re terrible.
The distributed nature of public blockchains purports to allow us to trust data produced by unknown and, indeed, unknowable third parties. This may not be the case, and if it isn’t you might never know. Blockchains are permanent and immutable, but is this feature or misfeature? While the ideas behind blockchains are all frightfully clever, is a blockchain basically a database with slow reads, really slow writes, and generally awful data throughput? Are they, in fact, ill-suited for many of the applications they are pitched to solve? And if you thought multi-threaded programming was hard, that’s just peanuts compared to smart contracts. Maybe we’ll also get a bit existential and consider whether a blockchain can die, and what happens if it does.
After all that doom and gloom we’ll try to end on a small positive note, with a brief look at a project which I believe is a good fit for a blockchain solution, and which might even make the world a slightly better place.
If the conference committee smile on me, I’ll be in Bristol in April to present it. If not, I’ll be in Bristol in April anyway.
ARCHANGEL is a joint project involving University of Surrey, The National Archive, and The Open Data Institute, investigating how we might help ensure the long-term integrity of digital documents stored in public archives.
When an archive produces a physical artefact, its relatively easy to establish that it is indeed the original document, preserved unaltered since it was first deposited.
But a digital artefact?
A digital document can be infinitely copied without degradation, but can also be undetectably altered, inadvertently or deliberately, both with benign or malign intent.
How can we be confident that what we've presented with is, in fact, identical to the document that was first stored in archive?
ARCHANGEL is trying to address this problem, and in this talk I'll describe some of the approaches and technologies we're using.
Spoilers: Yes, it includes blockchains, but it's about the only blockchain application you'll hear of that doesn't immediately make you feel dirty. It might also include machine learning, but it's machine learning for justice.
I presented this session, which features a primer on archival practice, a bluffer's guide to blockchains, and a brief introduction to machine learning, last night at Nor(Dev), and I think it went pretty well. I certainly enjoyed presenting it. It was a pleasure to be there as the opening act for my friend Russel, who spoke about Me-TV, an honest to god broadcast TV client, and his journey picking up what was a dead project written in C and using the Xine video player to its current incarnation written in Rust using GStreamer. It was really good and even though Russel only showed a small amount of Rust code, it made me think about it very differently to the various introductions to that I've read. Real code always wins over toy examples.
ARCHANGEL: Trusted Archives of Digital Public Documents - Paper presented at ACM Document Engineering 2018.
Looking for Life on a Flat Earth - The astonishing New Yorker article I mention at the start of the talk
In the course of what I laughingly call my career I’ve written many thousands of 'work words'. Not just the day-to-day emails or in whatever this year’s favourite chat messenger is, but formal 'documents' too. Design documents, the odd bit of policy, API descriptions, integration guides, all that kind of stuff. It’s all been for internal use, not for public consumption.
Well, the world is changing in so many ways, and somehow I managed to get my name on two articles, for two different clients, published on their respective websites two days apart.
As part of our work on the ARCHANGEL project, we - The ODI - have been looking at how blockchain technology could have a place in ensuring that our public archives are trusted, unaltered, and auditable. It’s a really interesting and, given the times we live in, potentially very important question.
In truth this article was written by my colleague Jared and my input was largely advisory, but I’m grateful to him for putting my name on it too. Technical Associate! Get me!
A great deal of the work we - West Midlands Fire Service - is built on Tymly, our state machine engine. Tymly’s state machines are defined using the Amazon State Language, and as we write more and more state machines, and they’re getting increasingly complex we thought, maybe, some validation might be useful. This little blog post introduces a couple of tools, why we ported them from Amazon’s own validation tools, and how the open source nature of what we and they are doing helped us all. It’s a bit of puff piece and I should probably write about that work in a bit more detail. There’s some untapped potential in some of the code I ported, I think.
I’m lucky to be working on both these. They’re interesting things to get stuck into, the people I work with are lovely, and the results will, hopefully, make the world a better place. You don’t always get to say that.
You don't have to read all the tweets in your Twitter feed.
It's alright to skip a few podcasts.
If there's a book you're reading and it's just not appealing, it doesn't matter if you put it down and never open it again.
When Netflix says thirty seconds before before it starts the next episode, it's asking a question not give an order.
I'm 4823/24ths you know.
Prompted by my friends at Beware of the Leopard, I've recently reread The Hitchhiker's Guide To The Galaxy. I am, as you'll have noted, of that age where the Hitchhiker's Guide has been, pretty much, part of my entire life. I was first introduced to it by the television series, at my Dad's prompting I think, then read the book, then the subsequent books as they were published. Someone at school had tapes of the radio series, and they were passed around samizdat style. Of course as a 12 year old growing up in the middle of Norfolk all the jokes about council bureaucracy, getting drunk, and struggling to find one's place in the world completely passed me by, but I could recognise that it was funny. It clearly had jokes in it, I just didn't get them. Obviously I would never have admitted that because, at school, we all thought we were frightfully cool and clever for knowing about The Hitchhiker's Guide. It was our thing (replacing our previous thing, Not The Nine O'Clock News, until it was in turn replaced as our thing by The Black Adder). The fact it was on TV and you could walk into a bookshop and pick a copy up off the shelves in no way flagged to us that millions of other people were also enjoying it too.
As I've revisited the Guide, in its manifest forms, over the years, it's become progressively funnier and bleaker. Whether this is because I recognise the world is as Adams described it, or that the world has becomes more Adamsian, well, there's a PhD in there somewhere (which, once written, we'd get a computer to read for us because we're too busy doing something else). By some coincidence (although of course in an infinite universe the probably of anything happening rapidly approaches 1), the radio series is currently being repeated, so I've taken the opportunity to listen again. It was reasonably fresh in my mind, as I last listened to it maybe only three years ago, sharing headphones with Harry (who was then pretty much exactly the age I was when I first heard it) on long slow train trip home back from Fishguard, but even so I was completely caught out by the ending of the first series. You know the drill, Arthur and Ford, stuck on the prehistoric Earth with the B Arc Golgafrinchams, trying to teach the Neanderthals Scrabble. It's pretty downbeat, but this time round, I found the pathetic futility of it all really quite crushing. I was out walking my dogs at the time, and I just burst into tears in the street.
So, yea, thanks guys.