Python is a popular software environment. Well, really, it's a very large number of independently maintained custom environments. That's the problem: There's no way to accommodate all desired environments system-wide. Any given specific Python environment is likely to conflict with another, and, especially with the required operating system support environment. There are two ways to resolve this:
1. Users can maintain their own Python environments.
2. Research groups can share a single (or few) custom environments.
The advantage of _1_ is ultimate flexibility, plus it trains the users in a valuable skill. The disadvantage is that each user must maintain all aspects of their Python environment, plus there is not an easy way to share a common configuration among users this way.
The advantage of _2_ is that a limited number of custom environments may be shared among a research group without the need for each individual to maintain the environment. The disadvantage is reduced flexibility, plus someone gets stuck doing the maintenance.
So far, as far as I can tell, we're just doing option _1_.
Note that I'm (@ljg) no Python expert, so please feel free to join the [discussion]() on this topic or directly fix this Wiki page.