The US tariffs on pharmaceutical products are funny because it's not like the US has a problem of prices being driven down due to cheap foreign medicines
05.08.2025 13:08 โ ๐ 7 ๐ 0 ๐ฌ 1 ๐ 0@nicr.dev.bsky.social
โค๏ธ Maths and JavaScript ๐งโ๐ป Maintaining @babel.dev, tc39.es delegate, working at @igalia.com ๐ https://nicr.dev ๐๐ช๐บ
The US tariffs on pharmaceutical products are funny because it's not like the US has a problem of prices being driven down due to cheap foreign medicines
05.08.2025 13:08 โ ๐ 7 ๐ 0 ๐ฌ 1 ๐ 0Are those toilet paper holders? ๐
05.08.2025 10:45 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 0- place nodes in the same column as the first edge that discovers them
03.08.2025 19:09 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0What I'm doing is:
- assign a direction to all edges so that it's a DAG
- sort the nodes topologically
- we'll draw on a grid, where each node is a row
- traverse the DAG, drawing all the edges in the leftmost column where all the cells needed for the edge don't already have a vertical line
A graph with, on the left, a line with three nodes: (bottom to top) - A - s1 (A -> B) - B There is a second branch on the right, starting from A and arriving to B, with a node in the middle labeled as s2 (A -> B)
And it also has a plain text renderer for testing!
This means "I planned to take train s1 from A to B, but due to reasons I instead had to take s2"
Building a little graph rendering library for my train travel log app, and oh rendering graph is difficult
03.08.2025 16:30 โ ๐ 9 ๐ 0 ๐ฌ 2 ๐ 0:/ I guess I'll use JS
02.08.2025 21:31 โ ๐ 0 ๐ 0 ๐ฌ 0 ๐ 0Can I do this in CSS?
"When I hover over an element with a data-foo attribute, make all the elements that have data-foo _set to the same value_ red"
where the values of data-foo are arbitrary
There is a typo in the English version of the EU common form for train compensation requests (europa.eu/youreurope/c...), which in section 4 says "rrecurrent" instead of "recurrent". Anybody knows how to get it fixed? Maybe @ec.europa.eu?
01.08.2025 21:37 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 050 days to go till SquiggleConf 2025! 5๏ธโฃ0๏ธโฃ
30.07.2025 16:59 โ ๐ 5 ๐ 1 ๐ฌ 0 ๐ 0Proposals waiting on tests. Implementations happen in stage 3.
30.07.2025 14:49 โ ๐ 3 ๐ 0 ๐ฌ 0 ๐ 0let arr = new Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]); console.log(arr.toBase64()); // 'SGVsbG8gV29ybGQ=' console.log(arr.toHex()); // '48656c6c6f20576f726c64' let string = 'SGVsbG8gV29ybGQ='; console.log(Uint8Array.fromBase64(string)); // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]) string = '48656c6c6f20576f726c64'; console.log(Uint8Array.fromHex(string)); // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100])
ECMAScript excitement ๐
Congrats to @bakkot.com on advancing UInt8Array โ๏ธ Base64/Hex to Stage 4 at TC39 this week ๐
UInt8Array.prototype.
toBase64
toHex
UInt8Array.
fromBase64
fromHex
It lets you convert directly between binary data and Base64/Hex strings ๐
Nope, NL :)
27.07.2025 15:16 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0Thank you!
27.07.2025 13:14 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0Unfortunately it's not compatible with how much I travel ๐ญ
26.07.2025 19:13 โ ๐ 3 ๐ 0 ๐ฌ 1 ๐ 0Uh, where? ๐
26.07.2025 19:12 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 0A container full of bright pink fresh ice cream
After moving to a country where ice cream is generally bad and super expensive... We finally got an ice cream machine!
(raspberries :))
Oh also, because due to the self-inflicted problem of mandatory seat reservations you'd need to actually regenerate tickets for all passengers and make sure that they actually know what's their new seat.
25.07.2025 20:43 โ ๐ 2 ๐ 0 ๐ฌ 0 ๐ 0Because the whole like between Paris and Lyon had to be closed for a couple hours!
25.07.2025 20:36 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 0Picture of a departure board, with all trains delayed ranging between 3:10 and 4:40 hours
Terrible day for French trains (and obviously, I always end up traveling on the worst days possible)
25.07.2025 19:58 โ ๐ 4 ๐ 0 ๐ฌ 1 ๐ 03.6M downloads/week, and it's completely gone (including old versions)
github.com/stylus/stylu...
So... now that npm is causing left-pad problems by itself, what is the solution?
23.07.2025 11:21 โ ๐ 9 ๐ 1 ๐ฌ 3 ๐ 3It's like USB-A, just click both sides
21.07.2025 14:03 โ ๐ 3 ๐ 0 ๐ฌ 0 ๐ 0Nice article
pvigier.github.io/2019/05/06/c...
๐
14.07.2025 15:56 โ ๐ 18 ๐ 3 ๐ฌ 1 ๐ 0I got 16/28 questions (wrong)!
11.07.2025 19:28 โ ๐ 13 ๐ 0 ๐ฌ 2 ๐ 0The 129th Ecma GA in Geneva on 25th June approved new recognition awards to people for their contributions and services. We at Igalia would like to congratulate our friends and collaborators @robpalmer.bsky.social and Michael Saboff for being awarded and thank them for their diligent work in TC39.
04.07.2025 15:31 โ ๐ 23 ๐ 6 ๐ฌ 0 ๐ 0Yep
04.07.2025 17:12 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0I mean you can also do it with if/else:
if (A) {
/* do the A stuff */
}
if (A || B) {
/* do the A or B stuff */
}
or
if (A) {
/* do the A stuff */
if (B) {
/* do the A or B stuff */
}
} else if (B) {
/* do the A or B stuff */
}
the problem is that they cause duplication
One could write it with switch/case in some languages, but it's incredibly confusing:
switch (true) {
case A:
// to this when A is true
case B:
// to this when A or B is true
}