Rage Inducing System Implementation

Recent changes
Table of contents
Links to this page


My latest posts can be found here:
Previous blog posts:
Additionally, some earlier writings:

Just a quick rant ...

I'm about to go on an extended business trip, so I'm making note of broadcast TV programs that I want to record, and making sure there is enough space on the recorder. I have a large external HDD attached, so I've been transferring programs to that to make space on the internal HDD. All was going well. There's still 240 hours of space on the external HDD, so no problems anticipated.

So I set up the next batch of transfers to the external HDD and pressed "Go", and got a new message, one I'd never seen before:

"This operation will exceed the permitted number of titles on the destination medium."

So there is an undocumented limit on how many programs you can have on the external HDD.

Seriously? This feels like 1991 all over again.

Let me explain.

Between 1990 and 1993 I worked at the University of Liverpool in the Computer Laboratory. My semi-research task was to make the cutting edge parallel machines - the Parsys SuperNode and others - usable by non-specialists. This was effectively impossible, but as with all impossible tasks you start by identifying one thing you can do, you do it, and what you've learned can then make other, previously impossible tasks, possible.

Lather. Rinse. Repeat.

In case you're wondering (which most people won't be) ...

The machine was connected to the network for file transfers, but remote logins weren't possible. So you could transfer files to and from the machine, but if you wanted to use it, you had to be in the room.

So I was porting the NAG serial ForTran library to the SuperNode, and pretty much every day I brought the system down. One time in particular I not only crashed my node, and crashed the machine, but I even over-wrote the entire disk, requiring the full system to be restored from backup. It got to the point where whenever people saw me coming they would backup their work over the network and logoff, because they knew there was a chance I'd bring down the entire system.

How did I do this? Still not sure, but the command I ran was the shell "ls" command.

You see, the operating system was a special version of a Unix clone, and the system utilities had been written from scratch. After all, why bother using someone else's complicated code when the job was simple enough, let's just knock out a simple, elegant version. Except that the "ls" code had a fixed size array to store the file details, and they had never anticipated 100 thousand files in one directory.

Cue over-writing memory in, as it turned out, a spectacularly unfortunate way.

So of course people learn from this sort of thing. Except, of course, they don't. When in Melbourne they were implementing a new ticketing system for the trains, why bother copying or buying in a known working, successful system from somewhere else? Why bother copying London's Oyster Card system? Or Singapore's system? Or Atlanta's system? No, instead let's build our own from scratch, because we are smarter, and can learn from everyone else's mistakes.

Cue one project that's years late, millions of dollars over budget, and still didn't work properly.

So of course my PVR has implemented its own disk filing system, and of course, it has an undocumented limit that renders it significantly less useful than it could be.


  • Rage Inducing System Implementation Being Laughably Execrable

Well, you have to laugh ...

<<<< Prev <<<<
The Book Is Not Always Right
>>>> Next >>>>
Emerging E Expanded ...

https://mathstodon.xyz/@ColinTheMathmo You can follow me on Mathstodon.

Of course, you can also
follow me on twitter:


Send us a comment ...

You can send us a message here. It doesn't get published, it just sends us an email, and is an easy way to ask any questions, or make any comments, without having to send a separate email. So just fill in the boxes and then

Your name :
Email :
Message :



Links on this page

Site hosted by Colin and Rachel Wright:
  • Maths, Design, Juggling, Computing,
  • Embroidery, Proof-reading,
  • and other clever stuff.

Suggest a change ( <-- What does this mean?) / Send me email
Front Page / All pages by date / Site overview / Top of page

Universally Browser Friendly     Quotation from
Tim Berners-Lee
    Valid HTML 3.2!