HomeBlog

Dreams Come True

MCMWednesday, April 28, 2021

I apologize in advance for the techy post — and worse yet, a techy post that probably won't be relevant a few months from now — but I just had to mark this occasion properly.

Today I finally got the Transfire browser tech to work properly, after 21 years of trying.

Alright, that's not entirely true...I'd forgotten about Transfire for about, y'know, 18 of those years. But it's still a big deal.

What is Transfire? OK, let's take a deep dive into the history of my brain...

Liberty Bell, Ahoy!

Way back in 1997, I had this idea for what would have been webfiction, if such a thing really existed in 1997. It was kinda more like a moody graphic novel with fewer pictures, and was called Shock on the Wire — about a city of hackers turning itself inside-out while trying to cope with a world-changing secret.

I never actually figured out what the secret was, honestly. Heh.

But then, a few years later, in the ashes of the first iteration of Dustrunners, I revived SotW and renamed it Liberty Bell. And this time, I knew what it was about.

Long story short, it was about a city of hackers (Monitor City, which factors into all iterations of Dustrunners and also the Fission Chips books and more) coping with an explosive secret, and it centres around a guy named James Garamond, who is probably the world's most infamous programmer.

Free as in Beer, and Speech

This was all being envisioned in the (relatively) early days of Open Source software, when there was a huge amount of debate and conflict about compatibilities between licenses and the free transfer of information. Poison pills were a really serious concern — the idea that someone would put an OSS license into closed-source software, or vice versa, and "pollute" a code base in a messy, expensively-legal way. I remember getting yelled at for using an OSS-licensed code snippet in a proprietary system. Tensions were high.

So James Garamond's infamy relates to exactly that: he invented the free and open source browser called Transfire, which was really just a regular browser wrapped around a piece of tech that made navigating sites more efficient. In a nutshell: rather than building a menu into a website, the website would serve a sitemap to the browser, which would render a tree browser (in various forms) overtop the content. It would let you skip to a deep page with a few quick clicks, but the browser also guessed where you'd want to go next, and re-arranged content to make your browsing even faster.

Now, I know that sounds kinda lame in 2021, but in 2000, barely two years after Google was founded, information navigation was a very tricky issue for web developers. So in my mind, James Garamond saved that day with a simple-yet-satisfying piece of technology that quickly took the world by storm.

Good Intentions Gone Wrong

And here's where the licenses come into play: Garamond's invention was quickly adopted by all the open-source browsers, and soon became a de facto standard for the web. People built plugins to extend Transfire, whole ecosystems existed to extend it, and pretty soon it was indispensable to the world.

And that's when Garamond's former employer, Illiayson Technologies, dropped the bomb: since he had started the project while employed by them, they owned the codebase. And Illiayson (being a handy stand-in for Microsoft) began suing companies and projects that didn't pay its licensing fees. Some were crippled by the costs, some just folded, and some tried to fight back — but the result was the same: in the end, everyone had to strip Transfire out of their systems piece by piece. It was not a happy time.

James Garamond "retired" at 32 to Monitor City, trying to stay anonymous in a town full of shut-ins. And that's where the story picks up...

But Never Mind That

What's important now is that I have finally built Transfire's navigator. Or, well, a cheap imitation of it.

If you're on the right version of this site, you should be able to double-click anywhere (try it!) and bring up a menu. Click through, swipe back if you need to, and generally have some fun. That's what I was envisioning, all those years ago. I mean, it looked more like The Matrix in the old days, but whatevs.

Technically Speaking...

The key thing about this menu is how it's drawn, which I kinda think may actually have some relevance for modern web development: rather than wasting UI space and energy creating a menu system with dropdowns etc, this sucker uses a JS library to load a sitemap (JSON) and draw it, on request, as a menu. In theory, all you need to do is include that JS in your header, keep a sitemap.json file in your root, and voila, instant navigation.

Why bother? Well, in its current iteration, there's not really a compelling reason to bother, I admit. But some handy features would be better SEO, easier accessibility (if wired correctly for screen readers) and overall, a common UX standard across websites that would make it easier for people to find what they're looking for.

Then again, the current code is deeply tied to my React website code, is probably the most inefficient design I've ever imagined, and has very little value over a regular menu beyond being nifty.

But the potential is there. Somewhere.

Mostly I'm just really excited I finally got to make the thing that ruined a man's life. That's gotta be worth something, right?

All content released under a Creative Commons BY-NC license except the contents of "TV" section, which belong to their respective owners.