Hacker News new | ask | show | jobs
by smosher_ 3939 days ago
Blocking at the request level is where it's at: you don't download the content, you don't execute the scripts, you don't interact with the DOM. You block requests to third party servers or resources based on lists or other policies. This saves you load time, execution time, and it keeps you from being tracked by targeted ad systems.

If people start bypassing the DOM with canvas we will have a bigger problem than cosmetic filters failing: we will no longer be served the same kind of document. Or we will, but the content will be in an opaque region of it. If that happens the web is dead. People tried this before with flash and that smoldered for a while in the 90s but didn't last, so I'm not feeling all doom-and-gloom about it.

Aside: Standardized document formats are important. If rendering to canvas takes on as the defacto standard, it would cripple the web technologically.

1 comments

Request level blocking isn't going to work when advertisers finally figure out that embedding into the actual document (like a data: URL today) is much harder to block. As the entire point of WebAssembly is to make a small download that is efficient in parse-time and size, it will be practical to embed images (less overhead than a base64'd data: URL).

As for bypassing the DOM, it's a question of when they do that, not if; for evidence, a lot of people tried that with flash already, and lots more try things like trying to block UserAgent context menu. Yes, these were ineffective, but they were (and still are) used by a lot of businesses.

Yes, I think we have a huge problem, because hoping that nobody decides to abuse technology for personal gain doesn't work. With new technologies like WebAssembly, we shouldn't be caring about technical benefits, but instead asking how the technology will be abused. If we give everybody tools to serve a non-document, then we shouldn't be surprised when non-documents are used. The only way to prevent this is to restrict the UserAgent to standards that can only be implemented as an open format, which is what HTML/CSS tried to do.

If you're not feeling the doom-and-gloom, you might want to watch PHK's "Operation Orchestra" talk, and consider that there are a lot of businesses that would love to serve up something closer to cable TV than the current environment where the user can control the rendering.