Bus Station, Unbound

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Back in February my friend Katie shared with me an already four-year-old piece of interactive fiction, Bus Station: Unbound, that I’d somehow managed to miss the first time around. In the five months since then I’ve periodically revisited and played through it and finally gotten around to writing a review:

All of the haunting majesty of its subject, and a must-read-thrice plot

Perhaps it helps to be as intimately familiar with Preston Bus Station – in many ways, the subject of the piece – as the protagonist. This work lovingly and faithfully depicts the space and the architecture in a way that’s hauntingly familiar to anybody who knows it personally: right down to the shape of the rubberised tiles near the phone booths, the forbidding shadows of the underpass, and the buildings that can be surveyed from its roof.

But even without such a deep recognition of the space… which, ultimately, soon comes to diverge from reality and take on a different – darker, otherworldly – feel… there’s a magic to the writing of this story. The reader is teased with just enough backstory to provide a compelling narrative without breaking the first-person illusion. No matter how many times you play (and I’ve played quite a few!), you’ll be left with a hole of unanswered questions, and you’ll need to be comfortable with that to get the most out of the story, but that in itself is an important part of the adventure. This is a story of a young person who doesn’t – who can’t – know everything that they need to bring them comfort in the (literally and figuratively) cold and disquieting world that surrounds them, and it’s a world that’s presented with a touching and tragic beauty.

Through multiple playthroughs – or rewinds, which it took me a while to notice were an option! – you’ll find yourself teased with more and more of the story. There are a few frankly-unfair moments where an unsatisfactory ending comes with little or no warning, and a handful of places where it feels like your choices are insignificant to the story, but these are few and far between. Altogether this is among the better pieces of hypertext fiction I’ve enjoyed, and I’d recommend that you give it a try (even if you don’t share the love-hate relationship with Preston Bus Station that is so common among those who spent much of their youth sitting in it).

It’s no secret that I spent a significant proportion of my youth waiting for or changing buses at (the remarkable) Preston Bus Station, and that doubtless biases my enjoyment of this game by tingeing it with nostalgia. But I maintain that it’s a well-written piece of hypertext interactive fiction with a rich, developed world. You can play it starting from here, and you should. It looks like the story’s accompanying images died somewhere along the way, but you can flick through them all here and get a feel for the shadowy, brutalist, imposing place.

Browsers are pretty good at loading pages, it turns out

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The <a> tag is one of the most important building blocks of the Internet. It lets you create a hyperlink: a piece of text, usually colored blue, that you can use to go to a new page. When you click on a hyperlink, your web browser downloads the new page from the server and displays it on the screen. Most web browsers also store the pages you previously visited so you can quickly go back to them. The best part is, the <a> tag gives you all of that behavior for free! Just tell the browser where you want to go, and it handles the rest.

Lately, though, that hasn’t been enough for website developers. The new fad is “client-side navigation”, where instead of relying on the browser to load new pages for you, you write a bunch of JavaScript code to do it instead. It’s actually really hard to get it right—loading the new page is simple enough, but you also have to write code to display a loading bar, make the Back and Forward buttons work, show an error page if the connection drops, and so on.

For a while, I didn’t understand why anyone did this. Was it just silly make-work, like how every social network redesigns their website every couple years for no discernable reason? Do <a> tags interfere with some creepy ad-tracking technique? Was there some really complicated technical reason why you shouldn’t use them?

Spoiler: good old-fashioned <a> hyperlinks tend to outperform Javascript-driven client-side navigation. We already learned about one reason for this – that adding more Javascript code just to get back what the browser gives you for free increases the payload you deliver to the user – but Carter demonstrates that progressive rendering goes a long way to explaining it, too. You see: browsers understand traditional navigation and are well-equipped with a suite of shortcuts to help them optimise for it. They can start rendering content before it’s all downloaded, offset (hinted-at) asynchronous data for later, and of course they already contain a pretty solid caching engine and you don’t even have to implement it yourself.

How the Knights Hospitaller ‘accidentally’ became a major European air power

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Sod Pepsi’s navy.

Let’s talk about the point after WW2 where the Knights Hospitaller, of medieval crusading fame, ‘accidentally’ became a major European air power.

I shitteth ye not. ?️?️

So, if I asked you to imagine the Knights Hospitaller you probably picture:

1) Angry Christians on armoured horses
2) Them being wiped out long ago like the Templars.
3) Some Dan Brown bullshit

And you would be (mostly) wrong about all three. Which is sort of how this happened.

From the beginning (1113 or so), the Hospitallers were never quite as committed to the angry, horsey thing as the Templars. They had always (ostensibly) been more about protecting pilgrims and healthcare.

They also quite liked boats. Which were useful for both.

Over the next 150 years (or so), as the Christian grip on the Holy Lands waned, both military orders got more involved in their other hobbies – banking for the Templars, mucking around in boats for the Hospitaller.
This proved to be a surprisingly wise decision on the Hospitaller part. By 1290ish, both Orders were homeless and weakened.

As the Templars fatally discovered, being weak AND having the King of France owe you money is a bad combo.

Being a useful NAVY, however, wins you friends.

And this is why your first vision of the Hospitallers is wrong. Because they spent the next 500 YEARS, backed by France and Spain, as one of the most powerful naval forces in the Mediterranean, blocking efforts by the Ottomans to expand westwards by sea.
To give you an idea of the trouble they caused: in 1480 Mehmet II sent 70,000 men (against the Knights 4000) to try and boot them out of Rhodes. He failed.

Suleiman the Magnificent FINALLY managed it in 1522 with 200,000 men. But even he had to agree to let the survivors leave.

The surviving Hospitallers hopped on their ships (again) and sailed away. After some vigorous lobbying, in 1530 the King of Spain agreed to rent them Malta, in return for a single maltese falcon every year.

Because that’s how good rents were pre-housing crisis in Europe.

The Knights turned Malta into ANOTHER fortified island. For the next 200 years ‘the Pope’s own navy’ waged a war of piracy, slavery and (occasionally) pitched sea battles against the Ottomans.
From Malta, they blocked Ottoman strategic access to the western med. A point that was not lost on the Ottomans, who sent 40,000 men to try and take the island in 1565 – the ‘Great Siege of Malta’.

The Knights, fighting almost to the last man, held out and won.

Now the important thing here is the CONTINUED EXISTENCE AS A SOVEREIGN STATE of the Knights Hospitaller. They held Malta right up until 1798, when Napoleon finally managed to boot them out on his way to Egypt.

(Partly because the French contingent of the Knights swapped sides)

The British turned up about three months later and the French were sent packing, but, well, It was the British so:

THE KNIGHTS: Can we have our strategically important island back please?
THE BRITISH: What island?
THE KNIGHT: That island
THE BRITISH: Nope. Can’t see an island

After the Napoleonic wars no one really wanted to bring up the whole Malta thing with the British (the Putin’s Russia of the era) so the European powers fudged it. They said the Knights were still a sovereign state and they tried to sort them out with a new country. But never did
The Russian Emperor let them hang out in St Petersburg for a while, but that was awkward (Catholicism vs Orthodox). Then the Swedes were persuaded to offer them Gotland.

But every offer was conditional on the Knights dropping their claim to Malta. Which they REFUSED to do.

~ wobbly lines ~

It’s the 1900s. The Knights are still a stateless state complaining about Malta. What that means legally is a can of worms NO ONE wants to open in international law but they’ve also rediscovered their original mission (healthcare) so everyone kinda ignores them

The Knights become a pseudo-Red Cross organisation. In WW1 they run ambulance trains and have medical battalions, loosely affiliated with the Italian army (still do). In WW2 they do it too.

Italy surrenders. The allies move on then…

Oh dear.

Who wrote this peace deal again?

It turns out the Treaty of Peace with Italy should go FIRMLY into the category of ‘things that seemed a good idea at the time’.

This is because it presupposes that relations between the west and the Soviets will be good, and so limits Italy’s MILITARY.

This is a problem.

Because as the early Cold War ramps up, the US needs to build up its Euro allies ASAP.

But the treaty limits the Italians to 400 airframes, and bans them from owning ANYTHING that might be a bomber.

This can be changed, but not QUICKLY.

Then someone remembers about the Knights

The Knights might not have any GEOGRAPHY, but because everyone avoided dealing with the tricky international law problem it can be argued – with a straight face – that they are still TECHNICALLY A EUROPEAN SOVEREIGN STATE.

And they’re not bound by the WW2 peace treaty.

Italy (with US/UK/French blessing) approaches the Knights and explains the problem.

The Knights reasonably point out that they’re not in the business of fighting wars anymore, but anything that could be called a SUPPORT aircraft is another matter.

So, in the aftermath of WW2, this is the ballet that happens:

The Italians transfer all of their support and training aircraft to the Knights.

This then frees up the ‘cap room’ to allow the US to boost Italy’s warfighting ability WITHOUT breaking the WW2 peace treaty.

This is why, in the late forties/fifties, a good chunk of the ‘Italian’ air force is flying with a Maltese Cross Roundel.

Because they were not TECHNICALLY Italian. They were the air force of the Sovereign Military Order of Malta.

And that’s how the Knights Hospitaller ended up becoming a major air power.

Eventually the treaties were reworked, and everything was quietly transferred back. I suspect it’s a reason why the sovereign status of the Knights remains unchallenged still today though.

And that’s why today, even thought they are now fully committed to the Red-Cross-esque stuff, they can still issue passports, are a permanent observer at the UN, have a currency…

..,and even have a tiny bit of Malta back.

Darkroom Printing

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

One of the benefits of being in a camera club full of largely retired people who were all into photography long before digital was ever a thing, is that lots of them have old film, paper and gear lying around they’re happy to give away.

Last year I was offered a photographic enlarger for making prints, but I initially turned it down because I didn’t think I’d have the space to set up a darkroom and use it. Well, turns out with a little imagination our windowless bathroom actually converts into a pretty tidy darkroom with fairly minimal setup and teardown – thankfully we also have an ensuite so my partner can cope with this arrangement with only minimal grumbling

My friend Rory tells the story of how he set up a darkroom in his (spare) windowless bathroom and shares his experience of becoming an increasingly analogue photographer in an increasingly almost-completely digital world.

JavaScript frameworks are better for accessibility (and other myths)

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The other day, I saw someone on Twitter say (I’m not linking to the original tweet because I don’t want to pile-on the author):

I don’t bother with frameworks, I just use vanilla JS.

Roughly translated:

I’m smarter than the thousands of people who tried to solve the problems I’m about to solve. I’m an expert on security, a11y, browser support, and perf. I don’t care about ROI, I just want to code.

Here’s the thing: frameworks don’t really help you with this stuff.

Earlier this year, WebAIM conducted a survey of the top million sites on the web and found those that use frameworks are actually more likely to have accessibility issues.

Very much this. People who use Javascript frameworks because they think they protect them from common web development pitfalls are simply trading away a set of known, solvable problems and taking on a different set of unknown, unsolvable ones.

I’m not anti-framework, but I am pro-informed-developer. If security, accessibility, performance, and browser support are things you care about – and they absolutely should be – then you need to know the impact that the tools you choose have upon those things. It’s easy to learn the impact that vanilla JS has on them, but it’s harder to understand exactly what impact a framework might have or how that impact might be affected by interactions between it and all of the other frameworks and libraries you mix-in. And many developers don’t bother to learn.

Use frameworks if they’re the right tool for your job. But you should work towards understanding your tools. Incidentally: in doing so, you’ll probably come to discover that frameworks are the right tool for fewer jobs than you thought.

How a video game community filled my nephew’s final days with joy

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Michael Holyland was elated by the empathy, kindness and creativity of the team behind his favourite video game Elite Dangerous. Photograph: Mathew James Westhorpe

My nephew, Michael, died on 22 May 2019. He was 15 years old.

He loved his family, tractors, lorries, tanks, spaceships and video games (mostly about tractors, lorries, tanks and spaceships), and confronted every challenge in his short, difficult life with a resolute will that earned him much love and respect. Online in his favourite game, Elite Dangerous by Frontier Developments, he was known as CMDR Michael Holyland.

In Michael’s last week of life, thanks to the Elite Dangerous player community, a whole network of new friends sprang up in our darkest hour and made things more bearable with a magnificent display of empathy, kindness and creativity. I know it was Michael’s wish to celebrate the generosity he was shown, so I’ve written this account of how Frontier and friends made the intolerable last days of a 15-year-old boy infinitely better.

I’m not crying, you’re crying.

A beautiful article which, despite its tragedy, does an excellent job of showcasing how video gaming communities can transcend barriers of distance, age, and ability and bring joy to the world. I wish that all gaming communities could be this open-minded and caring, and that they could do so more of the time.

Metropoloid: A Metropolis Remix

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Yaz writes, by way of partial explanation:

You could fit almost the entire history of videogames into the time span covered by the silent film era, yet we consider it a mature medium, rather than one just breaking out of its infancy. Like silent movies, classic games are often incomplete, damaged, or technically limited, but have a beauty all their own. In this spirit, indie game developer Joe Blair and I built Metropoloid, a remix of Fritz Lang’s Metropolis which replaces its famously lost score with that of its contemporaries from the early days of games.

I’ve watched Metropolis a number of times over the decades, in a variety of the stages of its recovery, and I love it. I’ve watched it with a pre-recorded but believed-to-be-faithful soundtrack and I’ve watched it with several diolive accompaniment. But this is the first time I’ve watched it to the soundtrack of classic (and contemporary-retro) videogames: the Metroid, CastlevaniaZeldaMega Man and Final Fantasy series, Doom, Kirby, F-Zero and more. If you’ve got a couple of hours to spare and a love of classic film and classic videogames, then you’re in the slim minority that will get the most out of this fabulous labour of love (which, at the time of my writing, has enjoyed only a few hundred views and a mere 26 “thumbs up”: it certainly deserves a wider audience!).

Imogen Heap: NPR Music Tiny Desk Concert

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

In the second half of this video (directly linked), Imogen Heap demonstrates how she uses her Mi.Mu gloves as an expressive music manipulation tool, and then goes on to sing the most haunting rendition of Hide and Seek you’ll ever hear. The entire video’s great – in the first half she brings Guy Sigsworth up to sing Guitar Song, finally answering after 17 years the question “What if Frou Frou got back together?” – but if you only listen to the second half of this video then it’ll still improve your life.

@AndyReganCDF: I nudged you about this last week but you were at Glastonbury and I don’t know if you picked it up after you got back, so here’s a renudge.

I Staked Out My Local Dominos to See Just How Accurate Its Pizza Tracker Is

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

It wasn’t that long ago that I stumbled across a piece in The Atlantic about how TurboTax uses bogus progress bars when completing a tax return. Since reading this, I got to thinking about the most important progress bar in my life — the Domino’s Pizza Tracker. If you’re unfamiliar with it, the Domino’s Pizza Tracker is the colorful, light-up progress bar in the Domino’s app that tracks each step of your pizza’s progress, from when it’s first being prepared until it arrives at your home.

Curious about its accuracy, I decided to stake out my local Domino’s. The plan is as follows: I’m going to place an order for delivery while hanging out in the restaurant, then compare each progress mark on the tracker with what’s actually happening with my pizza. Then I’m going to follow the delivery guy in my car until he arrives at my house, where my wife will be ready to receive him. For the record, I’m going into this hoping that the pizza tracker is not in fact a lie, but I’ll be honest, I do have my suspicions, so I plan to get to the bottom of this hunch.

Me, steely-eyed and ready to determine just how accurate the Domino’s Pizza Tracker really is.

I knew it! I totally knew it! I’ve long been highly-sceptical of Dominos’ Pizza Tracker ever since – long ago – Paul got me thinking about how much easier it’d be for them to have it just “tick along” than to actually, you know, track pizza. Still, I’m pleased to see some serious (?) investigative journalism into the matter!

I Put Words on this Webpage so You Have to Listen to Me Now

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Holy cow. I am angry at how people do thing with tool. People do thing with tool so badly. You shouldn’t do thing with tool, you should do other thing, compare this:

I am using tool. I want to do thing. I flopnax the ropjar and then I get the result of doing thing (because it’s convenient to flopnax the ropjar given the existing program structure).

Guess what suckers, there is other thing that I can use that is newer. Who cares that it relies on brand new experimental rilkef that only like 5 people (including me) know? You need to get with the times. I’d tell you how it’s actually done but you wouldn’t understand it.

Look at this graph…

Man, I hate the way that people are using tool as well. I’ve been using tool to do thing for a long time now, so my opinions count more than everybody else’s. Also, even though the way I use tool is still supported and will be indefinitely, I’m absolutely opposed to tool being able to be used in a new and different way that does thing that other people want. Why can’t they just learn to use tool the way that it’s always been used?

Y’all wanna hear a story about the time I accidentally transported a brick of heroin from Los Angeles to Seattle?

This article is a repost promoting content originally published elsewhere. See more things Dan's reposted.

…We decided to sell our bikes, and buy a 1979 Dodge Ram van. I want to say we paid like $600 each for it — $1200 all in. It needed a little work, but the important part was it was all easy stuff. We named the van Cassandra, and wrote our names on the door.

The plan was easy: We’ll drive up the Pacific Coast highway, and camp all along the way. We took the middle seats out of the van, so we could sleep in it at night in case it was raining. Then we went to REI to get hammocks for hammock camping.