If you have an application (lets say offlineimap, which is one I use), then you have two options:
1.) Install via a package manager (if they have it) 2.) Install via pip (or whatever)
But #2 is a step backwards. Imagine having to learn the ecosystem and tools for every programming language just to get common apps running. And then being responsible for updating all the virtual environments, etc.
Package managers are a very useful abstraction for end users who don't always care and just want shit to work. But fragmentation is increasing, and each language is going the blackjack and hookers route (Futurama reference).
I don't see an easy solution, unfortunately.