Open gorhill opened 3 weeks ago
Hi @gorhill! Thanks for taking the time to read the paper and review the code. I transferred the issue here as this is the official repo linked to the paper.
Coming to your point, I understand the two points that you mentioned which might have increased the number of frames for UbO. Since we treated extensions as a black box for performance and effectiveness measurements, we did not look into their source code and potential causes. Hence the tag 'Subpar'. I also understand that as the developer of the extension, you might find the 'Subpar' assessment misleading to the readers. However, the source code was made open so that people can review our methodologies and improve upon them over time.
We chose frames as an optimal proxy for measuring the decline in ads as they generally appear as part of frames and is generalizable. What do you think can be a common methodology for doing this? Some options:
Happy to talk and discuss it further and improve the 'Ads' measurement.
Regarding the paper "From User Insights to Actionable Metrics: A User-Focused Evaluation of Privacy-Preserving Browser Extensions", there is this paragraph:
More specifically, this passage:
I looked into the code, and I believe this is where the counting occurs: https://github.com/Racro/measurements/blob/master/effective/ads/frames.js#L90-L93
Counting the number of frame objects to assess the effectiveness of a content blocker at blocking ads leads to flawed assessment as far as uBO is concerned -- the paper assessed uBO as "Subpar" regarding the "Ads" category). Two reasons:
uBO does not remove frame objects which URL has been blocked, so as to minimize page breakage. The frame objects which were blocked at network level are visually collapsed.
Furthermore, uBO will create dummy frame objects so as to minimize page breakage and content blocker detection, see https://github.com/gorhill/uBlock/blob/1.59.0/src/web_accessible_resources/googlesyndication_adsbygoogle.js#L35-L41