Sign in

Nicolò Ribaudo

@nicr.dev
2.8K followers 288 following 1.3K posts

❤️ Maths and JavaScript 🧑‍💻 Maintaining @babel.dev, @tc39.es delegate, working at @igalia.com 🔗 nicr.dev 🌈🇪🇺

PostsRepliesMedia
Reposted by Nicolò Ribaudo
Rob Palmer @robpalmer.bsky.social · 4h
ECMAScript excitement 😉 Congrats to @ashley-c.bsky.social from TechAtBloomberg on advancing the Composites proposal to Stage 2 at @tc39.es today 🎉 Composites are objects that are compared by value instead of identity. They are an evolution of Record & Tuple proposal.
const pos1 = Composite({ x: 1, y: 4 });
const pos2 = Composite({ x: 1, y: 4 });
pos1 === pos2; // true

const positions = new Set(); // the standard ES Set
positions.add(pos1);
positions.has(pos2); // true
2437
Reposted by Nicolò Ribaudo
Rob Palmer @robpalmer.bsky.social · 4h
ECMAScript excitement 😉 Congrats to @nicr.dev on advancing "Include default export in export * from" to Stage 2.7 at @tc39.es today 🎉 Today re-exporting the contents of another module omits the default export. It is believed this behavior change is web-compatible.
export * from 'mod';
export { default } from 'mod';  // redundant!
1172
Reposted by Nicolò Ribaudo
Rob Palmer @robpalmer.bsky.social · 4h
ECMAScript excitement 😉 Congrats to @nicr.dev on advancing `export defer` to Stage 2.7 at @tc39.es today 🎉 It is a performance feature that permits lazy evaluation of re-exported bindings. It is useful for reducing the cost of partially-used barrel files 👍
export defer { y } from "mod1";
export defer { z } from "mod2";
1214
Reposted by Nicolò Ribaudo
Igalia @igalia.com · 21/09/2026
Today Igalia turns 25. Ten engineers started it in A Coruña in 2001 with no investors and no managers. There are now close to 200 of us, and everything we build still goes upstream. igalia.com/2026/09/21/T...
Igalia's 25th anniversary banner. Three figures from the Igalia logo form the Roman numerals XXV, beside the words YEARS OPEN and a multicoloured circle marked 25th on a timeline arc.
512641
Reposted by Nicolò Ribaudo
patak @patak.cat · 21/09/2026
In a time when most companies are so openly playing against their employees and the rest of us, we should celebrate the existence of beacons like Igalia that shows them it's their choice. Organizations can definitely thrive with fairer structures and be a strong positive force for the world.
31006
Nicolò Ribaudo @nicr.dev · 21/09/2026
Today is Igalia's 25th birthday! 🎂 www.igalia.com/2026/09/21/T...
igalia.com
Twenty-Five Years Upstream | Igalia
Igalia is an open source consulting firm specialised in the development of innovative projects and solutions. Our engineers have expertise in a wide range of technological areas, including browsers an...
28212
Nicolò Ribaudo @nicr.dev · 20/09/2026
If you like LEGO and you like Amsterdam, there is a very nice set on LEGO ideas that recently reached 5k votes and has one more year to reach 10k, so that LEGO staff will then consider it :) ideas.lego.com/product-idea...
Picture of a LEGO set showing a few Amsterdam-style buildings on a canal. There is a bike store on the ground floor of one of the buildings, and a small boat in the canal.
3300
Reposted by Nicolò Ribaudo
danielroe @danielroe.dev · 19/09/2026
don't be nice.
roe.dev
Don't be nice
Sometimes, it's more important to be good than it is to be nice.
41734243
Nicolò Ribaudo @nicr.dev · 18/09/2026
Thanks to the constant reminders by our @e18e.dev friends, we just halved Babel's install size :) (note: due to how npmx.dev computes package size, if you look at it now it looks like the improvement was already in 8.0.0)
Screenshot from npmx.dev
1536
Reposted by Nicolò Ribaudo
Cornelius Emase @lochipi.bsky.social · 15/09/2026
Firefox 155 is out (Sept 1) 🦊 I contributed to the await dictionary proposal: Promise.allKeyed and Promise.allSettledKeyed, an object of promises now resolves to an object of results. Thanks to Mozilla engineers Arai and Daniel for their guidance. #Firefox #JavaScript
1264
Reposted by Nicolò Ribaudo
Santosh Yadav | GDE 🅰️ | GitHub ⭐ | MVP @santoshyadav.dev · 14/09/2026
I'm opening up 5-10 hours a week to work with folks on consulting, DevRel, content, speaking, open source strategy, and team training. If any of that sounds like something your team needs, let's connect: santoshyadav.dev/work-with-me/
Santosh Yadav speaking at React Summit
191
Reposted by Nicolò Ribaudo
Web Witch 🔮 Stephanie Stimac @seaotta.dev · 10/09/2026
I was ahead of the time. blog.stephaniestimac.com/posts/2023/0...
blog.stephaniestimac.com
Designing for Dual Screen and Foldable Devices With CSS - Stephanie Stimac's Blog
Revisiting the CSS media queries and environment variables for foldable devices.
49812
Reposted by Nicolò Ribaudo
James @43081j.com · 09/09/2026
Good stuff being said by @nicr.dev 🙏
2463
Nicolò Ribaudo @nicr.dev · 09/09/2026
So, which one of you just turned on a cache *again*?
Vite downloads count, showing a 30% drop in the last two weeksBabel downloads count, showing a 30% drop in the last two weeksRect downloads count, showing a 30% drop in the last two weeks
2220
Nicolò Ribaudo @nicr.dev · 19/08/2026
I have been working for three days on creating a minimal reproduction for another Rolldown chunking bug... So far I got it down down from a 300-modules test case to a 50-modules one 😅
3140
Reposted by Nicolò Ribaudo
James @43081j.com · 18/08/2026
could someone at GitHub help us out unsuspending an account? 👀 seems Roman has been nuked so a whole truck load of e18e issues/changes have gone missing
252
Nicolò Ribaudo @nicr.dev · 17/08/2026
So the underlying problem was the Italians, a people whose goal is to make everybody's life impossible through useless procedural requests and whose willingness to be useful on their job is zero. I called the German customer service and the problem was fixed in one minute.
280
Nicolò Ribaudo @nicr.dev · 15/08/2026
I think people with LLMs is what will drive me out of open source. Every time I look at PRs in the Babel repo I get sad and annoyed. Somebody opened an issue, I reply "PRs welcome!" and I get 3 PRs with even the *descriptions* LLM-generated.
5835
Reposted by Nicolò Ribaudo
Elena Rossini ⁂ @elenarossini.com · 14/08/2026
#WSocial and #Eurosky are almost head-to-head when it comes to the number of accounts they are hosting, but the two networks could not be more different. One requires age verification via government ID; the other doesn't. One is completely moribund, while the other is thriving 🔥 #ATproto
a screenshot of two browser windows connected to pdsls.dev. the one on the life shows the live firehose of W Social over 1 hour and a half, while the other one shows the firehose of Eurosky during the same exact time period. W Social has 663 events while Eurosky has 30788 events in the same time interval. W Social has 130 posts in 90 minutes while Eurosky has 4635 posts in the same time period.
110223
Nicolò Ribaudo @nicr.dev · 13/08/2026
Other than showing the number of advisory credits on somebody's profile, GitHub should also show at least one of: - security reports that have been discarded with either no comment or a very short comment (or allow triagers to "discard as spam") - the ration of accepted-to-discarded security reports
1161
Nicolò Ribaudo @nicr.dev · 12/08/2026
👀
080
Nicolò Ribaudo @nicr.dev · 10/08/2026
Sometimes I have meetings where after the meeting I think "I'm really happy these are my colleagues"
2260
Nicolò Ribaudo @nicr.dev · 10/08/2026
If anybody is interested in trying, I submitted an issue to the HTML standard that should be an easy first contribution. github.com/whatwg/html/...
github.com
"Apply the history step" calls "attempt to populate the history entry's document" with too few arguments · Issue #12772 · whatwg/html
What is the issue with the HTML Standard? https://html.spec.whatwg.org/#apply-the-history-step It does: In parallel, attempt to populate the history entry's document for targetEntry, given navigabl...
040
Nicolò Ribaudo @nicr.dev · 08/08/2026
I need to cancel a car rental reservation I made with europcar.com (which is cancellable for free according to their T&C!). - When I try from the website it fails because the email I used has a + in it, they have some bug in their server-side URL decoding and it gets converted into a space
4160
Nicolò Ribaudo @nicr.dev · 04/08/2026
A month ago I had to take a train in Italy at 10pm, the train was marked as accessible, it had level boarding, and there were elevators to get to the platform. Problem: the elevators had been turned off at 9:30pm. I reported it, and they are fixing it by... marking late trains as not accessible 🤬
3170
Nicolò Ribaudo @nicr.dev · 02/08/2026
If anybody else is planning to go to TPAC in October, and: - is traveling from the Netherlands, Belgium, France, UK (or close to them) - is interested in joining me by train rather than flying Here is my tentative plan on how to get there. Ask me if you are interested! npmx.social/xrpc/com.atp...
See PDF in the link in the postSee PDF in the link in the postSee PDF in the link in the postSee PDF in the link in the post
100
Reposted by Nicolò Ribaudo
Evariste @evaristegal0is.eurosky.social · 02/08/2026
Motivi per cui sono su eurosky: lo ha attivamente suggerito @nicr.dev ed è tipo la classica persona su internet di cui penso di potermi fidare ciecamente.
241
Nicolò Ribaudo @nicr.dev · 27/07/2026
I reposted and unreposted this three times in a row trying to decide if I want to endorse it or not, but a few thoughts: - sure AI is ethically questionable, but unnecessarily having animals killed for your taste buds' pleasure is too - if you don't care about the ethical aspects but you still [...]
4120
Nicolò Ribaudo @nicr.dev · 16/07/2026
So do we all agree that if somebody's GitHub profile lists "this are all the big open source projects where I had a PR merged", they are a bot? Things like this:
A table showing a list of one contribution per project
11273
Nicolò Ribaudo @nicr.dev · 15/07/2026
So which one of you just turned on a cache?
Weekly download stats for @babel/core, showing a drop from 150M/week in early June to 123M/week nowWeekly download stats for vite, showing a drop from 150M/week in early June to 117M/week nowWeekly download stats for webpack, showing a drop from 50M/week in early June to 39M/week nowWeekly download stats for @babel/core, showing a drop from 45M/week in early June to 28M/week now
2371
Reposted by Nicolò Ribaudo
Eurosky Social @eurosky.social · 07/07/2026
A message to all Eurosky members and friends We need your help - can you support Eurosky with a monthly or one-off donation? If you can, please visit whydonate.com/fundraising/...
Screenshort of a letter (al text continued in thread) 

Title: A message to all Eurosky members and friends

We need your help - can you support Eurosky with a monthly or one-off donation?

We are building Eurosky on the principle that it is possible to build better social tech that also prioritize people’s interests over corporate greed. Since the beginning of the year we’ve taken big steps towards our mission of building independent infrastructure and experience for social media in Europe. 

In April we launched a fundraiser to help accelerate our roadmap, in particular:

- Building a European microblogging app backend, to support European apps
- Growing our PDS capacity
- Supporting up to 100k users

Since then, we have raised nearly €15,000 Euros that have directly contributed to:

- Upgrading our PDS servers, which are now used by more than 22,000 people, up from around 10,000 when we launched the fundraiser - with plenty of room to grow.
- Deploying a high availability Eurosky relay in Europe serving Atmosphere apps, so apps can access Atmosphere data easily from a European source.
- Deploying a PLC mirror in Europe serving Atmosphere apps, to ensure that people’s identities also have a European server.
- Kicked off building the microblogging backend (“app view”) with a deployment planned for the end of July.
- Developed and launched mu, our microblogging application with wildly cool features, hitting 100k active users in its first month, to rave reviews.

Whilst all of this costs more than the 15k we raised, it would not have been possible without it.
23215131
Nicolò Ribaudo @nicr.dev · 07/07/2026
I will be giving a talk at the @zurichjs.com pre-conf warm-up meetup about my experience of being a maintainer of Babel 🎉 It'll be on the Wednesday before the conference: see you all either there or at the conf :) And if anybody is getting a conf ticket, I have a 10% discount I can share in DM.
zurichjs.com
Zurich JS Conf Warm-up meetup | ZurichJS
The week of the conference is here, and so is our most special meetup edition of the year: the warm-up! Let's start it ...
2479
Reposted by Nicolò Ribaudo
patak @patak.cat · 03/07/2026
I'm curious. If you're based in Europe and in tech. Why do you think you're keeping your data in the default bluesky servers? Is it trust on alternatives? Or it doesn't matter much where your data lives? I have a lot of data far from home, but switching to an independent PDS felt like a good move.
18432
Nicolò Ribaudo @nicr.dev · 02/07/2026
I would love it if this was a thing where I lived in Italy, car drivers not caring at all about rules was one of the worst things about where I lived. www.westmidlands.police.uk/police-force...
westmidlands.police.uk
Operation Snap
An initiative to educate and prosecute drivers using footage supplied by the public.
050
Reposted by Nicolò Ribaudo
e18e @e18e.dev · 27/06/2026
Every Babel package is ESM-only now! 🎉 Inflection point. If you were waiting for a signal to leave CJS behind for your packages, this is it!
1879
Reposted by Nicolò Ribaudo
Babel @babel.dev · 27/06/2026
📢 We released Babel 8 last week! Babel now targets modern browsers by default, is now ESM-only, and ships TypeScript types for all of its packages. We waited a week before announcing it to catch any last minute regressions, but now it's time for you to update your Babel version 😄
babeljs.io
Releasing Babel 8 today: ESM-only, drop ES5 default, and a smooth migration path · Babel
Today we are releasing Babel 8. It's been 8 years since we released Babel 7. And that's not without reason.
18612
Reposted by Nicolò Ribaudo
Abbey @abbeyarletto.bsky.social · 23/06/2026
When reality surpasses fiction! Top: fictional forecast for August 2050, broadcast by French TV in 2014 to warn about the consequences of global warming. Bottom: Real French forecast for yesterday, June 22, 2026.
236168357552
Nicolò Ribaudo @nicr.dev · 25/06/2026
I wish there were two different names for bluesky-the-social-network and bluesky-the-client.
3120
Nicolò Ribaudo @nicr.dev · 21/06/2026
So now there are two main European atproto providers (PDS and client), one is open source and one is closed source. Very concerned that the EU talks about how important OSS is, and then they pick the closed source one :/
921243
Reposted by Nicolò Ribaudo
Jordan Harband @jordan.har.band · 19/06/2026
I got really tired of having to manually track down whether a package ships its own types, or has a DefinitelyTyped package, or how that changes over time. so, I made npmjs.com/dt-clean - `npx dt-clean -u` and you'll have the right version of the right DT packages!
npmjs.com
0152
Nicolò Ribaudo @nicr.dev · 16/06/2026
Announcing "bsky-to-mu", a browser extension that automatically redirects bsky.app links to @mu.social. Firefox: addons.mozilla.org/en-US/firefo... Chrome: chromewebstore.google.com/detail/bsky-... GitHub: github.com/nicolo-ribau...
Screenshot of the mu.social homepage, with on top Bluesky and mu.social logos, with an arrow pointing from one to the other.
1313834
Nicolò Ribaudo @nicr.dev · 16/06/2026
I hate that I keep reporting to companies bugs with their software, and they answer is always "we confirm it doesn't work, please don't do it"
2252
Nicolò Ribaudo @nicr.dev · 13/06/2026
Congratulations whoever finally found the correct regexp to validate emails
Screenshot from Firefox devtools, showing a regular expression that hard-codes ~10 top-level domains:

/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.(com|in|it|eu|org|net|edu|gov|co|io|info|us)$/
4380
Nicolò Ribaudo @nicr.dev · 13/06/2026
The website of this Italian company, Unieuro (which sells electronic appliances), is rejecting my email address. I'm always annoyed by websites that reject the + ...
Sign up form with my email hello+unieuro@nicr.dev and an error message
3130
Nicolò Ribaudo @nicr.dev · 12/06/2026
AI bots are now paying other people to use AI to spam open source projects? What is this sickness? Why do you have to make open source suck? github.com/charles-open...
My GitHub notifications, filled with pull requests that do exactly the same thing
2305
Reposted by Nicolò Ribaudo
Joyee Cheung @joyeecheung.bsky.social · 11/06/2026
Today I gave a talk JSNation about the life cycle of ESM in Node.js, how it differs in other environments and the new features that will affect these stages. Slides: github.com/joyeecheung/...
github.com
13812
Reposted by Nicolò Ribaudo
Jiahan Chen @chenjiahan.bsky.social · 11/06/2026
Rspack keeps pushing forward with support for the latest language features. After `import defer`, we're now adding `import source` for Wasm, following the TC39 Source Phase Imports proposal. It lets you import a compiled Wasm module directly. Thanks to @magic_akari for the contribution!
0274
Nicolò Ribaudo @nicr.dev · 11/06/2026
This is so incredibly cool 👀 You can edit posts!!!
181
Nicolò Ribaudo @nicr.dev · 10/06/2026
How do I get verified by @npmx.dev
3130