I’ve to agree with a lot of what the author is writing there.
Far to often I’ve came back to a somewhat older phoenix project - where the assets pipeline is still relying on webpack - only to discover that some dependencies are considered outdated (and maybe even associated with a security risk) and updating introduces breaking changes. Frankly it’s a pain in the a**.
Yes, I suffered the same, it was before esbuild and I was so pissed off that I moved that entire project to ClojureScript/ShadowCLJS, I have been free of cursing and swear words for two years now (it’s also been two years since I last used JS professionally, no relation, just saying), but every time I see run into JS codebase, I feel tested.
Not sure if this should be a good thing to do, but maybe we could open up a thread where we talk about technologies we dislike and get to share horror stories… in the spirit of October!
I’m a frontend developer and though have come to expect the churn and other issues associated with frontend development, that doesn’t make it enjoyable.
Node and npm brought more cohesion but many problems and issues as well. It’s creator, Ryan Dahl essentially wanted a do over in the form of Deno.
So for me, as someone looking to the future of JS, I have to wonder a few things:
It’s understandable why there is no cohesion in the JS community. At the end of the day, when you have an open source driven community with a LOT of devs it’s bound to be a lot of churn for the reason that there is no one company that is driving the direction on where dev effort should be be focused.
The unfortunate thing about that is obviously we have day to day devs that need to solve real world business problems using frameworks and libraries built by people that are just constantly evolving proof of concepts LOL. Unlike mobile that is more focused on building consumer facing apps, the JS community is basically a hotbed of experimentation which is only bad when devs need to deliver value for a business. Otherwise it’s great for validating techniques that the dev community wants to coalesce around. We could argue that React validated building declarative UIs (even though it was around before React). But because of the JS community us mobile devs got Jetpack Compose and SwiftUI.
For this reason, I appreciate the JS community but I want nothing to do with it. In my eyes, it’s just there as an R&D community that will have ideas spill out in to other communities that are more cohesive.
As devs, I think one thing that we have to accept is that we got in to this to BUILD stuff. It’s the build process that drives a lot of us to create. You will often see people on GitHub ask the author of a lib/framework “Why did you create this instead of extend library/framework X?” And the answer to that question, is why be a dev if all you do is cobble together other peoples work? LOL