As the days roll on today, we're rapidly approaching a time when every word in the dictionary has an associated package on NPM. There's an epoch I look forward to that I call "peak js" when we have to start fracking for package names. NPM will change their community guidelines so people can reserve things like "HolocaustJS" (a templating engine for dockerizing existential dread about lives wasted naming things on npm, Fork me on github!) -- because everything less offensive will be taken.
Money will be spent reviving dead languages by sampling the acoustics encoded in the drying bricks of their temples so that we'll have new words to apply npm packages to. That's the kind of hellscape we're headed for, unless we act now to reduce, reuse and recycle.
The notion of a centralized namespace is obselete. We will just have thousands of packages called “Squeak” and we will socially key packages by universe/name instead of name. In the default case the universe will be implied so it won’t even look that different from today.
But there will be infinite universes. We will spread out. Just like what’s happening in culture now. (The recent Twitter/Facebook/YouTube bannings being a perfect example of namespace fracturing)
Often if my first choice is taken I just try to get more specific about the name and the name actually gets better.
The existential poverty of names is only an issue if you’re trying to name your stuff something cutesy and arbitrary, like “squeak”. If you just call the thing what it is you’ll have no trouble putting it in the public namespace.