So, we can wave our arms in similar fashion at front end space. This is variant of “no true Scotsman” fallacy. Example:
Waves arms all this churn is in the frontend infra space. Assuming your infra already worked for you maybe you’ve gone from JavaScript/React five years ago to writing Typescript/React today.
JavaScript infra has seen larger than usual push around contain^H^H^H^H^H err around “bundling”, but it’s normal to see large upheavals every now and then
The argument is a ton weaker in the frontend space. Even if you got into React early and stayed there there has been numerous upheavals in "the correct way to do react" from class style to functional style and a ton of different ways to do state (redux and friends) etc, hooks, bleh.
It's insanely dishonest to try palm off bundling as infra, it has absolutely nothing to do with infra just like Java build systems have essentially zero to do with infra. All of the churn in Webpack/esbuild/vite/whatever is entirely on the frontend space and they have no one to blame but themselves for the mess they have created.
The proper solutions have been known for a long time but for various political reasons they have remained untenable to implement. Namely NaCL, WASM and friends. Everyone knows JS is a poor language but it's the only available web runtime (hence why we have so much transpilation) but because of the fractured web engine ecosystem and no standards body with backbone it can't be reasonably fixed right now.
Failing that the least the JS community could do would be find a way to work reasonably with real build systems like Bazel, Pants, Buck etc instead of continually trying to poorly implement build systems themselves that just plain suck (looking at you nx).
All these things are a matter of perspective. Look close enough and you will find new ideas (“churn”) happening in every area of programming. What is the difference between Nx vs Nix, Gradle vs Bazel, gRPC vs Twirp, MessagePack vs CBOR, C++ vs Rust, dep vs go mod, ARM vs RISC V? Why is it that Webpack vs Vite is worthy of such frustration compared to any of the above?
Frontend tooling is as much “infra” as Docker is. In fact they’re quite similar, since in both contexts the goal is to ship code to multiple platforms.
> This sequence is still used humorously for epanorthosis by computer literates, denoting the deletion of a pretended blunder, much like a strikethrough; in this case, however, the ^H symbol is faked by typing a regular '^' followed by typing a regular 'H'.
> An epanorthosis is a figure of speech that signifies emphatic word replacement. "Thousands, no, millions!" is a stock example. Epanorthosis as immediate and emphatic self-correction often follows a Freudian slip (either accidental or deliberate).
Waves arms all this churn is in the frontend infra space. Assuming your infra already worked for you maybe you’ve gone from JavaScript/React five years ago to writing Typescript/React today.
JavaScript infra has seen larger than usual push around contain^H^H^H^H^H err around “bundling”, but it’s normal to see large upheavals every now and then