A big congrats are in order. Yarn came out just as I started working in the node ecosystem, and it fixed nearly all my dependency manager problems.
Since then it's evolved and it's really helped provide a counter to npm offering different design choices but working together where it counts. It's the 4th most popular brew dependency and ~25% of npm downloads. People love it.
Congrats Yarn team - you've been doing a great job.
I jumped on node around the same time and I've come to an opposite conclusion.
The things I liked was the offline cache and the yarn integrity.
However there was just too many issues regarding its dependency on npm and not playing nice with other tools such as brew.
I dove into the code to try and fix these issues but both the quality of the code base and the politics going on in the issue tracker turned me off very quickly. [1]
If yarn had been approached with more senior developers I think it could have replaced npm entirely.
> If yarn had been approached with more senior developers I think it could have replaced npm entirely.
Some very senior developers were involved in it's development including the original author of Babel, someone who has been a core member of and contributor to jQuery, Rails, Rust & Ember, people who have/currently work on Chrome, Node core, etc etc etc.
If those people aren't "senior" developers, you're going to have to explain what you mean by that.
Also replacing npm means replacing npm as the bundled package management tool that comes with node, and likely replacing the fact that they use the npm registry.
> If yarn had been approached with more senior developers I think it could have replaced npm entirely.
The biggest reason by far why Yarn got so popular so quickly was because it didn't come and try to split the existing ecosystem but chose build on top of npm's foundation with ways that npm didn't (at that point) offer instead.
I feel that if yarn kept its strategy but had more senior developers writing the core software I think it could have been able to outpace npm in terms of features and speed.
If this had have been the case then it wouldn't make sense to use npm at all. Yarn would be faster and have more features.
From my experience I feel that yarn isn't offering much value now and the codebase quality means that future features will take too long to build.
Perhaps I'm wrong, but from your posts here I don't get the sense that you were close enough to the project to really know their team composition or how to improve it. Your prescription comes off as armchair quarterbacking.
Since then it's evolved and it's really helped provide a counter to npm offering different design choices but working together where it counts. It's the 4th most popular brew dependency and ~25% of npm downloads. People love it.
Congrats Yarn team - you've been doing a great job.
* https://stats.yarnpkg.com * https://brew.sh/analytics/install-on-request/