[HN Gopher] YouTube ads in Safari: you see them now, will you se... ___________________________________________________________________ YouTube ads in Safari: you see them now, will you see them in the future? Author : taxyovio Score : 105 points Date : 2021-05-19 18:54 UTC (4 hours ago) (HTM) web link (adguard.com) (TXT) w3m dump (adguard.com) | tambeb wrote: | It's because of things like this--not to mention the added | overhead/middleman--that I think ad blocking at the DNS level is | the best way to go. With both Android and iOS supporting | encrypted DNS system-wide, blocking at the DNS level is more | convenient than ever (mobile & wifi are covered, no need to set | DNS for each wifi network, etc.). | | I realize of course, though, that DNS level blocking is mostly a | non-starter with regards to YouTube since the ads are served up | from the same domains as the videos (mostly? generally? not | certain here). | tyingq wrote: | If, at some point, all we have is hostnames and url lists to | block with, the ad folks will figure out how to unblock | themselves. | tambeb wrote: | I run my own little ad blocking DNS service and the thing I'm | probably most concerned about is websites/publishers/etc. | deciding to serve their ad and user tracking assets from | their own domains. Though most would probably need--or choose | --to use subdomains and be easily blockable all over again. | bozzcl wrote: | Same here, I can think of a million ways to circumvent DNS | blocking. The good thing is, most sites are not gonna adopt | them very quickly. Besides, DNS blocking would have value | even if all sites started doing that: there's plenty of | malware/phishing domains to be blocked and I don't think | those have better alternatives! | ascagnel_ wrote: | I run a Pi-Hole on my local network, and I still see YouTube | ads -- they're served from the same CDN as the videos. The way | in which YT delivers ads (pre-, mid-, and post-roll videos on | the same CDN/domain as the content) seems, on the surface, to | thwart any type of static ad detection. | Dah00n wrote: | This is more of a rant on Pi-hole than related to Youtube ads | but... | | Pi-hole can be fine but it isn't effective if you want it to | block not only the lowest hanging fruits which a browser | adblocker could easily block too but also stuff that doesn't | follow the rules and might use hardcoded DNS IPs if they | can't get the reply they want from the DNS server. With some | Windows PC's, Apple devices, Chromecasts and Androids I | quickly saw Pi-hole hang because of tens of thousands of | requests if I tried to force all DNS through it. Because I'm | a geek I turned to my homelab instead of the RPI4 and ended | up with two nginx load balancers with two Pi-holes behind | each (yes, 4 Pi-holes). Even though they were now running in | virtual machines on a dual Xeon HP Proliant they still died | when they got flooded. The hardware could easily take the | hammering of requests but the software not so much (often the | counter skyrocketed to 40000 requests before it died). Now I | just block 100% of DNS requests at the gateway/firewall | (OPNsense) instead and oh boy does it catch and log a lot of | stuff the Pi-hole didn't. The amount of software that use | hardcoded DNS, make example.com requests and try to reach RFC | TEST-NET IPs is just staggering. | | Sorry about the rant but just in case you didn't know that | Pi-hole is only effective against good network citizens like, | well, now you know. | jcastro wrote: | Have you tried self hosted adguard? It's very performant | and can use any of the lists you can use with pihole: | https://github.com/AdguardTeam/AdGuardHome | | Switched a few years ago and it's great! | bozzcl wrote: | Last year, I added firewall rules to my router to block: | | * Any outbound DNS and DNS-over-TLS requests coming from | anything other than my Pi-Hole * Any outbound HTTPS | requests to DNS-over-HTTPS providers that I know of | | It's surprising how many hits I got to those block rules. | Makes me very worried about the adoption of DoH: all its | privacy and anti-tampering advantages also apply to devices | that violate privacy, like smartphones and smart TVs. I | want to keep those under control. | | I'm curious about your setup: how many devices do you have | in your network that you need a load-balanced Pi-Hole | setup!? My RPi4 has been rock-solid, but it sounds it | doesn't have to handle nearly as much load as yours. Makes | me wonder if my next hardware purchase should be a small | server to host a hypervisor instead of a single RPi. | happybuy wrote: | Part of the problem - as AdGuard concedes in the post - is that | Easy List (which AdGuard and many other ad blockers use) is a | woefully inefficient rule list with over 50,000 entries. Many of | which are out of date, redundant and not optimised for | performance. | | This leads to excessive memory use and performance slowdowns and | is one of the reasons why there is a 50,000 rule limit in the | Safari Content Blocking API. | | As a developer of an alternate ad blocker[1] for the iPhone, iPad | and Mac you can deliver a full featured, quality ad blocker with | less than 5,000 core rules. This provides a faster and more | efficient ad blocking experience. | | As they note however, YouTube ad blocking is a more difficult | problem to solve, but can be done cleanly on macOS. At least at | the moment it can't be done 100% on iOS without Apple rolling out | some additional features to Safari on that platform. | | [1] https://www.magiclasso.co/ | twobitshifter wrote: | The battle between ad platforms and users is going to be never | ending. For YouTube, the _right_ thing to do is to pay for the | premium option which removes ads. Otherwise as difficult as it is | to say, you are getting something for nothing and people do make | a living from YouTube videos. | | Ok, maybe you can contribute to a patreon outside of YouTube, but | you're not going to do that for everyone and those videos are not | served for free (even if Google is not short on cash) | wayneftw wrote: | I would pay to get rid of ads. The only problem is that I would | need to log into YouTube to take advantage of that. | | If I log into YouTube, that requires me to be logged into | Google everywhere and I do not want that at all. The only | solution is to use Firefox containerization or use separate | browsers or separate browser profiles for things and I'm not | going to do any of those because all of those options are | annoying to me. | | If my ad blocker stops working on YouTube and/or if they | require me to login, I'll simply stop visiting YouTube. There's | plenty of other things to do! | sharps1 wrote: | I have a separate profile that is set-up for Google (In | Brave). You could also use a container tab if using Firefox | (Or even a profile, but FF profiles don't work as well as | Brave ones). | | You can also see the YouTube creators who have BAT accounts | set-up. | | I do pay for YT premium family as well as I don't want other | family members to see ads. | | Regarding FF profiles - if using more than one at a time, you | need to set the others to -no-remote, and then opening links | only ever opens up in the main windows. In chromium browsers | when opening outside links whatever browser profile that had | focus last opens the links). | londons_explore wrote: | Google Contributor allowed exactly this, and after setting it | up you did not need to be logged in to use it. | | It's closed down now due to internal politics. | rchaud wrote: | > If I log into YouTube, that requires me to be logged into | Google everywhere and I do not want that at all. | | You can use Firefox Containers to sandbox Google logins. | | Alternatively, you can use a different browser when accessing | Google-owned websites. | ziml77 wrote: | I think even with YouTube taking a large cut, people should | really consider Premium if they use it a lot. It means that | there will actually be something to back up the claim people | make that they would pay to not have sites serve them ads. | | Also Premium views are worth more to content creators than ad | supported views, so it does help the people you love to watch. | Not as much as through something like Patreon obviously, but | it's a bit unreasonable to support _every_ creator that way. | that_guy_iain wrote: | One of the reasons I justify spending money on Premium is | that it supports the creators. I get a bunch of people who | think it's silly I pay for Premium, but I really hate | watching ads so for me that alone makes it worthwhile. | | One channel I really like I have the youtube membership and | pateron subscriptions. It's a UK true crime podcast that does | every recording with professional camera and audio in a | recording studio. Seems like it's expensive to do and I get a | lot of entertainment out of them so seems fair to help them | out a bit more, especially since most of their videos | probably get demonetized. | adamcstephens wrote: | How do I find out what portion of a subscription goes to a | creator? | heavyset_go wrote: | > _For YouTube, the _right_ thing to do is to pay for the | premium option which removes ads._ | | Even if you pay for premium, you'll still get sponsored ads in | the content. | throwaway3699 wrote: | All of that started because people were ad blocking in the | first place. More competition and less eyeballs meant CPMs | have been crashing for decades now. | | Sure, you can do it (piracy is okay too) but let the creators | support themselves somehow. | twobitshifter wrote: | There are some programs/videos that are only available on | premium and do not include sponsored content. | falcolas wrote: | That's on the creator, and no ad blocker will stop sponsored | content. | Dah00n wrote: | SponsorBlock will. It does require someone to flag the ads | first though but so does most ads on adblocker lists. | heavyset_go wrote: | Google could certainly detect when sponsored ads start in | YouTube content and skip them to honor their "no ads" | agreement with YouTube Premium customers. | | That, or they could pay content creators fairly so that | they don't have to shill for NordVPN in every video they | release. | falcolas wrote: | I'm not confident any automated system could properly | detect a sponsored segment. Some creators are quite sly | with how they're worked in. | | > pay content creators fairly so that they don't have to | shill for NordVPN in every video they release. | | I'm with you on that. | heavyset_go wrote: | > _I 'm not confident any automated system could properly | detect a sponsored segment. Some creators are quite sly | with how they're worked in._ | | SponsorBlock does it, and Google could make it part of | their policy for content creators to mark sponsored ad | segments in their videos so that they can be skipped. | patrickyeon wrote: | No ad blocking is going to get rid of that though, until you | run something analyzing the actual video/audio content and | not just the source of streams or how they're loaded. | heavyset_go wrote: | This exists and was posted on HN recently[1]. If an | extension developer can detect when sponsored ads play on | YouTube, so could Google. | | [1] https://news.ycombinator.com/item?id=26886275 | ziml77 wrote: | SponsorBlock doesn't detect sponsored segments. Users | mark the segments and submit them to a database. | | If Google did try to automate it, you can be sure that | people would just move to integrating the sponsorship | into the content. Those are the worst kind of videos and | I don't want to encourage more of them. | phantom784 wrote: | There's an extension called SponsorBlock that does exactly | that. It uses user-submitted timestamps. | namdnay wrote: | Yeah and when you pay for a cinema ticket you still have to | see the actors drinking conveniently angled cans of coke | heavyset_go wrote: | There's a difference between product placement and | intrusive ads that interrupt content for minutes at a time. | YouTube Premium customers paid to get rid of the latter. | paxys wrote: | YouTube Premium customers paid to get rid of ads placed | by YouTube. A simple solution for channels that embed ads | in their videos themselves (or have any other kind of | content that you don't like for any reason) is to simply | unsubscribe. | Dah00n wrote: | Yes but that is like not visiting a site after you found | out it uses tracking or like peeing in your pants for | warmth. It only work if you never see videos you haven't | already subscribed to beforehand. | cpeterso wrote: | I watch YouTube on my TV and the ads are annoying enough that I | actually looked into subscribing to YouTube Premium to make the | ads go away (and better support the content creators I follow). | But I'm not ready to pay YouTube $12/month just to make ads go | away. I would probably pay $5/month. Netflix's basic plan only | costs $9/month. | decasteve wrote: | Serving videos without ads was how YouTube's monopoly was | built. It became an ad platform later. That created an | expectation that YouTube was a library in the public interest. | Pre-2010 Google marketing had that public interest and internet | stewardship angle to it. | | Serving content over the web assumes that the content will be | downloaded by a browser for rendering. Control over what and | how that content gets rendered is controlled by the user. I | think this aspect made, and still does make in the present | tense, the web what it is. That's why the browser is called a | user-agent--an agent that acts on behalf of the user. | | YouTube could also move to another protocol, or develop a | proprietary one to protect its interests. Otherwise it feels | like they want to have their cake and eat it too. | topicseed wrote: | You're mentioning the end user's learned expectation to get | videos for free. | | But what about the creator's expectation to get paid for | their hard-earned views, to then pay for the gear purchased | and the production of the entire video, including team | members? | | If you're really anti ads, don't take the content for free, | find another piece of content that answers your ad-free | philosophy. | decasteve wrote: | I'm saying platforms can't have it both ways. If they want | to avoid ad-blockers and video downloaders then pick | another medium, or invent one and create a new thing that | achieves this objective. The web is not TV. Public content | on the web is public and user-rendered. That's what made | the web and YouTube what it is today. | | YouTube has every right to create a proprietary YouTube | client (which they do on mobile devices) and prevent | browsers from accessing it. Don't serve files to my browser | if you don't want me to use them. | | Creators, for better or worse, are putting themselves at | the mercy of YouTube, as serfs to feudal lords. I'm | sympathetic, and happy to pay (and do) for your goods | directly, but don't complain to me if your lord mismanages | your affairs. | | Even TV users had VCRs to save content "offline". | topicseed wrote: | Sure, it is all on YouTube/Google's fault if you decide | to install an adblocker and not participate in the | compensation of the creator who made the very video you | are enjoying. | | Definitely not illegal to do so, so do as you please, but | don't turn yourself into a white knight by some mental | gymnastics with the sementics behind what a user agent | is. You want to enjoy the video without ads, regardless | of the consequences on the creator who made that video -- | and accessorily, the service hosting it and streaming it | to you! | mullingitover wrote: | > If you're really anti ads, don't take the content for | free, find another piece of content that answers your ad- | free philosophy. | | Google is in the process of breaking this deal themselves - | they're now adding ads to videos which users did not opt to | monetize, and they're keeping 100% of the revenue. Taking | the content for free, if you will. | topicseed wrote: | They, at least, offer a free hosting service. Not ideal | to monetize on the back of the creator's work, but it's | not comparable with friendly piracy rationalised through | semantics behind what User Agent means (as per parent | comment). | afavour wrote: | [deleted] | weird-eye-issue wrote: | They didn't say they don't have a premium option. They said | that for users buying Premium is the right thing to do if you | don't want ads. | FriendlyNormie wrote: | $15.99 | csunbird wrote: | But Google is going to use my data for advertising, with or | without premium. An adblocker gives me the luxury of not seeing | ads while keeping my data private. | sofixa wrote: | Maybe it's only for the EU, but on adsettings.google.com you | cab tell it _not_ to use personalised data for ads. | matheusmoreira wrote: | Google still has the data though. | [deleted] | FriendlyNormie wrote: | No. Fuck your corporation worshipping lunacy. Youtube should be | forcibly nationalized and transformed into an ad-free taxpayer- | funded instrument of the first amendment with zero censorship. | All youtube data centers should be raided and seized by the US | military. Hand a golden parachute to anyone at google who might | be upset about this. If they're still upset after the privilege | of retiring wealthy and early then it proves they had | treasonous intent all along and they should be hanged. | _Algernon_ wrote: | YouTube has the right to send or not send the file to my | computer. My browser has the right to process the video on my | behalf, including not showing it to me if it is an ad. | | My right to decide what my purchased computer does trumps | YouTube's right to make a few cents by showing me ads. | anticristi wrote: | I would, but: | | 1. I feel a 45% cut to YouTube is too big. Compare that to | Patreon, which takes 5%. Granted YouTube offers a lot more for | their cut, but the difference feels too big, especially given | point 2 below. | | 2. YouTube is extremely untransparent about revenue sharing, so | it feels like I'm paying Google, not the creators. | | So give me more transparency and take a smaller cut, and I'll | be happy to disable my ad blocker and start paying membership. | graftak wrote: | 3. It includes a music subscription that makes it more | expensive than Netflix, I find this quite insane considering | they're in the business of hosting user generated content. | paxys wrote: | Patreon has different plans which take anywhere from 5-12%. | On top of that they charge payment processing fees and bank | transfer fees. In terms of service you are getting nothing | but a profile page. A flat 30% fee is considered standard for | most online marketplaces. | | Considering how much more complex and expensive video hosting | is, and everything else YouTube offers, I don't think a 45% | cut is unreasonable. In fact YouTube does have direct paid | channel memberships (which is a much closer business model to | Patreon), and for that they take 30%. | JohnTHaller wrote: | > I feel a 45% cut to YouTube is too big | | YouTube is offering up the tech behind streaming the videos, | the storage, the bandwidth, the development work on both the | client and server ends, and the ongoing payment processing. | As well as the audience install-base. And this isn't a | situation where the end users are paying for the software via | buying hardware from Google (Pixels being the exception) like | it would be with just an app store. YouTube provides far more | than anyone else. And they make the money to do so via | advertising. You're paying the money in place of YouTube's | revenue stream in addition to the money going to the | creators. | | Patreon is mostly a payment processor and gatekeeper. They | don't host videos or provide any of the other services | mentioned above. To host videos, the creator pays another | provider like Vimeo $84 a year for 5GB/week in uploads to | $600 for unlimited video uploads. Live streaming is $900 a | year. | ska wrote: | While this is all true, it doesn't obviously counter the | GP's contention. It's a good argument as to why YouTube's | cut isn't the same as Patreon's, but that doesn't mean that | 45% isn't to high. | sofixa wrote: | Considering Youtube _probably_ doesn 't break even ( | Alphabet don't list YouTube expenses separately, only | revenues, which is suspicious), and the _vast_ majority | of content on YouTube is thoroughly unmarketable and | unprofitable ( think vacation videos, school lessons, | etc.), maybe, maybe not? | ska wrote: | I agree it's not clear. | heavyset_go wrote: | > _I feel a 45% cut to YouTube is too big. Compare that to | Patreon, which takes 5%. Granted YouTube offers a lot more | for their cut, but the difference feels too big, especially | given point 2 below._ | | Agreed. If we look at the Bandcamp model, they only take 10% | to 15%, and that's still high compared to Patreon. | JohnTHaller wrote: | Bandcamp starts at 15% and goes down to 10% after you cross | $5,000 per year in digital sales. Payment processing fees | are separate and an additional 4-6% according to Bandcamp. | So fees start at 19%-21% and go down to 14%-16% once you | exceed $5,000 in sales per 12 month period. | falcolas wrote: | YouTube subscription views are worth far more to the creator | (some 10x (I've even heard 100x from some creators) more) | than full ad views within the same video. | | So, regardless of YouTube's cut, it's much more valuable to | the creator, and valuable to you (no embedded ads). Win win, | at least until an alternative arises. | londons_explore wrote: | I suspect in the big picture this is not true. | | The kind of people with disposable income to give for paid | subscriptions are far better targets for nearly all | adverts, since they are far more likely to buy the premium | products that have a far larger and budget, and therefore | give the creator more per impression. | | I don't think YouTube reveals to creators enough | information about which audience members generated which | revenue for them to make that connection. | ipaddr wrote: | I understand I pirate software. You shouldn't have to justify | why you are not paying them anything. You clearly want it for | free. | | I would rather pay them nothing and complain how much someone | else is takin as well. | namdnay wrote: | Now give me a bit of slack here, because I'm arguing a | position I don't necessarily 100% believe in, and I don't pay | for youtube red myself. But your argument sounds a bit to me | like someone saying "I think this supermarket takes a too big | cut on these apples, maybe if they split the price 50-50 with | the growers I'd be happy to pay, but as it is I think I'll | just take them for free" | [deleted] | thrwawy12345 wrote: | Eh, it's more like the grocery store is firing apples off | into public airspace, wrapped in invoices. Many people pay | the invoiced amount but some don't. | anticristi wrote: | While I do agree that I deprive Google of some revenue, not | watching ads is not stealing. Otherwise, whole US would be | in jail for going to the toilet during Friends commercials. | :) Ad blockers simply automate that process for me. | | I love supporting creators via Patreon. I hate feeding a | giant that will any day turn against both creaters and | viewers. | | Not sure if I'm rationalising or defending creators. | ipaddr wrote: | Your pretending to care about creators but giving them | nothing. If you stopped visiting youtube but used other | platforms and gave sure.. but it doesn't sound like that | is happening. | anticristi wrote: | I'm not pretending. I support my favourite creators via | Patreon. Feels more than "nothing". :) | Silhouette wrote: | The arguments that blocking ads are somehow unethical or | depriving a business providing a hosting service of its | cut of ad revenue hold very little weight for me. | | If a service wants to ensure viewers pay, it would be | easy enough for any organisation with the resources to | offer large-scale video hosting in the first place to put | the content behind a paywall and earn revenue actively | from giving access to that content. That way, access | without paying would be more difficult and, in most | places, probably illegal. | | But these services typically don't do that. Why? | Presumably they have made a decision that offering the | content openly is in their interests, even if they then | have to rely on passive revenue channels such as ads, | affiliate/referral payments, or promoting associated | brands. | | In that case, I don't think they have much right to | complain when a lot of people access the content they | make freely available in legal ways but without | contributing to indirect revenue streams when they have | no obligation to do so. | creato wrote: | > 1. I feel a 45% cut to YouTube is too big. Compare that to | Patreon, which takes 5%. Granted YouTube offers a lot more | for their cut, but the difference feels too big, especially | given point 2 below. | | You can't be serious with this comparison. Patreon's | bandwidth, storage, and processing needs are a rounding error | compared to youtube, even after adjusting for the number of | users. | whywhywhywhy wrote: | Removing whatever Ublock Origin needed to exist in Safari is one | of the dumbest moves Apple has made. | | To get most of the battery advantages of Macs you're forced to | use Safari. But when it comes down to having to see YouTube ads | I'm willing to make the tradeoff and switch to Chrome. | babypuncher wrote: | Frankly I just hate the idea of YouTube creators getting paid | for their work. | | /s | floatingatoll wrote: | Would migrating to the modern Safari extension API, which permits | JavaScript injection into pages, be a better path forward here | for this website modification tool? | ameshkov wrote: | Safari on macOS supports executing custom JS on web pages since | forever, regardless of what version of API is used. | | It's not supported on iOS, though. | floatingatoll wrote: | Ah. Thanks! | teekert wrote: | I just switched from Android and I love iOS (iPhone 12 mini). But | man do I miss Firefox (the real one, not the Safari skin) and man | do I miss f-droid (specifically gems like GadgetBridge). If only | I could have those 2 things. | wffurr wrote: | There's Cydia: https://cydia-app.com/ | | And if you have a Mac, you can build and install apps on your | own device with Xcode. No Apple developer paid account | required. | | AltStore does something similar by signing IPA files with your | personal key: https://altstore.io/. | cgb223 wrote: | Has anyone used iOS browsers with adblocking built in? | | How do Firefox and Brave compare to Adguard or 1BlockerX? | | Any other browsers out there that do a better job? | ameshkov wrote: | All those browsers have to use Safari (WKWebView) internally so | they are close. | | There's an important difference, these browsers can also run | additional JS on web pages and partly compensate for missing | content blocking capabilities. This could help to an extent, | but I am not sure if the said browsers do that. | viktorcode wrote: | There's some misconceptions being put forth in the article which | I, as a developer of a Safari ad blocker, would like to address. | | Content blockers are limited by design to ensure privacy and | speed, but they may work together with other kinds of Safari | extension. So, when AdGuard guys say that the only debugging tool | you can use is Console, know that this isn't true. There's | SFSafariExtensionHandler API which you can use with blockers as | another extension with higher privileges to track who blocked | what. Very handy in debugging (and informative for the user). | | Should I say that converting something like EasyList to Safari | content blocker json is trivial? It is. Granted, ABP has more | capabilities in its extended syntax, so you won't be able to | convert everything. There's also some rules that don't match 1 to | 1, but it isn't something that can't be solved. | | Compiling speed, for the process that happens once the blocker | rules json is changed, is irrelevant for the users, unlike | battery life. Thanks to the compilation, content blockers have | less overhead. | | The number of rules limit is a non-issue. As explained in the | original, EasyList has lot of mergeable rules. I may add that it | has some overlapping rules too. And if for whatever reason you | hit 50k limit, you can add another content blocker extension to | your app. | | And the most important thing. It seems that AdGuard guys don't | get why content blockers in Safari don't run scripts. It's | privacy. But Safari itself doesn't prevent you from doing that, | only not as a part of content blocker extension that is privacy- | safe. | | Speaking of YouTube ads, yeah, it's a pain point. By blocking | resources you can get to the point where an ad will be a white | screen or a video loading delay. To get around those you have to | get beyond what content blockers are offering. I'm thinking about | adding that capability into my blocker, but it isn't a priority. | om2 wrote: | Note that the rules limit has now been increased from 50k to | 150k. Sorry if we failed to publicize this sufficiently. | Dah00n wrote: | >The number of rules limit is a non-issue | | The big controversy some time back when Chrome wanted to | implement a limit just like this with Manifest v3 says | otherwise. This was both from users and adblock developers and | it is exactly as bad as people said it would be. Saying it is a | good idea because of privacy risks is completely off the rails. | Sure you _might_ run a tiny risk but without a proper adblocker | like uBlock you _do_ run a risk on every single webpage you | open and unlike a good adblokcer you have no idea if you can | trust a webpage until after they have already harvested | everything they can about you. You cannot uninstall yourself | from the thousands of databases you get added to to so it is in | a totally other ballpark. | ameshkov wrote: | As someone who contributed to the post we're discussing, let me | please respond. | | > There's SFSafariExtensionHandler API which you can use with | blockers as another extension with higher privileges to track | who blocked what. | | I am not sure what you mean here. This API (available only on | macOS) does allow injecting scripts and stylesheets, it does | not provide any feasible debugging tools. Granted, you may | inject a script that will get _some_ information about what 's | blocked, but it's far from what's required. | | Just compare what Safari provides with AdGuard's filtering log | on any other platform or with uBlock Origin's log. The lack of | such tool is the main reason filters maintainers avoid dealing | with Safari. | | > Compiling speed, for the process that happens once the | blocker rules json is changed, is irrelevant for the users | | Compiling speed is the reason for the rules limitation. | | > There's also some rules that don't match 1 to 1, but it isn't | something that can't be solved. | | Unfortunately, there is something that cannot be solved, and YT | is a great example of that something. | | > The number of rules limit is a non-issue | | I have to disagree here. | | We're not dealing with EasyList alone, there're many other | lists (regional lists for instance). You may say - okay, let's | split them all to different content blockers. There's a serious | problem with that, though. Different content blockers are | completely independent. However, that's not how those lists are | being developed - there're lists that are supposed to influence | each other. | | Let's take the simple example - unblocking something. For | instance, here is the most obvious example that happens all the | time. There may be a regional list that unblocks something | blocked by EasyList (or EasyPrivacy) because this "something" | breaks an important website in that region. Putting EasyList | into one content blocker and the regional list into another | breaks the regional list. | | > And the most important thing. It seems that AdGuard guys | don't get why content blockers in Safari don't run scripts. | It's privacy. But Safari itself doesn't prevent you from doing | that, only not as a part of content blocker extension that is | privacy-safe. | | We accept that argument despite me being literally sick of | hearing it (so there's privacy on iOS, but no privacy on macOS | since scripts are allowed to extensions there, okaay). | | What's important is that we _do not_ propose allowing running | arbitrary scripts. We propose extending the declarative API in | a controlled manner and it does not conflict with Safari | vision. | | Also, that's just one of the feature requests (and bug reports) | reported over the years. | | edit: typos | viktorcode wrote: | > I am not sure what you mean here. This API (available only | on macOS) does allow injecting scripts and stylesheets, it | does not provide any feasible debugging tools. Granted, you | may inject a script that will get some information about | what's blocked, but it's far from what's required. | | SFSafariExtensionHandler implements SFSafariExtensionHandling | protocol, which has this function: | | optional func contentBlocker(withIdentifier | contentBlockerIdentifier: String, blockedResourcesWith urls: | [URL], on page: SFSafariPage) | | So, this is used in statistics extension that prevents me | ever looking into the console. Helps to shorten the time it | takes to add a new rule and see if it works. | | > Let's take the simple example - unblocking something. For | instance, here is the most obvious example that happens all | the time. There may be a regional list that unblocks | something blocked by EasyList (or EasyPrivacy) because this | "something" breaks an important website in that region. | Putting EasyList into one content blocker and the regional | list into another breaks the regional list. | | I totally agree! This is one of the reasons I don't use those | lists as is. Thankfully, many unblock rules can be merged | into the corresponding block rules in the form of "unless- | domain" specifier. | | > We accept that argument despite me being literally sick of | hearing it (so there's privacy on iOS, but no privacy on | macOS since scripts are allowed to extensions there, okaay). | | The statement that there's no privacy on macOS is incorrect. | The user can see what privileges different extensions | require, and can enable only those they are okay with, like | content blockers. Due to their design, content blocker | extensions can guarantee privacy, unlike the ones that can | run JS code. | ameshkov wrote: | > SFSafariExtensionHandler implements | SFSafariExtensionHandling protocol, which has this function | | First of all, shame on me for missing this, and thank you | for pointing this out. | | Unfortunately, this still does not solve the issue in | question - we cannot figure out which rule was triggered. | But it is definitely better than nothing, at least knowing | what's blocked we can try creating something resembling a | debugging tool. | | > Thankfully, many unblock rules can be merged into the | corresponding block rules in the form of "unless-domain" | specifier. | | Some of them can be handled this way, some of them cannot. | Trying to handle all possible issues automatically right on | the device is not at all as trivial as simply converting | EasyList. And we need to do it that way (real-time, on | device) because our goal is not to just convert a few | lists, but also to provide maintainers with a tool they can | use to develop their lists and test&fix them for Safari. | | > Due to their design, content blocker extensions can | guarantee privacy, unlike the ones that can run JS code. | | Content blockers that can run JS code can guarantee privacy | better by doing their work better than the others. | | Anyways, let's not go further on this, we won't change each | others view on this and we've already stated our positions. | | My point was that we want to extend the declarative API, it | has nothing to do with running JS. | saagarjha wrote: | You may be amused to know that I debug my content blockers by | keeping around a debug build if WebKit with a handful of | breakpoints at the right spots to trace them. The experience | really does suck... | ameshkov wrote: | Well, I have the same exact experience and frankly, it is | not what I intend to repeat again. | | At least developers can do that. But most of the people who | maintain filter lists are not developers and cannot afford | enjoying compiling WebKit for the sake of finding what | exact rule has blocked this or hidden that. | StavrosK wrote: | Honest question: Why not just drop support for Safari? If | Apple wants to make it hard to write content blockers, | they can do without content blockers, and the users can | see ads and eventually switch to a browser that doesn't | show them ads. | ameshkov wrote: | I do honestly believe they want to make content blockers | good. Maybe the problem is that we don't communicate our | pains good enough, maybe it's that they don't hear us | sometimes, but I think that we have the common goal and | this post will help them understand us better. | StavrosK wrote: | I see, thank you. Hopefully it's just about not enough | extension writer feedback, fingers crossed it'll get | addressed! | ec109685 wrote: | At some point, YouTube is just going to stich these into the main | video. | madeofpalk wrote: | Server-side dynamic ad inclusion is relatively not new tech. | I'm surprised they don't do it already tbh | tinus_hn wrote: | Either they allow skipping through the ads or they somehow | signal that it's a different segment. | [deleted] | yliu wrote: | Despite the title being about YouTube, this is fundamentally | about Safari's declarative Content Blocker API being totally | inadequate in the face of modern ad delivery technologies. Yes, | it's fast and relatively more secure compared to old ad blocking | techniques (which requires granting full access to effectively | arbitrary JS), but ad tech has evolved since 2015 and Safari's | Content Blocking API has not evolved with it. | | With other browsers showing varying degrees of interest in | declarative content blocking, it's worth looking at Safari as a | warning of what declarative content blocking, if unmaintained, | will do to cripple ad blocking for users. | shawnz wrote: | This is basically the exact fear which was being expressed by | users when Google announced that they would require Chrome | extensions to only use declarative content blocking starting | with Manifest v3 (which anecdotally convinced me to switch to | Firefox). | defaultname wrote: | If we go down that road, however, sites can make ads | completely indistinguishable from desired content. Same | domain, same stream, no easily marked container. All of the | imperative adblocking tech in the world, short of queuing | everything through a neural engine post render, can block | what is possible. | | So there has always been a detente between adblockers and | publishers, presuming the former hit a small enough set of | users that it was just ignored. It seems that is no longer | the case. | kenniskrag wrote: | I think by law, ads have to be declared as such for users. | _Algernon_ wrote: | That would require delivering ads from first-party servers, | right? So third-party ad and tracking networks would die a | painful death. | sangnoir wrote: | More likely, they'd get upgraded to "first-party" | tracking by acting as a CDN-layer where the _ad networks_ | do the proxying /caching to get the actual content | upstream before merging it with the ads and serving whole | thing in a single request. | qlm wrote: | Couldn't they just be proxied through a first party | server? | _Algernon_ wrote: | That would be more effort than including a single html- | script tag to import google analytics. I have hope that | most parties would decide that the extra server load and | difficulties would make it not worth it. | nimish wrote: | You underestimate the desire for precision tracking, | unfortunately. Hiding behind custom subdomains is common. | Stepping up to cloaking it to be delivered from the | application is more effort but it'll happen. | [deleted] | Flow wrote: | I use Wipr as a content blocker on both macOS and iOS. I never | see ads on YouTube. But I've always felt that it might not be | enough some day. Perhaps that day is nearly here. | lotsofpulp wrote: | I use Wipr and I just saw an ad today for the first time on | YouTube in Safari. Usually, it throws up an error and you | refresh and the video plays, but today's it was error, then a | skippable ad. | js2 wrote: | This is a recent change by YouTube. Wipr uses the same | content blocking API as Adguard and has the same limitations: | | https://giorgiocalderolla.com/wipr-faq.html#youtube | ameshkov wrote: | Note that YT changes aren't yet rolled out everywhere. Also, | if you're not authorized there'll be no issues, but it won't | stay like that forever. | guacaswole wrote: | I use Wipr, I'm in Australia and on Catalina. Now see Ads on | YouTube, even when I update. Now I understand why. | cuddlybacon wrote: | I've been using Wipr. I've been getting the white placeholder | screen for just about a year now. Every one in a while I get | actual ads getting thru, before a new update fixes it. | cuddlybacon wrote: | In response to this article, I've disabled it in place of | using the standalone Adguard app. So far I haven't gotten | either symptom. | google234123 wrote: | If you don't want ads get Youtube Premium. | matheusmoreira wrote: | Install uBlock Origin instead. | Labo333 wrote: | Unfortunately, the web gets everyday closer to some kind of | "interactive TV". Computations are moving to the server side and | clients are merely there to get input and display information. An | illustration is the very controversial Mighty browser. As a | result, programs will shortly become dependent on having an | internet connection. Today, people use more Google Docs than | Notepad. This removes a lot of freedom because computing now | comes at the price of a subscription (for internet but also for | other services be it SaaS, data monetization or server costs for | self hosting). ___________________________________________________________________ (page generated 2021-05-19 23:00 UTC)