Test Your Code

There are reasons software goes through rigorous testing (on multiple levels) before it is released to the public.

My parents have this fancy DVD player that skips over crap they don’t like. It’s called ClearPlay. You can select what type of stuff you want it to cut out, and you can connect to the internet once a month or so to update the library of movies it knows. For graphic or violent scenes, it knows the time codes for the scenes in each movie which the user wants to skip over.

It’s an interesting concept, but ClearPlay has a few glitches in their programming. After all, entertaining software that intentionally skips over scenes of a DVD that is meant to play through continuously (and skip such scenes in a seamless manner without the user’s knowledge) can present significant problems if. For instance, poor programming could result in one DVD being confused for another DVD which
would require skipping during a certain sequence. Or poor programming could call a skip method for no apparent reason. Who knows how these things work ... Either way, the premise of this machine seems to break one of the cardinal rules of programming, and that is that if you’re going to do so something significant (i.e. skip an entire scene in a movie) you’d better tell the user.

We were watching Prince Caspian, a movie that probably doesn’t need any skipping. Naturally, we watched the movie with the ClearPlay Filter off. Apparently it didn’t get the memo ...

One moment we’re at the scene where Caspian first enters the woods (at night) and meets the dwarf, the next moment we’re seeing the completion of the bridge by the Tel Marines (a scene near the end of the movie). The time code on the DVD player was still showing that we were only nine minutes into the movie. We rewound and fast forwarded several times, skipped around the chapters, but it continued with this glitch. We decided to give the DVD player one more chance. It did it again a few minutes later. We then realized we had never even seen the scene where the children actually
enter Narnia. Something was terribly wrong.



Even Ernie was confused, and he can’t even understand movie plots.

A normal DVD player could probably never have this issue. Sure, if the disc were scratched, it could jump to a later portion of the movie, but the time code would jump with it. Introducing such “functionality” as skipping scenes intentionally without alerting the user and without advancing the time code can present
serious issues if you don’t test your code rigorously, while we just now experienced as we watched Prince Caspian.

After restarting the DVD player, ejecting the disc, and putting it back in, we skipped to the second chapter and were greeted with the scene in which the children enter Narnia. It worked!

Must be a Windows-based DVD player ...