Broadly, you're not wrong. But I see this sort of exceptionalism quite a lot: "<ecosystem> tooling is terrible". Terrible relative to what? I work with tooling across a wide range of languages - some do it better than others but I wouldn't say JS is exceptionally bad relative to others.
E.g. Python tooling has been some of the worst for a long time. Recently Astral have been making positive changes to this (& I note the cross-pollination of Astral & BiomeJS devs) but across the ecosystem things are broadly still terrible on average, especially in fragmentation terms. C/C++ has less of a fragmentation issue & more of a non-adoption-of-anything-standard-at-all issue (Make doesn't count when every Makefile is custom). Java tooling isn't too fragmented as long as you're an IDE user - but it's so locked into UIs & the cli tooling is horrific.
There's problems all over. JS is honestly one of the least worst I've seen.
Broadly, you're not wrong. But I see this sort of exceptionalism quite a lot: "<ecosystem> tooling is terrible". Terrible relative to what? I work with tooling across a wide range of languages - some do it better than others but I wouldn't say JS is exceptionally bad relative to others.
E.g. Python tooling has been some of the worst for a long time. Recently Astral have been making positive changes to this (& I note the cross-pollination of Astral & BiomeJS devs) but across the ecosystem things are broadly still terrible on average, especially in fragmentation terms. C/C++ has less of a fragmentation issue & more of a non-adoption-of-anything-standard-at-all issue (Make doesn't count when every Makefile is custom). Java tooling isn't too fragmented as long as you're an IDE user - but it's so locked into UIs & the cli tooling is horrific.
There's problems all over. JS is honestly one of the least worst I've seen.