19 July 2022

Why does nothing work on the web?

Why does nothing work on the web?

Well, you’ve heard of a single point of failure, right? It’s when just one thing going wrong can cause everything to fail.

That is not the problem with the web.

It’s way worse than that.

On the web, there are single points of failure every step of the way.

The web is so complex – so many different things have to work together – that a small chance of any one of them failing adds up to a strong chance that things won’t work.

How did this happen?

This is just an excuse

By the way, this whole article is just an excuse for my last episode of Tangled Web’s being late.

Here’s what happened.

The short story is that Google locked me out of my Tangled Web YouTube account.

The long story?

Well...

Two-factor authoritarianism

I knew this would happen sooner or later.

That’s why, despite Google’s endless nagging, I’ve never turned on two-factor authentication for my YouTube account.

I’m convinced that the chances of anyone’s hacking into my account are miniscule compared to the chances of Google’s locking me out of my account.

With complete contempt for my express personal preferences, Google recently began to require me to receive a text message on my phone every time I logged into my account, regardless of my refusal to turn on two-factor authentication.

(I do wonder what that two-factor authentication switch actually does, given that Google requires two-factor authentication even when it’s switched off?)

Circular

The risk posed by Google’s two-factor authoritarianism was compounded by my phone company’s demonstrable incompetence.

They once lost my phone number.

I had to start over with a different phone number.

Which, of course, meant that I had to update my phone number on dozens of accounts on the web.

Fortunately, none of these accounts required two-factor authentication. If I’d been required to receive a text message at my old phone number to log into an account to update it with my new phone number, I’d have been forever locked out of those accounts when my phone company lost that old phone number.

And that’s just my phone company’s incompetence. What about my own incompetence? I’ve never lost my phone, but it’s certainly a possibility. If I did, would my phone company allow me to set up a new SIM card with the same number? Would they require me to log in to my account on the web to do so? Does that account require two-factor authentication? Would I be required to receive a text message at my phone number? How could I if I’d lost my phone?

Yukon Ho

For the last couple of weeks of June, I was in Whitehorse.

Another of my phone company’s demonstrable incompetences is extending cell service there.

Admittedly, Whitehorse is a small city, in the Yukon, in the north of Canada.

But it’s not that remote. It’s the capital of the Yukon. Tens of thousands of people live in the city.

Still, for the duration of my visit to Whitehorse, in place of the signal strength bars, my phone obstinately displayed the words: No service.

Guess what happened next

Of course, when I opened my computer from an IP address in the Yukon, Google immediately logged me out of all my accounts.

Of course, when I tried to log back in again, Google refused to accept my rather strong password as proof that I am who I say I am, and insisted on sending me a text message to verify.

Of course, my phone continued to display the words: No service. A map helpfully provided by my phone company on the web confirmed that they wouldn’t be offering service anywhere within five hundred miles.

So, despite my having an episode recorded, edited and ready to upload, despite Whitehorse’s fine Internet infrastructure, I couldn’t release an episode of Tangled Web on YouTube for as long as I was in the Yukon.

How did this happen?

This is not a one-off.

If you use the web (and I assume, if you’re reading this, that you do use the web), you’ll have noticed this kind of thing happening ever more often.

Sometimes it seems that nothing works on the web.

Whether it’s checking your bank balance, filing your taxes, applying for insurance, cancelling a subscription, or uploading an episode of Tangled Web, there’s too often some obstacle or other that’s insurmountable without three hours on the phone with technical support.

Every single thing on the web seems to work with some consistency, but most sequences of things seem to fail with infuriating consistency.

Here’s what I think is happening.

Fragmented

As the web has become more complex, it has become more fragmented.

Nothing you do on the web involves a single service.

Everything you do involves many, many services stitched together.

Even within a single organization, such as Google, even within a single product, such as YouTube, innumerable fragments of software must work together for anything to work at all.

Each of these fragments of software is thoroughly tested. On its own.

All of these fragments of software together? Tested, for sure, but not so thoroughly.

Each of these fragments of software can, on its own, fail in dozens of different ways.

All of these fragments of software together? Well, if there were only two fragments of software, there’d be dozens of dozens of different ways they could fail. Even if there were only three fragments of software, that’d be dozens of dozens of dozens of different ways. Innumberable fragments of software can fail in an uncountably large number of ways.

And that’s before you even consider other products from other organizations.

Someone else’s problem

OK, I’m going to tell you a story, bear with me here.

The last cassette tape I ever bought was the album Discography by the Pet Shop Boys.

(No, I’m not ashamed to admit it.)

The cassette didn’t work.

It was a long album, so there was a lot of tape in the cassette, and a lot of friction to overcome to wind the tape past the playhead. The motors in my cassette player lacked the power to wind the tape at the requisite speed, so the pitch fluctuated between a little too low and a lot too low. This made the album sound less like music, more like an extended moan.

The cassette was cheaply made of poorly moulded plastic. I knew I could make it work by buying a better-made blank cassette, breaking open the pre-recorded cassette with a hammer, unscrewing the blank cassette and relocating the tape from the pre-recorded cassette to the blank cassette.

The cassette player was cheaply made with underpowered motors. I knew that I could make it work by buying more powerful motors, taking the cassette player apart, and switching out the motors.

What I couldn’t do was take the cassette back to the music store – or take the cassette player back to the electronics store – and complain that it didn’t work.

After all, the music publishers could reasonably have claimed that there was nothing wrong with the cassette. It would have worked just fine in a better-made cassette player. Underpowered motors? That’s someone else’s problem.

And the electronics manufacturers could reasonably have claimed that there was nothing wrong with the cassette player. It worked just fine with better-made cassettes. Too much tape? That’s someone else’s problem.

Why nothing works on the web

The someone-else’s-problem problem invariably arises when different products from different organizations have to work together.

Google can reasonably claim that there’s nothing wrong with their account authentication. It works just fine as long as you always have access to a cell phone. No cell service? That’s someone else’s problem.

My phone company can reasonably claim that there’s nothing wrong with their cell service. It works just fine as long as you don’t venture too far from the densely populated regions of Canada. You get locked out of your accounts if you can’t receive text messages? That’s someone else’s problem.

Consider all the fragments of software in all the different products from all the different organizations that have to work together for anything to work at all, and it’s no wonder that nothing works on the web.

But really...

My phone company is merely incompetent.

Google, on the other hand, is positively discriminatory.

Their two-factor authoritarianism locks many of us out of some of the most essential services on the web.

Google doesn’t care.

They don’t much like Yukoners.

Or, indeed, anyone who lives in a remote location.

Or, indeed, anyone who doesn’t have access to cell service at all times.

Or, indeed, anyone who doesn’t have a cell phone.

At least, that’s the way it looks from Whitehorse.