my big gripe with npm is that the global packages overshadow the local packages... I can't understand when that would be a good option other than maybe having an option to do so but not being the default. I can't think of another package manager that does this.
oh that and installing thousands of packages in the project root instead of a sensible place that could be shared per version like bundler and rubygems.