Developing for SmartTV is a drag. Imagine you’re in the year 2023, yet you have to deal with televisions running Internet Explorer 8 type of technologies. Sounds like fun, right? With the new year to come, and new TVs making their way into the market soon, what could SmartTV manufacturers improve to make application developers' lives much better? Well…
Please update the browser
Oh how joyous the day would be when my LG TV that I bought in 2018 wouldn’t still be running a browser from, let me check, June 2016 (Chromium 53)! Yes, that’s right. My TV that’s in no way obsolete at all, has been sporting an ancient browser version and was never going to get an update from the moment it was bought. And that goes for the majority of televisions out there. The moment TVs roll off the assembly line, many important bits of software never get updated.
That principle has many other implications, of course. What to think of security? You can’t possibly think my television is ever going to support TLS1.3, or get support for newer https certificates. Yes, many root certificates are available, but those expire too! We also have to think about the MSE and EME implementations that are available on these devices. Many ‘older’ televisions still only support specifications going back as far as the 2012 or 2013 draft! Can you imagine having to implement something as important as DRM on a TV, only not having access to the latest specifications?
Please, SmartTV manufacturers. We all know televisions remain in our homes for 10 or more years. It can’t possibly happen that the software of these devices is obsolete the moment they roll off the assembly line. That’s reeking like planned obsolescence, a very bad practice. So maybe now is the time to follow mobile phones and computers, and provide major updates to your televisions.
We need standards
Who hasn’t seen the famous xkcd about standards before. Yet, I’m still saying it. We need standards in the world of SmartTV. And then I’m mainly talking about the operating systems that are running on these devices. A picture is worth a thousand words, let alone three pictures, so let me do just that:
Taken from my LinkedIn post about the different SmartTV and CTV devices, you can see just how many different operating systems we have to support if we want to have an application on every device out there. Unlike the world of mobile phones or desktop computers where you have 2, 3 at most maybe 4 operating systems — the world of TV has 20 or more at this point. Granted, the majority of them are running some form of Linux with apps being standard web apps, but it’s still so much testing, debugging and just dealing with random OS problems. We need a TV OS standard.
Debugging tools galore
The benefit of having many operating systems is that they all do debugging in a different way. If you want to debug Samsung Tizen, you’ll need Tizen Studio. If you want to debug LG WebOS, can use the regular Chrome inspector. But, for some older LG TVs, you can’t use your default browser for this purpose, you need specific versions of Chromium for the Chrome inspector to work (like needing version 68 for my own LG TV from 2018). It’s great fun if you want to debug even just your regular web app on a TV.
But then we haven’t even started touching the surface of things that can go wrong with an app on TV. How on earth are we supposed to debug video playback, when we basically have no option to see the lower levels of what’s happening on the device? The lack of ability to see logs is honestly astounding.
So, dear platform manufacturers, we really want to put in a lot of effort to bring the best apps to your platforms! But we do need the tools to achieve it.
I still love it
Despite all the annoyances of developing SmartTV apps, I still love it. Every day is a puzzle, and you never know what weird or interesting bugs you might run into. In that sense being a SmartTV developer can often be like being a detective; where you have to find out if you are the criminal yourself, or if the TV is the criminal itself. Regardless of that, if I had the ability to change how manufacturers build and maintain their televisions…