#!/usr/bin/env python vs. #!/usr/bin/python

Ben Finney bignose+hates-spam at benfinney.id.au
Fri May 2 10:43:02 EDT 2008


Roy Smith <roy at panix.com> writes:

> In article <87r6ckzvyv.fsf at benfinney.id.au>,
>  Ben Finney <bignose+hates-spam at benfinney.id.au> wrote:
> 
> > Whereas if Python is *not* installed from an OS package, it's up
> > to the sys admin to ensure that it works -- not up to my program.
> > So I don't see the point in making it work by default, when what I
> > want for my program is that it works *with the default Python*,
> > not with some non-default installation.
> 
> Ben,
> 
> Have you ever shipped software to a customer?

Yes, and all parties have been quite happy with the results.

> Imagine the following conversation:
> 
> Customer: "Your product is broken. It says it can't find python, and
> I know I have it installed".
> 
> Vendor: "Where do you have it installed?"
> 
> Customer: "In /opt/bin/python"
> 
> Vendor: "Oh, that's your problem, it HAS to be in /usr/bin/python".

At this point the vendor isn't me, because this statement isn't true.
See below.

> Customer: "I can't install it there because <insert whatever silly
> reason the customer has>. If you can't make your product work
> without requiring me to install python in /usr/bin, I'm afraid I
> can't buy your product".

At this point they have the simple option of running the program with
'python /path/to/the/program'. It's certainly not a case of "can't
make the product work".

It is, however, a case of "can't automatically account for every local
customisation sysadmins choose to make on their systems". Perfectly
willing to work with them to get their specific environment working,
but as a matter of simple economics it's not worth my time to attempt
to make such corner cases work automatically.

> If you want to hard-code /usr/bin/python into your application,
> that's your decision. If you would like to take on the task of
> convincing every sysadmin in the world to do things the way you
> think they should be done, have fun.

If they've already chosen to install Python to some unpredictable
location, they know what they're doing enough to invoke the program in
a specific way to get it working.

-- 
 \     Rommel: "Don't move, or I'll turn the key on this can of Spam!" |
  `\                             -- The Goon Show, _Rommel's Treasure_ |
_o__)                                                                  |
Ben Finney



More information about the Python-list mailing list