Why I use both uBlock Origin and uMatrix

January 8, 2020

In response to my entry on my current Firefox addons, hwj asked a good question in the lobste.rs comments:

Isn’t uMatrix an advanced version of uBlock Origin? What’s the rationale behind using both of them?

While it's true that uMatrix and uBlock Origin have overlapping functionality (and are written by the same person), they have different purposes and focuses. uBlock Origin's focus is blocking ads and other undesired things as an out of the box experience with little configuration needed. uMatrix's focus is on exerting tight and highly specific control over what resources a page is allowed to load and use, including Javascript and cookies (and requires a lot of configuration).

(One significant difference in features is that uBlock Origin can remove HTML elements from HTML pages, while uMatrix has no support for this. Selectively removing HTML elements is extremely important for blocking ads, but it's not relevant if you're blocking entire HTTP requests. I believe that uMatrix's HTML modifications are limited to blocking inline Javascript.)

You can block Javascript with uBlock Origin and it's somewhat easier in simpler cases than using uMatrix, but you don't have the fine control over Javascript that uMatrix gives you (and this improves my experience of the web). Nor do you get the control over cookies and other types of resources, which is a deliberate simplification on uBlock Origin's part. At the same time, uMatrix doesn't give you sophisticated adblocking or things like making unwanted page elements go away, including those annoying permanent headers and footers.

So the reason that I use both of them is that they do different things for me. uBlock Origin removes ads and unwanted page elements, while uMatrix blocks Javascript, cookies, and so on. If I just wanted adblocking, element zapping, and blocking Javascript, I could probably use uBlock Origin alone, but I definitely want cookie blocking as well and I usually like the fine-grained control uMatrix gives me over other things as well.

(Writing this has given me a new appreciation for the difference between the blocklist sources included in uMatrix and the filter lists included in uBlock Origin. The blocklists uMatrix uses just list hosts, because that's what uMatrix deals with. uBlock Origin's filter lists include all sorts of sophisticated matching rules to make HTML elements disappear, as well as some host lists. Having just checked it now, I believe that all of the default uMatrix hosts lists are also in uBlock Origin, although they may not all be enabled by default.)

Comments on this page:

By An avid reader at 2020-01-09 00:17:59:

Could you maybe make the page title (HTML attribute) match the title of the blog post? So in this case " Why I use both uBlock Origin and uMatrix "? I use an RSS reader with a plugin that fetches the content of the page (only the text, sort of readability) and it also changed the title. With your blog it always is a bit of a guess wat the article is about.

By Greg A. Woods at 2020-01-10 15:46:00:

I also use both, but I do wish they could be combined somehow.

The problem I have is when I want to make some web page work, and then I have to fiddle with both of them to unblock the necessary things, and of course it's not always apparent which one is blocking what. A unified UI would help significantly, though obviously it would also complicate the UI at the same time.

Using these tools makes it relatively easy to see just how much junk and "evil" there is on even quite benign seeming web pages, and I'm forever amazed at just how poorly designed most of the web is under the hood.

By Nerd Flanders at 2020-01-10 21:20:01:

If you have docker installed, pihole can be used as an additional layer filtering the noise at the dns level. Of course you can go further with pihole+dns-over-https with cloudfared, or google. Since it's local you are always covered. Oakley-dokey, for redundacy let's replicate and setup on raspberrypi ($15 used at freegeek, new$$ at creatron) as secondarydns (TODO: setup VPS openvpn+pihole for mobile). I use this setup on mac and linux laptops, for www-browsing; waterfox hardened with librefox, ungoogled-chromium, browsing extensions; uBlockOrigin, Nano Defender, Idontcareaboutcookies, Enhancer for Youtube. I use brew to install all my apps. I also install 'less-noisy' apps like vscodium, vlc, mpv, lulu to monitor outgoing connections, oversight to monitor the webcam and mic. Finally I install the noisy-app which is great a white/pink/brown noise generator. Can't get rid of all the noise but by-golly gotta try.

By cks at 2020-01-13 15:07:38:

Greg A. Woods: My answer to the pain of unblocking something is that I have a separate browser profile that just allows everything but also throws away everything when I close it. I only go through the hassle of unblocking something in my main browser if it's something I trust and that I want to use frequently enough in it. Otherwise I just throw it into the 'for Javascript' browser and I'm done.

If I had to manually unblock every JS-based site I wanted to use in my main browser, I think I'd have given up long ago.

Written on 08 January 2020.
« My Firefox addons as of Firefox '74' (the current development version)
Fedora 31 has decided to allow (and have) giant process IDs (PIDs) »

Page tools: View Source, View Normal, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Wed Jan 8 21:32:46 2020
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.