Le 15/03/2016 14:12, Paul Moore a écrit :
On 15 March 2016 at 12:38, Oscar Benjamin oscar.j.benjamin@gmail.com wrote:
Why would we not want python on PATH?
You should probably go and hunt out previous discussions (your best bet is likely the python-dev archives). They were pretty extensive, and I'd likely get details wrong if I tried to summarise.
If it's because of having multiple installed Pythons then maybe it's possible to improve the installer so that it gives the user a selection of which is on PATH and adds it by default if it isn't already there.
Certainly it's only an issue if the user has multiple Pythons. Of course, this can include things like conda or ActiveState Python, or programs like Lilypond that bundle Python.
Some issues I recall:
- You can improve the Python 3.6 installer, but if the user installs
Python 2.7 after 3.6, they'll get the old installer with that. And conda may do something else altogether. So fixing just one installer doesn't remove the issue. 2. User installs can only add to the user part of PATH, which the OS adds *after* the system PATH. So if you do a system install and a user install, the system install will *always* take precendence, regardless of what you ask for. This is particularly problematic as Python 3.5+ defaults to a user install. 3. When you ask for a new Python to be added to PATH, should previous ones be removed? If you then uninstall the new Python, will you be left with nothing on PATH?
I've seen the view expressed that PATH is for the user to manage and installers have no business changing it at all. While I'm not sure that many people who write installers would agree with that, having dealt with my own share of messed up PATHs caused by installers, I can certainly sympathise with that position.
Paul
Yes, but you are able to deal with those issues. And they happen rarely.
Failing to run Python in the terminal occurs every single introduction course I give. Every single one. And without help, a beginner will have trouble solving it because it's hard to search in Google for something you know nothing about. So some of them, the ones that can understand English and see the value of looking it up for hours, may solve it. The other ones will give up.
Another problem is the gigantic time and energy wasted for this : I have to tell about this box in every course, write it down (with screenshot) in every tutorials, mention it in every videos I do. And yet, yet! People still come to me, write comments, emails, not understanding why typing "python" in this big black windows doesn't work.
And then, you have the worst case scenario. The one where the person, a bit tech saavy, tried to edit the PATH manually in this tiny, unresizeable window, and messed it up. Now, try to diagnose that over skype, or on a forum, or on twitter...
I already made the choice to spends hours of my life helping people with Python, but I wish I could spend it on explaining how they can make their computer do nice stuff, not on making sure they tick boxes.