Thursday, January 29, 2015

AdBlock a Firefox memory hog? Not if you slim your filters!

There are lots of articles out there talking about what a memory hog Adblock Plus is. And in my experience, especially on older machines, they're right, if you leave it subscribed to a bunch of filter lists.

But have you ever actually looked at those lists? EasyList in particular is a huge collection of blocking rules for sites you probably will never visit. I use Firefox on a computer with only 1GB of RAM, and it really slowed me down.

So I took a look at my situation and realized: I mainly visit the same handful of sites over and over. Do I really need to waste that precious memory having Adblock check for ads from half-the-web?

So here's what I did:

  1. Installed Adblock Edge, because I can block whatever I want, and the custom filter lists I create with it sync over to my other Firefox computers
  2. Copied the filters from EasyList from sites I use frequently (a certain Tube site, a certain Centralized Comedy site, and, um, *ahem* a certain rodent site) and added them to my filter list. 
  3. Spent a few days browsing in my usual habits, making note to spend just a minute or two on each site adding my own filters, by just right-clicking on the ads directly. The wildcard character comes in handy here.
  4. Done!
This has resulted in 90% of ads being blocked for me. I also will use the "Open Blockable Items..." menu entry to check for third-party entries I might have missed. Anything that looks suspicious, I block it. If it turns out necessary for the site's function, I disable the entry, not delete it, so that it will be "greyed out" but still visible, so I'll know not to try to block it again if I ever get trigger happy.

What's the point of saying all this?


Screenshot of Firefox memory usage.
Highlighted portion is Adblock Edge ID.

With five tabs open, Adblock Edge is taking up just half a megabyte of memory, and I have no ads visible. HALF A MEGABYTE, people.

They key here is numeric simplicity. Even a simple blocking filter like "*/ads/* removes tons of junk. I have maybe 200 active filters now, compared to the thousands that pile-up with those subscriptions.

Of course, I do use some simple filter subscriptions, like the Facebook Annoyances remover. Plus, there might be some sneaky beacons or trackers, so I have Ghostly and NoScript take care of that (you might also give Disconnect a try, though I found it interfered with sites often enough to be annoying.)

I'd also given uBlock a try as a potential ABE replacement, and I liked it well-enough, and if you always use the same computer, go for it. But, at the moment, it has no syncing feature (and I respect that, for its goal of being as light-weight as possible). As I'm "rolling my own" custom filters, I don't want to have to be blocking the same things twice over. ABE's use of Firefox Sync ensures that what I block at home carries over automatically to the work computer.

I know that some people just want simplicity, and using EasyList and the other filter subscriptions is great for that, especially for their auto-updating nature. I get that, I really do. Even I myself sometimes take a poke back at EasyList for updated YouTube ad-blocking strings. If I had the hardware power, maybe I'd use the filter subscriptions too. But for people complaining about high memory usage, there's really no excuse for so much bloat. Slim it down and your browsing will speed up.

No comments :

Post a Comment