394

Installing every* Firefox extension

> I did some research to find why this took so long. 13 years ago, extensions.json used to be extensions.sqlite. Nowadays, extensions.json is serialized and rewritten in full on every write debounced to 20 ms, which works fine for 15 extensions but not 84,194.

I'm slightly worried how they arrived at that debounce value. Which extensions need to write to extensions.json continuously, several times a second?

4 minutes agoxg15

Brings back the memories of using Internet Explorer when every other installer was fighting for toolbar space!

Every Internet café had at least 2, with Ask.com, Google, Yahoo and later on, Bing being the main contenders.

6 minutes agom132

Sad that no real pages can load successfully, but I thoroughly enjoyed the writing.

> We turned on crash reporting on the way.

I haven't burst out laughing like this in a while! You'll probably make for some horror stories to a poor Mozilla team.

9 hours agoBoppreH

The eternal tension between "this service mesh is completely overengineered for our usecase" and "our broker is far to slow for our 84.205 microservices"...

10 minutes agoxg15

This article is wonderful crazy.

The icing on the cake is the discovery of a potential performance bug in one or more of the about: pages, that's definitely worthy of following up.

11 hours agoxnorswap

I'm laughing so hard at the video, I imagine this is what browsing the web is like for the elderly that barely know how to use a computer. Can someone do this in Chrome?

11 hours agogathered

Loved the brutal realization that came when the seemingly broken Extensions button the author was mashing for solid 30 seconds turned out to be a fake, extension-supplied one. One... of three.

12 minutes agom132

My favorite part was the metal pipe sound effect. Wish the author investigated which extension does that.

11 hours agostratos123

That will be one hell of a bug report.

an hour agoamelius

If you turn loose a completely untrained person to click yes/accept/download/OK/I agree on every type of user interface popup, particularly a person who has no ability to distinguish between a user interface question presented by the operating system itself and something inside of a browser window, that's what you'll get...

9 hours agowalrus01

I have a vivid memory of once looking over someone's shoulder in the IE days and being horrified to see toolbars taking up about 80% of the available screen real estate, leaving only maybe 150-200 pixels of vertical space for actual web browsing. I have no idea how they got anything done, and my guess was they never actually used any of the installed toolbars and just thought that was normal.

9 hours agoRussianCow

You can see this today on macOS. I see people with this at work all the time. The defaults have quite inflated scaling and the dock at the bottom. The vertical space left for a website after the address bar is hardly anything.

38 minutes agowalthamstow

I have this memory too lol. I was really quite young but it's like a core memory. Similar to when a middle school teacher told me about Firefox and I discovered tabs.

3 hours agoweird-eye-issue

You can just say AI

8 minutes agoShadowmist

I’m aware, that’s exactly what my grandfathers (rest in peace grandpa, I miss you) IE window looked and felt like in the early 2010s!

7 hours agogirvo

"I got basically all the extensions with this, making everything I did before this look really stupid."

I geel this on a deep personal level.

11 hours agousername135

Seeing this article, and how much webextensions manage to mess up the browser, I'm wondering how bad this experiment would've been with the legacy XUL extensions. Maybe they had a point in getting rid of them...

2 hours agomid-kid

I love the small few who take the time to do crazy stuff like this. Very entertaining.

6 hours agocodemog

Absolutely unhinged and very entertaining. Thanks for sharing!

2 hours agocurioussquirrel

This article is interesting but hard to read in certain places because it contains distracting information.

Better to organize it into main findings and side stories.

an hour agojason1cho

The website of this blog and their connections listed are a sight to behold. I miss that version of the internet.

3 hours agommsc

This obviously showcases that Firefox needs to work on their support for having all browser extensions at once. Users want and need this.

2 hours agofulNamSexBoomer

> I did some research to find why this took so long. 13 years ago, extensions.json used to be extensions.sqlite. Nowadays, extensions.json is serialized and rewritten in full on every write debounced to 20 ms, which works fine for 15 extensions but not 84,194.

Occasionally, databases are useful. ;)

11 hours agolayer8

This is probably a good example of the opposite. It would be a mistake to design for the fleetingly rare case. If you’re dealing with a handful of extensions, a json file that’s rewritten is fine.

10 hours agoWaterluvian

But the software already has multiple database systems built in. There's not exactly overhead to use what plumbing is already there, instead of writing to disk.

9 hours agoshakna

Firefox is absolutely abysmal at not corrupting its JSON stores, too. I've had it crash and lose tabs so many times. Perhaps moving back to SQLite wouldn't be a bad idea.

I had to recover somebody's bookmarks for them recently after it decided to destroy the main copy.

3 hours agoChaosvex

> I had to recover somebody's bookmarks for them recently after it decided to destroy the main copy.

@Chaosvex curious how you did that.

2 hours agomockingloris

Easier for a user to edit.

8 hours agoestimator7292
[deleted]
7 hours ago

In an ideal world, software with 100 million users would be optimised for energy usage. It all adds up. This does pale in comparison to everything else, though.

10 hours agoHPsquared
[deleted]
10 hours ago

Dang this is so good. Well done.

11 hours agoryanisnan

"In terms of implementation, the most interesting one is “Іron Wаllеt” (the I, a, and e are Cyrillic). Three seconds after install, it fetches the phishing page’s URL from the first record of a NocoDB spreadsheet and opens it [...] The API key had write access, so I wiped the spreadsheet."

10 hours agoproactivesvcs

The extension is actually still up: hxxps://addons[.]mozilla[.]org/en-US/firefox/addon/%D1%96ron-w%D0%B0ll%D0%B5t/

10 hours agomethodist

Did you just admit to a CFAA violation?

4 hours agothephyber

What do you mean by "you"? Do you know what quotes are?

3 hours agoweird-eye-issue

Won't someone think of the poor phishers!

2 hours agosunaookami

> Dr. B is the king of slop, with 84 extensions published, all of them vibe coded. > How do I know? Most of their extensions has a README.md in them describing their process of getting these through addon review, and mention Grok 3. Also, not a single one of them have icons or screenshots. > Personally, I’m shocked this number is this low. I expected to see some developers with hundreds!

This is really surprising. Either because Firefox is not that popular ir mozilla has an automatic filter?

3 hours ago3abiton

> It turns out there’s only 84 thousand Firefox extensions.

On addons.mozilla.org, but you can distribute Firefox extensions without posting on addons.mozilla.org. I do.

11 hours agolapcat

I'm pretty sure that there were much more XUL and XPCOM extensions back then +10 years ago before mozilla pulled out the plug for that platform and moved to WebExtensions

34 minutes agopndy

Other examples I recall when looking into this: Zotero browser connector for Firefox, Chrome Remote Desktop for Firefox (I think it adds a few features for connections to remote desktops)

6 hours agotech234a

Is this the digital version of Supersize Me?

8 hours agoyouknownothing

Turns out even browser extensions can be comedy.

8 hours agothrowatdem12311

Good Luck Remembering all those icons.. Amazing