The entire history of npm screams "we're pretty much learning all of this as we go, please bear with us".
While there's nothing wrong in that (people have to learn somehow) it does make it very, very hard to put any trust in that project. Especially when said project is at the very center of an entire ecosystem, it makes it hard to trust the ecosystem as well. I'm already seeing a lot of good developers move away from node as they gain experience and realize things should be much better.
Its pretty much standard for literally any project I've seen without senior devs to see these bugs before a release.
What are you seeing them move to?
I converted a lot of developers to Clojure myself. That language is by far the most fun I've had writing software in almost two decades of experience, where the fun comes from having simple yet really powerful tools rather than easy-to-learn-but-generates-complexity ones.
Having done projects in both languages the later is definitely much simpler and this translates into less code that does more. Its then much easier to maintain and add features.
Most of the JS/TS projects I see lose iteration speed over time, while CLJ/CLJS projects I see gain iteration speed over time.
I think by "npm of one year ago" they mean npm 4, since npm 5 came out last May. If so, "up to 17x" is plausible. But even though technically true, this is a cheap marketing move, IMO. If one doesn't read carefully, it may register as "npm 6 is 17x faster than whatever came out last year, that is npm 5".
IMO yarn was a protest movement when npm wasn't adding the features devs wanted. npm5 is the direct result and yarn should pat itself on the back and bow out to avoid fragmenting the community.
Why should yarn bow out? Correct me if I'm wrong, but the yarn project didn't do the following: - put a pre-release build under a tag that looks like a normal build without a pre suffix - had documentation that expressed sudo as an acceptable way to do things to end users - then had a bug which torched machines if they ran any npm command under sudo. (which you shouldn't do anyway, but see point 2) - when pushing the fix, put hashtags in the announcements with a distinct tone of blame towards the end users.
This was the famous "rm -Rf /" bug.
> put hashtags in the announcements with a distinct tone of blame towards the end users.
What are you referring to?
Probably this: https://blog.npmjs.org/post/171169301000/v571
No thanks. NPM caused the usability and feature problems first and there's no reason it won't happen again if there was no competition. Yarn is still better overall and I'm much rather they stick around.
Also, I think npm released it's lockfile too quickly. It didn't work for quite a while. Maybe it does now, I don't know, because any npm projects I have I have turned off package-lock due to it not working in the past. Yarn's lockfile just works, and always has.
So I'll stick with Yarn as long as they just keep it stable the way it is.