My dad used to tell me about an old car he used to have—the Chevrolet Chevette. It was an inexpensive compact car with rear-wheel drive from the late 70s. As he described it, “all the thrills of high-speed driving at low speeds.”
That’s how I feel about the JavaScript ecosystem sometimes. There are so many dependencies and libraries that dealing with breaking changes, performing security updates, and figuring out subtle bugs between versions is a high-scale activity. The problem is, you have all the thrills of high-scale software development even on small-scale projects.
(Although maybe it’s more of Pinto which had a habit of exploding into a fiery mess when rear-ended).
See also:
- Frontend JavaScript toolchains trade off ease of adding dependencies over bundle size
- TypeScript undermines the value of the JavaScript ecosystem and static typing