Live data from Hacker News

A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

github.com

31–40 of 85 posts

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#31
post #27
post #9

Earlier quoted context omitted.

Don't assume most people are polite and reasonable like you. Many people are arseholes. You're choosing to use either the ad-blocker, or the software, and you've chosen the ad-blocker. You can see how tiresome it would be to have a flood of rude people saying "your software sucks", when there's nothing wrong with the software. There's a problem with the ad-blocker that the user has. The bug report should go to that a…

> when the fix needed is only achievable by the ad-block creator. It seems to me that there are two possible fixes. One, the ad-block creator updates their list, yes. But the other is the extension writer renames the file that is triggering the ad-blocker so the ad-blocker is no longer triggered. The only one of those two fixes that is within the direct control of the extension writer is renaming the file within the…

[deleted]

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#32
post #7

Another protip: don't name your images "banner.jpg"; "ads.js" and "analytics.js" etc are also not exactly great names. Another protip: Always make sure that critical flows in the app won't fail if analytics event fails. You probably want to wrap calls to analytics provider with your own function, and in that function check for existence of global analytics object like "window.ga" which may fail to load due to adblock…

In making a card game site (http://www.goodloesolitaire.com/), I got bit by ad.png; the "ad" was referring to ace of diamonds. Fixed it by using a single image for the whole deck and changing the position of the image to show the card that was picked. But man, tracking down that bug was a head scratcher for awhile. That was in the early days of adblockers.

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#33
post #17
post #7

Another protip: don't name your images "banner.jpg"; "ads.js" and "analytics.js" etc are also not exactly great names. Another protip: Always make sure that critical flows in the app won't fail if analytics event fails. You probably want to wrap calls to analytics provider with your own function, and in that function check for existence of global analytics object like "window.ga" which may fail to load due to adblock…

> Another protip: don't name your images "banner.jpg"; "ads.js" and "analytics.js" etc are also not exactly great names. This is good advice even if you are designing banner ads or intrusive analytics! I often wondered how many ads get blocked by the very simple rules usually seen at the top of adblock lists: /ads/ etc. Ads vs adblockers is an arms race, and it seems like renaming the ads files to a random per-deploy…

They do.

I've recently encountered a video ad startup that runs a proxy wrapping VAST responses into a VMAP. So, a website would request an ad not from DFP, but from an inconspicuous CloudFront URL. These CF distributions are deployed for each publisher and you'd have to block them one by one, not being able to block the whole ad platform.

They said that some adblockers can discover ad servers by parsing responses. If a response, say, is a VAST tag, they tag and blacklist a server.

Adblockers are starting to employ heuristics to analyse what a server does, rather than relying on just URL pattern matching. Just like Virus VS. Antivirus arms race.

Fascinating!

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#34
post #26
post #23

Earlier quoted context omitted.

Using Little Snitch can be pretty eye-opening; I wouldn't for the life of me have imagined that my terminal installations of packages with stuff like Homebrew would send calls to Google Analytics. It's bloody everywhere.

That one is actually documented in their repository: https://github.com/Homebrew/brew/blob/master/docs/Analytics....

And aroused considerable controversy, here and elsewhere, when it was new. The two major active discussions here, 7 months and a year ago respectively:

https://news.ycombinator.com/item?id=13034936

https://news.ycombinator.com/item?id=11566720

I'm not too terribly fussed over it, especially considering what it must cost to support Homebrew - if analytics data helps the maintainers make more effective choices around how to allocate limited resources, that seems to me like a good goal, and I'm not sure how providing information on packages I've installed via Homebrew, to be included in anonymized reports on packages ~everyone has installed in Homebrew, poses any meaningful risk to me.

That said, if you feel otherwise, see https://github.com/Homebrew/brew/blob/master/docs/Analytics.... on how to make Homebrew not send analytics data any more.

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#36
post #20
post #3

Earlier quoted context omitted.

Shouldn't adblockers whitelist local request to prevent something like this?

Also the filter in question "/beacon.js" is 3 years old in Easyprivacy, to be exact "Feb 23, 2014". I could understand if it was a recent commit but its not, the onus shouldn't be on the List authors to fix it, but the site owner (yourself) to fix it.

Is this meant to be sarcastic? becaon.js is a perfectly valid name for a JavaScript filename, being forced to name your files something different from their content just to placate ad blockers dodgy blocklists is not right.

Even more not right though, is every developer having to check every blacklist to see if their component name happens to also be used in advertising. Is this really what your suggesting?

Then there's the whole *ad.js blacklist another commenter brought up, this is frankly just a sign of a terrible blocklist.

And new entries that are just as bad get added all the time, so now every developer has to check every blocklist every single day if they want to keep their site running smoothly.

(A happy user of an ad blocker, who is aware that 9 time out of 10, when a site I'm using is broken, it's the ad blockers fault - not the sites)

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#37
post #32
post #7

Another protip: don't name your images "banner.jpg"; "ads.js" and "analytics.js" etc are also not exactly great names. Another protip: Always make sure that critical flows in the app won't fail if analytics event fails. You probably want to wrap calls to analytics provider with your own function, and in that function check for existence of global analytics object like "window.ga" which may fail to load due to adblock…

In making a card game site ( http://www.goodloesolitaire.com/ ), I got bit by ad.png; the "ad" was referring to ace of diamonds. Fixed it by using a single image for the whole deck and changing the position of the image to show the card that was picked. But man, tracking down that bug was a head scratcher for awhile. That was in the early days of adblockers.

>Fixed it by using a single image for the whole deck and changing the position of the image to show the card that was picked

Couldn't you have renamed the file?

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#38
post #9
post #8

Earlier quoted context omitted.

Can you really blame them? Websites became hostile to users and users reacted. I don't know what your software is, and this certainly isn't directed at you, but if I'm forced to make a choice between using an ad blocker or using some software, I'll always choose the ad blocker (unless I was forced to use said software), especially if there are alternatives. There are no real alternatives to using an ad blocker.

Don't assume most people are polite and reasonable like you. Many people are arseholes. You're choosing to use either the ad-blocker, or the software, and you've chosen the ad-blocker. You can see how tiresome it would be to have a flood of rude people saying "your software sucks", when there's nothing wrong with the software. There's a problem with the ad-blocker that the user has. The bug report should go to that a…

Except software which doesn't work with an adblocker does "suck". Sure, potential users could phrase it more politely, but for many of them (me included), it's a minimum requirement.

At least "sucking" is better than being totally useless.

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#39
post #37
post #32

Earlier quoted context omitted.

In making a card game site ( http://www.goodloesolitaire.com/ ), I got bit by ad.png; the "ad" was referring to ace of diamonds. Fixed it by using a single image for the whole deck and changing the position of the image to show the card that was picked. But man, tracking down that bug was a head scratcher for awhile. That was in the early days of adblockers.

>Fixed it by using a single image for the whole deck and changing the position of the image to show the card that was picked Couldn't you have renamed the file?

Good excuse to refactor I'm sure.

Re: A JavaScript browser library fails due to an adblocker blacklisting 'beacon.js'

#40
post #7

Another protip: don't name your images "banner.jpg"; "ads.js" and "analytics.js" etc are also not exactly great names. Another protip: Always make sure that critical flows in the app won't fail if analytics event fails. You probably want to wrap calls to analytics provider with your own function, and in that function check for existence of global analytics object like "window.ga" which may fail to load due to adblock…

Yup. I have to manually screw around with doordash URLs because the login button on their site breaks when I block analytics libraries.
Post reply on HN