We have had a truly amazing week. We know this might seem hard to believe. But on this one, trust us. Quite amazing.
For the past we’ve-forgotten-how-long, our team of crack librarians and computational experts have been planning and plotting to switch our procedure model from one based on route types to one based on the purest of pure logic. From the very earliest days of the Statutory Instrument service we’ve imagined web pages that show not only what has happened and what is scheduled to happen but also extend a light cone into the future, to show what is likely to happen and what might possibly happen next. Which is why we took to modelling procedure in the first place. And why we didn’t create yet another link hub. Whilst the old route based model took us part of the way down this road, it did not and could not allow us to describe logical combinations of the kind one finds in legislation and standing orders. The kind of logic that says if ( ( this OR this has happened ) AND this ) AND NOT that, then this is something that should happen next.
In order to make the switch, Librarian Jayne and computational ‘expert’ Michael have spent the last little while remapping procedures. Jianhan, meanwhile, has been beavering away fixing the plumbing to support the new model. With both maps and plumbing in place we entered the new procedure data, dragged work package data out of the live database, and the moment of truth arrived. Could we visualise a work package subject to a procedure and show not only what has happened and what is scheduled to happen, but also indicate what should happen next and what might possibly happen next?
To that end Jianhan has been pouring his considerable intellect into how we might parse a procedure map in the context of a work package, ably assisted by young Robert and Michael who were, by this stage, on their second iteration of some pseudocode. Luckily - as it turned out - Jianhan missed a line in the design notes around the behaviour of a unactualised business step. Which led to an early evening call with Michael to check why the maps weren’t working. This was all diagnosed and fixed within a minute. And had the delightful side effect of placing Michael in a ringside seat as Jianhan pressed the refresh button and the whole thing actually worked. Quite a moment. Quite a moment indeed. Michael is still wiping tears from his eyes.
Shortly thereafter Anya and Michael were to be found on one of their occasional smoking breaks. Anya pointed out that there was a difference between something not being allowed to happen yet and something not being allowed to happen now. Which is exactly the kind of hair she likes to split. An example of the former might be, you can’t put the question on a motion that has not yet been tabled. An example of the latter being you cannot certify under English Votes for English Laws because the standing orders governing that are currently suspended. At this point Michael turns to an analogy of an island with one bridge. It is of little interest that the roads on the island are open if you’re on the mainland and the bridge is shut. Islands and their bridges being a new requirement, on Thursday Robert and Michael sat down to rewrite pseudocode and on Friday they rewrote their accompanying design notes, as Jianhan ploughed on with the real work of making their scribblings work in code. He’s now battling with a new route state of UNTRAVERSIBLE to capture both closed roads and open roads on the far side of a closed bridge. Robert and Michael retired with broken heads. Everyone hopes that Anya is happy.
Back in the engine room, Jayne and Michael continued their mission to remap the made negative SI procedure to something more logical. Their time this week has been mostly dedicated to checking last week’s work. Drawing the maps is challenging and, dare we say it, mentally stimulating. Checking them is not. Not at all. Back when we were younger and less tired, we agreed a rule to not sign off on checking until a full and clean pass is made. A rule Jayne and Michael have come to regret. On Monday, Jianhan’s step checker script flagged nine errors. By Wednesday they were down to two errors, and had fixed them both. Thursday saw the final check and both hand drawn and machine generated maps appeared to be in agreement. Thank god. One more day and joyless tears would have been inevitable. Anyway, they made it through. The machines have checked our work and we have checked theirs. We still think our version is more attractive and has a better lay out, but the machine drawn one is also pretty impressive. Pretty impressive.
On Wednesday, when the team ought to have been tucking into lunch, they were instead dialling in to yet another pixel based meeting. Luckily though this one was with JO Jane. So Anya, Jayne, Robert and Michael had no cause for complaint. In the first five minutes they covered a dab of special relativity, a dash of quantum mechanics, a spot of collapsing probability spaces and a touch of the light cone of future potential. ‘Futurologists’ may well categorise potential into the preferable, the projected, the probable, the possible, the plausible and the downright preposterous. And it’s also possible - or at least plausible - that the House of Lords would benefit from a more nuanced taxonomy.
Alternative futures dispensed with, those assembled proceeded to get down to business with a most useful conversation about procedural steps that on the one hand might be considered redundant when seen through the rear view mirror, but on the other might be valuable waymarkers if your eyes are pointed through the windscreen. The conversation arose as Jayne and Michael wished to rename committee steps currently described as ‘decisions’, to the less confusing ‘considerations’. Jane was unbothered either way but does wish to see steps that add noise removed from the website. We’re hoping this will be partly resolved by a request to our colleagues in Software Engineering to display business items having a single URL grouped into a single card. But there will always be a more granular flavour of data we wish to collect for querying purposes that Jane does not wish to see on the website. The reporting criteria of the Joint Committee on Statutory Instruments set out in House of Lords public Standing Order 73 being a good case in point.
The upshot of all this was a request from Jane to finally put the key step part of the procedure model into practice. A thing we hope to do once the migration to logic gates is complete. Hopefully turning Member action steps and procedure concluding steps from cards into code whilst we’re on the job. Once we have key steps we’ll be able to say, ‘this step is key in this procedure’. And ‘this other one is not’. And the website will have the option to display some of it. Or all of it.
Within minutes of emerging from the JO Jane meeting, Librarian Jayne once more had her face buried in maps and data as committee decision steps became committee consideration steps everywhere.
In other nomenclature news, David had pointed out that our use of the word ‘suspension’ when dealing with House of Lords standing order 73 was not in fact correct. And that suspension should only be used when a standing order is suspended for all business for a period. And not when it’s put aside for a single instrument. Jayne mailed Jane to check she was happy with changing ‘suspended’ to ‘dispensed with’. Which she was. So that also is done.
This was the week that the International Agreements Committee finally grew up, moved out and got a place of their own. At some point on Wednesday, Librarian Claire spotted a motion on the House of Lords order paper to turn what had been a sub-committee into a fully fledged Select Committee. Which meant Jayne and Michael once more hit data and map, adding new steps to cover calls for evidence, inquiries being opened, consideration happening, reports being reported and any Government response that might happen in reaction to that. As well as closing off a couple of bridges to the committee’s earlier incarnation. All of which is now inside the machines.
By Friday, the committee had issued its first report, links had been added to the treaty tracker, and - get this - Jayne had written a new SPARQL query to return reports by the IAC during the past week. If you’re a treaty minded kinda person, this is definitely worth a bookmark. Top, top work Jayne.
And whilst we’re on the subject of SPARQL, Jayne has finished adding comments to our sparkling library of SPARQL queries. So if you’re less than familiar with the syntax, you should still be able to take a query, adjust it accordingly and return something sensible. If there’s a query you’d like to see but you’re not quite sure how to approach it, do get in touch.
Jayne has helpfully idiot checked Robert and Michael’s comments on our shiny new standing order model. Thanks Jayne. If you’re a person with an interest in standing orders, you may be in receipt of an email sometime soon.
Education continued as ever as Anya and Michael barged their way into a Hansard at Huddersfield seminar. More excitingly still, Anya and Phil were lucky enough to get paid to attend the first in their series of Wikidata themed lectures. They were even given homework. Which is one thing to do of a locked down evening.