What I Learned After Building 3 TV Apps Coming from Mobile(dinkomarinac.dev) |
What I Learned After Building 3 TV Apps Coming from Mobile(dinkomarinac.dev) |
They have, frankly, some of the worst UI/UX design of any company in the same spaces that they exist in. Look at even their store listings, it’s a complete mess of information sprawled over the pages.
They do not optimize for performance or have a culture of squashing UI bugs unless it’s measurably stopping conversion for them.
Hell there’s even been times I’ve reported html issues to their teams and been asked to provide the CSS fixes to them to integrate in.
The Kindle has the worst software of any e-ink device on the market.
* in English speaking markets, don't know about the Chinese providers.
If they planned to use a unified codebase for Prime app, they likely went with something HTML/CSS-based, which would explain the performance issues. I could be wrong, but it's just a hunch I have.
If there was other apps we use that had the same issue, I'd chalk it up to hardware too, but maybe they simply don't test it on representative hardware? That might explain it.
> they likely went with something HTML/CSS-based, which would explain the performance issues
Not sure, the web browser in the TV seems to handle things just fine, and much faster than Amazon's app, so I don't think HTML/CSS is to blame here. Probably shit architecture/software design, as usual.
This is the case with a lot of apps that still manage to be performant. So it's quite possible Amazon are writing bad HTML/CSS but that's possible in other languages too.
Could be. Interesting anecdote on that, we're using the Vodafone TV app on the very same TV, and that app you can toggle "send analytics to Vodafone" on or off in the settings, which of course defaults to on.
At one point I toggled it to off, and suddenly the whole app became as fast as all the others, while when the toggle is on, the application is as slow and laggy as the Amazon one. So that might actually very well be the reason.
Though I suppose my XBox Series X can run Halo Infinite at 4K/60hz (with a ton of asterisks) and still chokes on the main menu which is also coincidentally a bunch of rectangles.
Maybe rectangles are just really hard to draw.
They finally agreed to send us the TV. Solved the issue in 10mins.
Normally I'd just use the AppleTV, but the kid stole the AppleTV to watch cartoons in the guest bedroom. I continuously surprised that a 10 year old AppleTV still a better option than using the apps that comes with the TV.
An engineer from Netflix wrote a blog post in 2017 explaining how they handle LRUD input and focus: https://netflixtechblog.com/pass-the-remote-user-input-on-tv...
I just wish modern browsers had the (old pre-chromium) Opera browser style of spatial navigation, gyroscope mouses work well enough but spatial navigation is the main feature I miss since I switched off old Opera
From a developer's perspective, it's a nightmare to deal with such hardware.
> On TV, input works very differently. Users navigate with a remote. Movement is discrete. Every interaction requires intention. Each action is one step in a sequence. That difference changes everything.
I just don't want to read articles that are written by LLMs. If there was something you earnestly learned that you think other engineers could benefit from, use your own words to tell us. It's lazy and disrespectful to hand an audience a massive sloppy blob which reeks of GPT 5 and frame it as something you "learned".
I understand if you don't want to read it, but there is nothing dishonest about this article. I've lived through what I wrote with those 3 apps. Take it as you wish and have a good day.
You can ask the LLM to "mention a few places where I can improve", rather than having it re writing everything, if you really want to.
"On TV, input works very differently. Users navigate with a remote. Movement is discrete. Every interaction requires intention. Each action is one step in a sequence. That difference changes everything"
Then I got an appletv+ subscription, and was pleasantly surprised it performed far better, on an android tv even. I wonder if it's beyond just the company standards for performance, and that the lower compatibility for porting between swift and the android sdks compared to idk react components or flutter, forced them to start from scratch for performance on android tvs.
Without that, it’s just general information.
"Hopefully", because it took me literally 2 months waiting for the reviewer to test my app after it's submitted (to be fair, they did say "expect 6-8 weeks" upfront). They found some issues (crashes), so it was rejected, but I lost interest in resubmitting.
It's the bloat of the software layer on top that's slowing things down.
A 1st-generation Chromecast only has 512 MB pf RAM and a dual-core 1.2 GHz processor, and it can handle video streaming just fine. Building an interface on top of that doesn't take a lot of resources, if the underlying layers aren't bloated. With current Android/iOS development, they very much are.
The alternative is that every TV SoC has its own SDK and most of them don't get [your preferred streaming app]. Those apps that get ported would probably perform better, but most TV makers don't want to take the risk of missing out on an app that will lead customers to someone else. LG and Samsung do stand apart with WebOS and Tizen, but those aren't exactly high performing UXes either.
At the end of the day, I'm not sure if 'UX is not so bad' is a marketable feature for a TV, much as I'd like it to be.
My personal journey has led me to stand alone Rokus, but I'd love to find something that can do "everything": I want to play blu-ray 4k discs from the network, without transcoding and with the full hdr10+ (when available) and bitstreamed atmos and the silly menus, regular blu-ray and dvd too; I would like a selection of top teir streaming apps to work properly (at least Netflix and Amazon, one of the heavily ad supported one that has a lot of 80s tail content too would be nice); it needs to have a spouse acceptable interface; shouldn't cost more than $100.
Roku + optical player works pretty well. My living room tv has that; I'm running out of patience for apps running on the projector in the theater, and it'd be nice if I could get a new box that replaces apps and the optical player so I could move the 4k optical player to the living room.
People say Apple TV or NVidia Shield, but they're both pricy and I'm not sure either really does 4k BluRay with menus?
The Nebula app also isn't great, but at least it functions, even if it too is slower that molasses in January.
Bit me recently when I got a PS5 too, apparently there is a "new" thing called HDMI CEC, which for some stupid reason defaulted to "turn on TV turns on connected device" and vice-versa when first installed. I'm guessing the DR app somehow cares/sends CEC messages (not sure if that's the right terminology, but whatever) to the PS and turns it on.
Maybe forcing CEC off on both the TV and the PS can fix the issue, unless you actually use CEC for it's intended purpose.
Below is what 18 seconds of web searching led me to.
https://www.reddit.com/r/PS4/comments/8u6hrm/why_does_turnin...