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.
show comments
xg15
> 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?
show comments
gathered
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?
show comments
xnorswap
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.
I’d like to image with a bit more work, the Firefox core dev team funding this into a CI test and chipping aaay at performance both of Firefox and policies around what goes in the store. Better scanners when extensizoms are unplosded would likely suppprt big gains in removing the poorest quality stuff here and addressing what is leaking memory and is over resource hungry.
username135
"I got basically all the extensions with this, making everything I did before this look really stupid."
I love the small few who take the time to do crazy stuff like this. Very entertaining.
butterlesstoast
I got so much joy out of seeing it take 32 gigs of RAM. Bravo.
majkinetor
What is amazing is that Firefox can actually run at all with that many extensions installed.
mid-kid
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...
rossdavidh
My favorite line: "I got basically all the extensions with this, making everything I did before this look really stupid."
Not at all; all good developers succeed by finding ways to make their past work look unnecessarily complicated.
alberto-m
Really great writing and interesting experiment! I love the small details like the “clueless user”-style crash report in the `about:telemetry` section (“it just crashed out of nowhere”)
fulNamSexBoomer
This obviously showcases that Firefox needs to work on their support for having all browser extensions at once. Users want and need this.
show comments
layer8
> 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. ;)
show comments
ryanisnan
Dang this is so good. Well done.
proactivesvcs
"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."
show comments
xg15
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"...
danlitt
Is the scraping code available? (in order to regenerate the dataset later)
Kholin
Firefox should provide an option to disable the auto popup pages after any extension installed.
walrus01
In general concept this reminds me a bit of adding every possible installer .EXE based Internet Explorer browser toolbar to Windows 98
Absolutely unhinged and very entertaining. Thanks for sharing!
anthk
GNU Abrowser and Icecat both point to a curated list of FLOSS licensed extensions.
jason1cho
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.
lapcat
> 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.
show comments
3abiton
> 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?
I won the "Middle Finger Emoji Sticker" Award! (https://jack.cab/blog/every-firefox-extension#the-middle-fin...)
I quickly wrote up how: https://www.arnevogel.com/firefox-permissions/
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.
> 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?
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?
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.
Alternatively you may be able to list the extensions using the sitemap: https://addons.mozilla.org/sitemap.xml
Chrome Web Store has something similar: https://chromewebstore.google.com/sitemap
And Edge: https://microsoftedge.microsoft.com/sitemap.xml
I’d like to image with a bit more work, the Firefox core dev team funding this into a CI test and chipping aaay at performance both of Firefox and policies around what goes in the store. Better scanners when extensizoms are unplosded would likely suppprt big gains in removing the poorest quality stuff here and addressing what is leaking memory and is over resource hungry.
"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.
Reminds me of the NPM package that depended es on all other NPM packages https://uncenter.dev/posts/npm-install-everything/
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.
The website of this blog and their connections listed are a sight to behold. I miss that version of the internet.
In this blog post: Let's Game It Out[1] meets web browsing.
[1]: https://www.letsgameitout.tv/
I love the small few who take the time to do crazy stuff like this. Very entertaining.
I got so much joy out of seeing it take 32 gigs of RAM. Bravo.
What is amazing is that Firefox can actually run at all with that many extensions installed.
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...
My favorite line: "I got basically all the extensions with this, making everything I did before this look really stupid."
Not at all; all good developers succeed by finding ways to make their past work look unnecessarily complicated.
Really great writing and interesting experiment! I love the small details like the “clueless user”-style crash report in the `about:telemetry` section (“it just crashed out of nowhere”)
This obviously showcases that Firefox needs to work on their support for having all browser extensions at once. Users want and need this.
> 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. ;)
Dang this is so good. Well done.
"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."
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"...
Is the scraping code available? (in order to regenerate the dataset later)
Firefox should provide an option to disable the auto popup pages after any extension installed.
In general concept this reminds me a bit of adding every possible installer .EXE based Internet Explorer browser toolbar to Windows 98
https://www.reddit.com/media?url=https%3A%2F%2Fi.redd.it%2Fz...
https://fergido.wordpress.com/wp-content/uploads/2011/06/too...
Absolutely unhinged and very entertaining. Thanks for sharing!
GNU Abrowser and Icecat both point to a curated list of FLOSS licensed extensions.
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.
> 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.
> 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?
Is this the digital version of Supersize Me?
Turns out even browser extensions can be comedy.
Good Luck Remembering all those icons.. Amazing