Netflix Misses the Easy Marks

One of the reasons that Google because THE Internet search engine (though DuckDuckGo is better because it protects privacy) is because they have clean, no frills interface and they WORK. They get the job done. Those two key features made it the juggernaut that it is. Netflix is basically on the same path except for a few obvious design flaws.
Autoplay
The first is auto play. I really don't need to say much else: it's a feature almost no one wants or needs and they shouldn't have shoved it down our throats. If you want to "opt-in" fine, but making it the default and forcing us to turn it off (which doesn't even work fully) is obnoxious to say the least. Don't play, don't preview, don't do anything at all until and unless I tell you. No one wants an interface that goes rogue and has a mind of it's own.
Originals
This one is probably petty, but it ticks me off when I see something labeled as "Netflix Original" that is neither. They slap that label on Anime that they didn't create, produce, or otherwise do anything with other than make it available. Giving it a "Netflix Original" label is much like seeing Apple juice in the store labeled "100% juice!" when in reality, it only has 10% apples in it.
I'm 100% aware there are some linguistic and legal shenanigans at foot that make this not technically fraud, but I don't care. It's dishonest and manipulative.
Watch forever
Recently I've been enjoying something that is actually Netflix original: Netflix comedy specials. It's fun to have on when I'm working on other stuff, but I'm not interested in watching the same show multiple times in a short period. Much as I might like Dave Chappelle or Gabriel Igelsias, it's going to be several months or years before I can really enjoy seeing it again. Meanwhile Netflix keeps showing me the same stuff over and over with no way to filter it or even indicate which ones I've seen.
![]() | ![]() | I contacted Netflix about this and they said I could either check the watch history in my profile and manually keep track or thumbs down my favorite things instead. So my current choices are to build a crime-scene wall of watched photos to keep track myself or gut-punch my recommendations (and favorite shows) with undeserved thumbs-downs. I think they can do better than that. |

Pandora has a neat feature where you can say "I'm tired of this, shelve it for a while" which would be great. Or if I could just say "seen it" and filter it to only things I haven't watched before, that would help me find new stuff instead of accidentally starting the same John Mulaney special 5 times in the course of a week. The thing that kills me is that it would be so easy to do. It's not difficult to have a little icon marking "watched this". Maybe even a counter, but WAY better would be a way to push them aside if I don't want to see it again for a while.
![]() | ![]() | To prove this is as trivial as I claim, I wrote a greasemonkey script to give basic ''watched that'' functionality. It's pretty basic, but it's better than what Netflix is giving you. |
Installing
Click here to learn more about Greasemonkey and how to use it. If you already have GreaseMonkey (or similar), you can get install my script by clicking the install button on this page. Otherwise, here's the raw script if you prefer:
Tags: Netflix, Streaming TV// ==UserScript== // @name Netflix saw it button // @author TheGeekProfessor // @description Fix netflix thumbnails so you can mark them as watched // @include https://www.netflix.com/* // @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js // ==/UserScript== // license Creative Commons Attribution License $(document).ready(function() { $('[data-ui-tracking-context]').each(function(){ // It's query string that's actually JSON that's actually an array id= JSON.parse(decodeURI($(this).data('ui-tracking-context'))); id = id.video_id; if(localStorage.getItem(id)) $(this).closest('.title-card-container').addClass('g_watched'); }); $('[data-tracking-uuid]').closest('.title-card-container').append('<div class="watched_eye">👁</div>'); $('.watched_eye').click(function(){ $(this).closest('.title-card-container').toggleClass('g_watched'); id = $(this).closest('.title-card-container').find('[data-ui-tracking-context').data('ui-tracking-context'); id= JSON.parse(decodeURI(id)); id = id.video_id; localStorage.setItem(id,$(this).closest('.title-card-container').hasClass('g_watched')); console.log(id); console.log(localStorage.getItem(id)); }); $('head').append( ` <style> .watched_eye { font-size: 57px; padding: 10px; position: absolute; bottom: -40px; left: 0; background: gray; border-radius: 6px; height: 30px; line-height: 30px; } .watched_eye:hover { opacity: .3; cursor:pointer; } .title-card-container.g_watched { opacity: .3; } </style> ` ); });