BBC Ross Harper Sep 8, 2017

Mobile Apps: iPlayer Tech On The Move

Article Summary

Ross Harper from BBC's iPlayer team reveals how they ship to 45+ million downloads across thousands of device variants. Their secret? A shared codebase that builds two distinct products.

BBC iPlayer serves 4.5 million weekly users watching 6.5 million hours of content on mobile. Harper breaks down the technical architecture, deployment challenges, and technology choices behind their native iOS and Android apps, including how they built iPlayer Kids from the same codebase.

Key Takeaways

Critical Insight

BBC iPlayer's mobile team maximizes reach and iteration speed by building two products from one modular codebase while supporting extreme device fragmentation through smart architecture and remote configuration.

The article reveals their specific approach to continuous delivery for mobile apps and why it's fundamentally different from web services.

About This Article

Problem

BBC iPlayer's codebase is over 6 years old and written mostly in Objective-C and Java. This makes it hard to bring in modern languages like Swift and Kotlin without scattering new code all over the monolithic structure.

Solution

Ross Harper's team took a modularization approach instead. They wrote new features in Swift and Kotlin as separate modules with clear boundaries, rather than trying to rewrite the whole product from scratch.

Impact

This let them migrate languages gradually while keeping things stable. Developers could try new languages in isolated modules and update old code piece by piece without breaking anything for the 4.5 million people using the app each week.