It's amazing to me that Roku has the plurality of the US streaming market (37%), yet its development ecosystem is so terrible. For those who don't know:
1. The only public development API requires the use of their proprietary language BrightScript which is poorly documented, and for which no official compiler, interpreter, or runtime environment is available. Enthusiasts had to create an interpreter for it (https://github.com/sjbarag/brs) to speed up development time. Previously you had to push your app to a Roku to run it before you could learn of any syntax errors.
2. They do have a C/C++ API, but they limit access to big orgs and require an NDA to use it.
That they are finally shoring up their poor developer ecosystem with C/C++ and JavaScript APIs is great, but it's unfortunate that they aren't allowing these apps to be distributed through their official store.
Author of that interpreter here - didn't expect to wake up to that repo appearing in a top HN comment! That started as a side project and was maintained with a few coworkers during spare work hours (thanks, Hulu!) for the past 3 years, along with a unit testing framework that runs in it (https://github.com/hulu/roca).
I'm happy to answer any "developing for Roku" questions that come up :)
> It's amazing to me that Roku has the plurality of the US streaming market (37%), yet its development ecosystem is so terrible.
Step 1: be a cheap (the cheapest?) option in the early phase of a market. This way you build up a sizeable customer-base using a market-segment with low/no expectations.
Step 2: app-developers will be forced to support your platform, despite low-quality platform, ecosystem or SDK if they want to be “everywhere”.
Step 3: With better/more popular apps supporting your platform you can start making more expensive devices or even sell/rent your platform to other players needing a checkbox to check before they can launch (ie smart-TVs).
Roku is really crap to use, but by playing by this book they’ve seemingly done well (as a business) so far.
I have used Google TV, Fire TV, Apple TV and Roku. I have used Roku both as a separate device and built into a TV. Out of them all I prefer to use the Roku. I even sold an Apple TV which was given to me and used part of the sale to replace it with a Roku Premiere+ which I found to be a much better experience.
I have Roku spread across our entire renovated house including an outbuilding. Rock solid. 4 devices. Teamed up with Plex, and has been a fantastic experience so far (1 year and counting).
Simple. Solid. Works.
Nothing but praise from my side.
Literally, thank Gawd, as native TV smart apps are an absolute waste of time (they might as well retire them all now) and I don't want to get sucked into the other ecosystems.
Roku basically benefitted from 2 things:
1) The constant battles between Apple, Google, Amazon, where removing or not adding their specific media distribution channel to each others platforms was used as leverage in all sorts of unrelated negotiations. This meant that Roku was for the longest time the only device that supported AppleTV, Google, Prime Video.
2) Google’s insistence on it having a physical remote for their Chromecast players which in itself was likely a result of the fiefdoms which led to Chromecast and Google TV being separate products for the longest time.
Both of these things are not true anymore. Roku is no longer a neutral platform. And Google Chromecast now comes with a remote.
I see very little reason to pick a Roku over the Chromecast with Google TV and I suspect that Roku’s disadvantages will only worsen with v2 of the Google device.
I think the Roku Ultra is a great product, can't speak to the other levels, but it works really well in comparison to google's parade of stuff, amazon fire stick, apple tv, and smart tv apps on Samsung, LG, and Sony TVs. Also the remote finder is quite handy.
For me, the best aspect of it was their openness. All of the other competing products had their own streaming services, which meant problems with the other providers- why they spun this off from Netflix in the first place. This means the search will go across the different services to answer the pressing question of the day- which service is this content on and at what price? I was considering starting a company to offer this service until Roku met my need there.
Now though, the battle with Google over YouTube has me suspicious of this status. The temptation to chase recurring revenue streams is quite high.
How many of those amazon/Google employees are working on their respective roku alternatives? Your numbers don't really mean anything. For instance, Google could just as well only allocate 10 people to the chrome cast project, turning your statement around.
Roku has a market cap of >40billion, and >1.7billion in revenue. They have the resources to do whatever they want.
These are also not reasonable comparisons since the vast majority of the numbers in the other two companies are not on the software/hardware development side.
I would actually guess if you compared "the size of the team working on Google TV/Amazon Fire TV/etc", Roku is probably bigger (or the sizes were very close).
I would be shocked if it was "tiny" in comparison.
Roku will ban you from installing custom apps if your device has ever installed an app that’s been removed for TOS violations. My account was permanently blocked from side loading because I had downloaded & tried a M3U player.
Thanks for sharing. I'm not a regular Roku user but I do have one and I was thinking about hacking on it. Knowing that Roku can ban you from installing custom apps on the device I purchased is enough to make me spend my time elsewhere.
I'm really glad that companies like pine64, frame.work, and purism, etc are starting to emerge. The Roku, Apple, John Deere etc user-hostile approach of "you don't own it, we do. You're renting it from us and we will tell you what is permitted" needs to be defeated.
Something I haven't really seen discussed anywhere since I first saw this earlier:
>Sunsetting non-certified channels
>With the release of the IDK and beta channels, Roku will remove non-certified channels from the platform by March 2022. The Roku IDK and beta channel feature will facilitate broader innovation, improve beta testing, and offer a better development experience and a more standardized development process across streaming platforms.
So basically, channels via code seems like it's going away. I hope they have a suitable replacement in mind with the IDK
> IDK applications are for personal use only; they can only be run after being sideloaded on an IDK-supported Roku streaming player running Roku OS 10.5 (or later).
So IIUC the IDK explicitly allows consumers to sideload apps.
The Roku interface is great and I would much prefer it over the likes of Apple TV.
However, Roku collects your viewing data (including by taking screenshots) and anything else it can about you (eg. the TCL Roku TVs have mics) and sell it to its valued partners.
> On Roku-powered smart TVs, you can turn off ACR by going to Settings > scroll down and select Privacy > Smart TV Experience.
> Next, uncheck “Use Information for TV Inputs” to disable ACR. Although this will stop your Roku TV from identifying your content on the pixel level, Roku can still collect data about the Roku TV streaming channels you’ve installed and use.
> To prevent personalized ads on your Roku profile, go to Settings > Privacy > Advertising, then check “Limit ad tracking.” Note: This setting is also available on Roku streaming gadgets.
---
> (eg. the TCL Roku TVs have mics)
Is there any evidence that they transmit anything from the mics?
At least some of them do appear to support sideloading, for example my TCL 43" from 2019. I haven't tried loading anything yet, but following the "Enable Developer Mode" process described in the Roku docs [1] does yield the option to enable the dev server, and I don't know that there's any reason to suspect IDK apps won't run if loaded. (Might need to update the OS, though; I haven't done that in a while.)
All apparently first-party by the product names, though, which mine isn't.
I'm going to try building and sideloading one of the IDK sample apps today. If it works, I'll update with details including the TV make, model, and OS version; if not, I'll...just update with that, I guess.
So, roku started out as a democratic middleman offering access to multiple streaming players. But it's devolved into another turf war, where it now continually threatens it's purchasers with loss of access, today Youtube, tommorrow Amazon Prime Video.
From such heights, it's really becoming very disappointing.
That was year one-ish. Within a very short period, Roku expanded well beyond that, as it was the only small box and soon stick with an OS, vs. Chromecast, Intel WiDi/Miracast, and other tech that tried to become a remote display, and the myriad of tv boxes that faded out or got commoditized (a zillion tv boxes running android). Replay, TiVo, WebTV, most of the standalone boxes had faded by that point, and Roku, from the bones of Replay, quickly became the place to have "channels" separate from a cable or YouTube/Metacafe/Dailymotion/Vimeo controlling platform etc.
So, yeah, early early days were Netflix bound, but with 1200 channels in 2013 and over 3000 by 2015, Roku was clearly showing more than just Netflix. At that time, sounded like Roku was the open door to distributing content to a group of hungry viewers...
And today? Still tons of "channels"... but instead of the garden of a million flowers, we instead have the top line players offering the most requested media, and so 3000 or 30000 makes little difference. In addition, a quick perusal of https://channelstore.roku.com/ reveals that past the first few "most popular" options, it's a desert out there. Lots of screen savers and public domain streamers, and little else.
So, what are Roku's options? It can promise that all can play with carriage fees reflecting consumption. It can offer it's own content (The Roku Channel) to compete. It can offer an advertising service to allow monetization of channel/media creators. And/Or, it can decide that it owns it's viewers, and instead of being an open gateway, it's a closed wall. And that's where we are: It's not easy to be a slightly-smart pipe, so Roku punted. Open no more.
I'll never get rid of all the Rokus, for hope that they'll come back around. But thinking back, the power of those early days in 2012-2015 when you got a Roku because you wanted to see almost everything without having to get a sketchy box from who knows where and have it pull torrents in the background... well, those were the days, indeed.
Did it? The earliest recollection I have of Roku is of the SoundBridge, a music player released before Netflix streaming was even a thing. It seems the company was reincorporated after they hooked up with Netflix.
I'm guessing this is in response to the fact that Google won't maintain an official YouTube app for them anymore? It's a shame that companies are only interested in releasing SDKs when they can eke out a petty win (not to mention their hardware is basically irrelevant by now) but it's nice to have nonetheless, I suppose.
Someone else mentioned it but under the surface there are killing the ability to add private channels via codes. Those channels were not in the Roku store and could have allowed
Google to work around the ban.
I feel like it'd be compelling to some enthusiasts because of the low barrier (well, minus learning the IDK) to developing something they'd like for a Roku.
Although if you're going to… develop something for a Roku, I feel like a Raspberry Pi might be easier.
But Roku already has some things already built in. Including a very functional remote. Sure all of that can be created on a raspberry pi - but is it really worth the effort? Plus cost wise, Roku would be cheaper than a raspberry pi by the time you add up the cost of all the individual components.
It's not a surprise that companies won't compete unless they are forced to. I'm glad they choose to make a more open platform their competitive strategy.
1. The only public development API requires the use of their proprietary language BrightScript which is poorly documented, and for which no official compiler, interpreter, or runtime environment is available. Enthusiasts had to create an interpreter for it (https://github.com/sjbarag/brs) to speed up development time. Previously you had to push your app to a Roku to run it before you could learn of any syntax errors.
2. They do have a C/C++ API, but they limit access to big orgs and require an NDA to use it.
There are plenty of cool projects, like a Prince of Persia port (https://github.com/lvcabral/Prince-of-Persia-Roku).
That they are finally shoring up their poor developer ecosystem with C/C++ and JavaScript APIs is great, but it's unfortunate that they aren't allowing these apps to be distributed through their official store.
Author of that interpreter here - didn't expect to wake up to that repo appearing in a top HN comment! That started as a side project and was maintained with a few coworkers during spare work hours (thanks, Hulu!) for the past 3 years, along with a unit testing framework that runs in it (https://github.com/hulu/roca).
I'm happy to answer any "developing for Roku" questions that come up :)
Step 1: be a cheap (the cheapest?) option in the early phase of a market. This way you build up a sizeable customer-base using a market-segment with low/no expectations.
Step 2: app-developers will be forced to support your platform, despite low-quality platform, ecosystem or SDK if they want to be “everywhere”.
Step 3: With better/more popular apps supporting your platform you can start making more expensive devices or even sell/rent your platform to other players needing a checkbox to check before they can launch (ie smart-TVs).
Roku is really crap to use, but by playing by this book they’ve seemingly done well (as a business) so far.
I have used Google TV, Fire TV, Apple TV and Roku. I have used Roku both as a separate device and built into a TV. Out of them all I prefer to use the Roku. I even sold an Apple TV which was given to me and used part of the sale to replace it with a Roku Premiere+ which I found to be a much better experience.
I disagree, I find the Roku experience to be quite easy to use and it does what I want with no surprises in the UX.
Simple. Solid. Works.
Nothing but praise from my side.
Literally, thank Gawd, as native TV smart apps are an absolute waste of time (they might as well retire them all now) and I don't want to get sucked into the other ecosystems.
2) Google’s insistence on it having a physical remote for their Chromecast players which in itself was likely a result of the fiefdoms which led to Chromecast and Google TV being separate products for the longest time.
Both of these things are not true anymore. Roku is no longer a neutral platform. And Google Chromecast now comes with a remote.
I see very little reason to pick a Roku over the Chromecast with Google TV and I suspect that Roku’s disadvantages will only worsen with v2 of the Google device.
For me, the best aspect of it was their openness. All of the other competing products had their own streaming services, which meant problems with the other providers- why they spun this off from Netflix in the first place. This means the search will go across the different services to answer the pressing question of the day- which service is this content on and at what price? I was considering starting a company to offer this service until Roku met my need there.
Now though, the battle with Google over YouTube has me suspicious of this status. The temptation to chase recurring revenue streams is quite high.
Amazon: about 1,300,000 employees
Google: about 135,000 employees
Roku: about 2,000 employees
Maybe they just don't have the resources to support a rich third-party dev ecosystem
These are also not reasonable comparisons since the vast majority of the numbers in the other two companies are not on the software/hardware development side.
I would actually guess if you compared "the size of the team working on Google TV/Amazon Fire TV/etc", Roku is probably bigger (or the sizes were very close).
I would be shocked if it was "tiny" in comparison.
But it does seem like they are fairly successful regardless.
The demise of this company is long overdue.
I'm really glad that companies like pine64, frame.work, and purism, etc are starting to emerge. The Roku, Apple, John Deere etc user-hostile approach of "you don't own it, we do. You're renting it from us and we will tell you what is permitted" needs to be defeated.
>Sunsetting non-certified channels
>With the release of the IDK and beta channels, Roku will remove non-certified channels from the platform by March 2022. The Roku IDK and beta channel feature will facilitate broader innovation, improve beta testing, and offer a better development experience and a more standardized development process across streaming platforms.
So basically, channels via code seems like it's going away. I hope they have a suitable replacement in mind with the IDK
> IDK applications are for personal use only; they can only be run after being sideloaded on an IDK-supported Roku streaming player running Roku OS 10.5 (or later).
So IIUC the IDK explicitly allows consumers to sideload apps.
However, Roku collects your viewing data (including by taking screenshots) and anything else it can about you (eg. the TCL Roku TVs have mics) and sell it to its valued partners.
This is all in the EULA.
> On Roku-powered smart TVs, you can turn off ACR by going to Settings > scroll down and select Privacy > Smart TV Experience.
> Next, uncheck “Use Information for TV Inputs” to disable ACR. Although this will stop your Roku TV from identifying your content on the pixel level, Roku can still collect data about the Roku TV streaming channels you’ve installed and use.
> To prevent personalized ads on your Roku profile, go to Settings > Privacy > Advertising, then check “Limit ad tracking.” Note: This setting is also available on Roku streaming gadgets.
---
> (eg. the TCL Roku TVs have mics)
Is there any evidence that they transmit anything from the mics?
[1] https://www.komando.com/tech-tips/stop-smart-tv-tracking/544...
This is unfortunate. I was only interested in the IDK because roku is built in to my tv.
[1] https://blog.roku.com/developer/developer-setup-guide
I'm going to try building and sideloading one of the IDK sample apps today. If it works, I'll update with details including the TV make, model, and OS version; if not, I'll...just update with that, I guess.
From such heights, it's really becoming very disappointing.
So, yeah, early early days were Netflix bound, but with 1200 channels in 2013 and over 3000 by 2015, Roku was clearly showing more than just Netflix. At that time, sounded like Roku was the open door to distributing content to a group of hungry viewers...
And today? Still tons of "channels"... but instead of the garden of a million flowers, we instead have the top line players offering the most requested media, and so 3000 or 30000 makes little difference. In addition, a quick perusal of https://channelstore.roku.com/ reveals that past the first few "most popular" options, it's a desert out there. Lots of screen savers and public domain streamers, and little else.
So, what are Roku's options? It can promise that all can play with carriage fees reflecting consumption. It can offer it's own content (The Roku Channel) to compete. It can offer an advertising service to allow monetization of channel/media creators. And/Or, it can decide that it owns it's viewers, and instead of being an open gateway, it's a closed wall. And that's where we are: It's not easy to be a slightly-smart pipe, so Roku punted. Open no more.
I'll never get rid of all the Rokus, for hope that they'll come back around. But thinking back, the power of those early days in 2012-2015 when you got a Roku because you wanted to see almost everything without having to get a sketchy box from who knows where and have it pull torrents in the background... well, those were the days, indeed.
https://www.azukisystems.com/blog/roku-private-channels/
In this post there is a unofficial twitch app and an unofficial iTunes podcast app. That type of thing would not be allowed in the Roku channel Store.
Although if you're going to… develop something for a Roku, I feel like a Raspberry Pi might be easier.
Their current developer platform is just awful to work with. I don’t have faith this will be adopted.