4 ms·
The ad companies have, IMO, brought it on themselves. Flash ads, Java ads, ads with auto-playing sound, popups that interupt the UX, insane analytics deliverab
by cheald 11y ago
The ad companies have, IMO, brought it on themselves.
Flash ads, Java ads, ads with auto-playing sound, popups that interupt the UX, insane analytics deliverables that can increase total page payload and runtime by multiples of the original page size - they are the problem.
I work for a company that makes much of its revenue off of advertising, so this issue is near-and-dear to my heart. As ad blocking has increased in popularity, the networks' response is to impose even more intrusive, resource-intensive, user-hostile requirements on their ad deliverables, and it's only been getting worse. Browsing ad-supported sites is so painful these days because the advertising networks are no longer a relatively minimal ride-along with the parent page - they're practically their own webapp that gets injected along with the host content. Instrumentation shows payload times 4-5x larger than the host page, and total load times can be 10-20x greater than just the host page.
The problem is that ad networks don't feel the pain of increased payload sizes, user-hostile deliverables, degraded UX, and user frustration. There is no feedback mechanism with which to economically punish the bad ads and reward the good ads. The lifetime of an ad unit is so relatively short that there's no incentive to develop a quality deliverable, or to fix problems unless a publisher's development team notices a specific unit and can call out specific problems with it (which generally only happens when the ad is doing something like, I dunno, crashing the entire tab).
I have exactly zero sympathy for the advertising industry's AdBlock problem - it's a problem they've wrought of their own doing. If you want to fix it, there has to be a hard focus on ads that don't actively make it harder for users to get and ingest publishers' content. Reduce deliverable sizes, get rid of long transitive dependency chains (scripts loading scripts loading scripts loading scripts is awful), get rid of stuff that is constantly causing network overhead (viewability trackers are easily the worst offenders here), aggressively police against flash/java ads, police against ads that autoplay audio, ban ads that pre-load video (I have instrumentation on ads which load thirty megabytes of video before the user ever interacts with them), minimize reflows and DOM manipulation - tl;dr, stop being so incredibly user hostile.
Ads are, as far as users are concerned, malware that is painful enough that they'll seek out ways to avoid it rather than just tolerating it. That's the ad networks' problem, and nobody else's.