DRM and the BBC iPlayer: an interview with Paul Battley

DRM and the BBC iPlayer: an interview with Paul Battley


In this post I will interview Paul Battley, the man who wrote the program that worked around the DRM loophole at the BBC. No GNU/Linux user needs to be told what DRM (aka Trusted Computing, aka Palladium) is and why it is a thoroughly pernicious and Hydra-headed monster that needs to be slain. I hope to make that the subject of a post in the very near future, but in the meantime here is a quick thumbnail sketch of what happened with the BBC's iPlayer, to bring you up to speed. The interview with Paul Battley follows.

The story so far

About two months ago it was reported on Cory Doctrow's blog, Boing, Boing, that the BBC had released a beta version of its iPlayer for the Apple iPhone (and have since added betas for the iPod and Wii) and that, quite unintentionally, it was possible to download it to a hard drive without DRM restrictions with the help of two Firefox extensions: User Agent String and Firebug. Once installed, it was simply a matter of setting the user agent string for the browser to mimic the iphone, navigate to the iPlayer page on the BBC website, select a programme and copy and paste the address into the location bar. You would then be prompted to save or download the file. Choosing the latter, you could then download it to the directory of choice, including removable media. Simplicity itself and requiring minimal technical skills.

The BBC soon closed that "loophole", implying that this was an abuse which would lead to the equivalent of file sharing. Many users were crestfallen but as the nineteenth-century writer Cardinal Newman observed, salvation is wrought by persons, not bodies- and there are a lot of talented and committed persons out there in the GNU/Linux community who objected to the behaviour of the BBC, and saw its DRM restrictions as a technical challenge and an ethical issue about digital freedom.

One man out there, Paul Battley, took up the challenge. He wrote a script (in the Ruby programming language) to replace the blocked Firefox extensions. It worked a treat but the BBC blocked that too; however Paul, just like Kenny in Southpark, couldn't be killed off so easily. He wrote a second script and, as of the time of writing, it is still going strong. Only time will tell if the BBC has simply thrown in towel or decided that DRM is inherently bad or that it has no business acting as a unpaid salesman for Apple's iphone profits. Whatever the reason, let's ask the man who wouldn't take no for an answer.

The interview

Gary: Hello Paul. First, as they say in all the best quality interviews, tell FSM about yourself and your computing background. How many programming languages and how many computers?

Paul: By day, I'm a developer at Reevoo in London. We're all about reviews and helping people decide what to buy, with a strong focus on electrical products, and I spend most of my time working on the Ruby on Rails applications that power our business--and public-facing operations. We're probably one of the bigger Ruby programming teams in the country, and I have some great colleagues. We all teach each other a lot.

The first language I learnt to program in was, funnily enough, BBC BASIC. I must have been about ten years old at the time, I guess. I recall that I spent a lot of time copying in listings from magazines, which seems tremendously quaint now! Over the years, I've used C, C++, Ruby, PHP, JavaScript, Python, and even microcontroller assembly language. Like many programmers, I suspect, I've dabbled in many languages: I've been playing around with Haskell quite a bit recently, but I haven't really done anything serious with it. It's influenced the way that I program in other languages, though. I'm a bit of a contrarian by nature, so I'm perversely proud of the fact that I've never written a Java program in my life.

As I've been exposed to more and more languages, my tolerance for bad ones has decreased. Life's too short for manual memory management or pointlessly verbose syntax. One of the really positive things that I've seen on the Linux desktop recently is the trend towards writing applications and utilities in languages like Python. I think that has the potential to improve the quality of software significantly.

I'm particularly keen on Ruby, which I've been programming in for quite a while now. It's an elegant, expressive language, with a sketchy standard library and an immature runtime. The latter points are finally being addressed, but the language itself is what's kept me using it. That, and the fact that it's what I get paid to do every day!

As far as computers are concerned, I've owned a lot. I started using Linux on the desktop with the initial release of Ubuntu in 2005, although I've used Mac OS X in parallel for much of that time. I've recently switched all my own computers over to Ubuntu, mainly because of my poor experience with Apple hardware. I don't want to be locked into one supplier any more. I've long tried to use open formats in order to future-proof my data; using open systems is just a natural progression. And desktop Linux is really good these days: it makes Windows XP look awfully tired.

Gary: Was your response to the BBC blocking those Firefox extensions hacks based on just liking a technical challenge or was it, as I suspect, from reading some of your responses on your website, an objection to the nature of DRM itself?

Paul: Although I feel that DRM is for suckers, it wasn't so much the fact that the BBC used DRM as that their initial implementation wouldn't work on any computer I own. Plus, after Microsoft was specifically convicted of abusing its operating systems monopoly to gain an advantage in the media player marketplace, it was bad form for the BBC to be reinforcing that advantage. That said, the cross-platform streaming version isn't bad at all, apart from the fact that the Linux version of the Flash plugin is closed-source, doesn't work natively on 64-bit systems, and is generally a bit rubbish. The only "DRM" in the Flash version is the proprietary transfer protocol used--and it won't be too long before someone works that out.

What really irked me was the way in which the iPhone version was rushed out to great fanfare with no DRM of any kind, rather putting a lie to previous protestations about the absolute necessity of DRM.

The piecemeal approach to opening up the iPlayer, one proprietary platform at a time, seems wrong-headed to me. If there's an h.264 version, why not make it available to every device that can play h.264? Restricting it to a single manufacturer is the kind of market interference that a national broadcaster shouldn't be engaging in. They've done it again with the Wii version, too: technically, the Flash 7 content will work on the PlayStation 3--people have shown that--but the BBC have restricted it to the Wii. This is just wasted effort, and a poor use of resources.

I also felt that such hyperbolic coverage of the blocking, especially from BBC News with its talk of "hackers" and "exploits", deserved a swift response. They picked a fight, and I was happy to oblige. What better way to show the flaws in their approach than to work around their new developments on the same day?

Gary: You wrote this script in Ruby. Did you choose it because it is your language of choice or because it was particularly suited to the task?

Paul: As I mentioned earlier, it's the language I use at work every day, so it was the closest tool to hand. Any language with an HTTP library would have done: other people have implemented the same functionality in Perl, PHP, Python, and Lua.

Gary: The script does exactly what it says on the tin, but it's not a GUI. Are there any plans to give it a shiny frontend and add features such as resume and schedule and proxy (for non UK residents) functions--if the BBC have decided not to up the ante?

Paul: I've already added proxy support and resume functions, and I'd love for someone to write a GUI. In fact, there are a couple of people doing that right now. I just don't have any personal interest in doing it myself, because I wouldn't use it. Let someone who has that itch scratch it--they'll do a better job than I would. My focus is on making downloading work, and on keeping up with any changes--maintaining a kind of reference implementation. From that standpoint, keeping the script as simple as possible is an advantage, I think. I've started work on refactoring the initial script into something more manageable and extensible specifically so that it will be easier for front-end developers to interact with it.

Gary: Given that you are on the second incarnation of the Ruby script and it is still up and running, have you had any indication that the BBC has relented, or is it just regrouping for round three?

Paul: The last blog post that Ashley Highfield wrote on the subject seemed fairly dismissive: he pointed out that there will always be ways around the protections, and that they haven't seen any problems due to this so far. I think he's right, and it's a reasonable response. I took that to be a kind of armistice, but he's leaving the BBC soon; will his successor feel the same?

One of the nice things about the notoriety I've gained from this issue is that I've had the chance to talk to a number of people who know what's going on on the inside. The BBC folk aren't stupid: it's the rightsholders' fear of the internet that is forcing the BBC to have to implement some kind of copy-prevention. I don't think that there's any love for DRM at the BBC--it's anathema to public service broadcasting--and I've come to suspect that they hoped that the rightsholders wouldn't notice its absence until it was a fait accompli. If we keep breaking the protections, and the sky doesn't fall in, perhaps the rightsholders will realise that their fears are irrational, and we can all drop the façade. After all, there are plenty of BBC programmes on The Pirate Bay already, and most of those come from broadcast sources or DVDs. The existence of h.264 downloads won't impact that.

Gary: More generally, why do you think that the BBC tried to block your script when, after all, any UK viewer can record any programme (including films) to a digital recorder without any DRM issues?

Paul: I think the broad coverage of the download loophole put them in a position where they had to be seen to be doing something in order to appease the rightsholders. Their blocking made the mainstream media, but my subsequent unblocking didn't, so the publicity angle seems to be covered for now.

Gary: Given that your script is the product of one person with programming skills, do you think that the future of combating DRM lies with large groups like the Free Software Foundation (FSF) and others or is it up to the little platoons in the GNU/Linux bazaar to acquire programming and other technical skills to defeat proprietary software?

Paul: Continuing with the military metaphor, I think it's absolutely the job of small unaffiliated guerilla groups with the freedom to upset vested interests. The large bodies have bigger, more important battles to fight, and being embroiled in this kind of skirmish would probably be counter-productive for them. The FSF is making the case for free software. In the meantime, we still live in a world dominated by proprietary software and abusive monopolies: I'm just making it a little easier for Free software users to watch BBC programmes.

Gary: Paul, that was great. Thanks for revealing the thinking behind writing the script and please accept my thanks and the thanks of all lovers everywhere of digital freedom.

So, what can you do?

Well, you can always sit back, wear sack cloth and ashes and bewail the slow death of your freedoms and the progressive enfeeblement of your computers' power and security and the isolating of open standards and operating systems based on Stallman's four freedoms. Or, you can be a one man band or a member of one of the little platoons in so many ways. Perhaps one of the most useful and important things everyone can do is the follow Paul's example and commit themselves to learning at least one programming language. If every one sat back and assumed that someone else would do all the work, nothing would get done. So, I will put my money where my mouth is and undertake to master at least one programming language that could add to the general pool of expertise to maintain free software freedoms. As to which one, I invite readers to respond with suggestions for the best one to choose.

Can we help to write an extended GUI for Paul's Ruby Script? Is there anyone out there with the requisite programming skills to put a shiny interface on the raw script--and perhaps extend the feature set? If you fit that description, please let FSM know and we'll see where it goes.

In the meantime, if you want to download and install the script head over to Paul' website and while your there send him a thank you for the script. I did!

Conclusion

The free software movement is indebted to all those who, like Paul, gives freely of their time and their technical expertise to safeguard and promote personal digital choice and freedom. If there any lessons to be drawn from this uplifting story is that persistence pays, that even the most non-political user of GNU/Linux simply cannot afford to ignore the politics of free software. Richard Stallman's insistence that in the end it's all about politics looks more relevant than ever. Where DRM and patents are concerned it look like turtles all the way down. Behaving like an Ostrich in this regard (to mix my zoological metaphors) is a recipe for having your digital freedoms Salami-sliced out of existence.

Category: 

Author information

Gary Richmond's picture

Biography

A retired but passionate user of free and open source for nearly ten years, novice Python programmer, Ubuntu user, musical wanabee when "playing" piano and guitar. When not torturing musical instruments, rumoured to be translating Vogon poetry into Swahili.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!