Queueing for convenience

The other day a friend suggested I use Netflix's new "profiles" feature to split up the movies and TV DVDs in my queue so I wouldn't get repeated chunks of one or the other. So far it's been more trouble than it's worth, although that's not by the design of profiles.

When I was setting up the queues, I figured at first I would move them as I went through the list, so I did for a few. How lucky of me to pick the exact time to begin the task that Netflix would go down for maintenance! I was stuck making a long list of the discs to move without the ability to do it right then--but I understand sometimes there's a need for emergency operations.

Unfortunately, in the state I had to leave my queues at the time, the top several slots of both queues were the same discs. So now I've received two duplicates, which is really, really annoying. (In addition, today, I got one of the movies in my movie queue but not the other. Hope it didn't get lost.)

Splitting up into content profiles sounds like a good idea, though. So far it looks like it'll work fine once this queue hiccup passes, as well as for anyone who doesn't have Netflix keel over while you're shuffling your queues. Netflix lets you select which profiles get how many of your alotted discs, so my three discs at a time are now two movies and one TV program.

Unfortunately I doubt they let you specify a fractional number for the number of discs, so you can't, say, split into six genre queues with 0.5 discs each and have Netflix automatically balance them. When I was thinking of that the other day, I thought that'd be a neat code kata: how would you program a queue selection system to handle fractional values like that? It's obivous how to do it probabilistically, but Netflix would need it to be "fair:" with six queues at 0.5 each, you do need to get one disc from each queue over two 3-disc selections. As Netflix is probably just treating each profile queue separately--return the tv disc you have out to get the next tv disc--that would be a completely different system.

If Netflix had open APIs, it would be useful to actually build such a thing. But they don't, so I'll probably work on side projects instead of actually figuring out something useless but amusing. Sigh.