Likely controversial take: Adding spec compliant ESM support to Node.js has not improved developer experience... In fact, it's likely made it objectively worse.
Let me clarify. ESM is a good approach to addressing a specific technical challenge. The difficulty with DX is the situation we are now in where we don't only have two module architectures, we have at least four (CJS, Spec compliant ESM, Babel/WebPack, TypeScript)...
... all of which differ enough from each other to cause interop issues. For entirely homogeneous environments, this is largely not a problem, and spec compliant ESM can be used effectively.
Note, that this is not a failing of the folks who have worked to implement the spec compliant ESM support, but of the constraints of the architecture itself.
You can follow @jasnell.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: