From: W. eWatson on
In my on-again-off-again experience with Python for 18 months,
portability seems an issue.

As an example, my inexperienced Python partner 30 miles away has gotten
out of step somehow. I think by installing a different version of numpy
than I use. I gave him a program we both use months ago, and he had no
trouble. (We both use IDLE on 2.5). I made a one character change to it
and sent him the new py file. He can't execute it. I doubt he has
changed anything in the intervening period.

A further example. Months ago I decided to see if I could compile a
program to avoid such problems as above. I planned to satisfy that need,
and see if I could distribute some simple programs to non-Python
friends. I pretty well understand the idea,and got it working with a
small program. It seemed like a lot of manual labor to do it.
From: geremy condra on
On Thu, Aug 5, 2010 at 6:50 PM, W. eWatson <wolftracks(a)invalid.com> wrote:
> In my on-again-off-again experience with Python for 18 months, portability
> seems an issue.
>
> As an example, my inexperienced Python partner 30 miles away has gotten out
> of step somehow. I think by installing a different version of numpy than I
> use. I gave him a program we both use months ago, and he had no trouble. (We
> both use IDLE on 2.5). I made a one character change to it and sent him the
> new py file. He can't execute it. I doubt he has changed anything in the
> intervening period.

Portability doesn't mean you can use different versions of your
dependencies and be A-OK. It should be fairly obvious that if the
behavior of your dependencies changes, your code needs to change to
ensure that it demonstrates the same behavior. Portability also
doesn't mean that any given one-character change is valid, so that may
be your issue as well.

> A further example. Months ago I decided to see if I could compile a program
> to avoid such problems as above. I planned to satisfy that need, and see if
> I could distribute some simple programs to non-Python friends. I pretty well
> understand the idea,and got it working with a small program. It seemed like
> a lot of manual labor to do it.

What, why were you compiling a program? And why not just use distutils?

Geremy Condra
From: W. eWatson on
On 8/5/2010 7:45 PM, geremy condra wrote:
> On Thu, Aug 5, 2010 at 6:50 PM, W. eWatson<wolftracks(a)invalid.com> wrote:
>> In my on-again-off-again experience with Python for 18 months, portability
>> seems an issue.
>>
>> As an example, my inexperienced Python partner 30 miles away has gotten out
>> of step somehow. I think by installing a different version of numpy than I
>> use. I gave him a program we both use months ago, and he had no trouble. (We
>> both use IDLE on 2.5). I made a one character change to it and sent him the
>> new py file. He can't execute it. I doubt he has changed anything in the
>> intervening period.
>
> Portability doesn't mean you can use different versions of your
> dependencies and be A-OK. It should be fairly obvious that if the
> behavior of your dependencies changes, your code needs to change to
> ensure that it demonstrates the same behavior. Portability also
> doesn't mean that any given one-character change is valid, so that may
> be your issue as well.
>
>> A further example. Months ago I decided to see if I could compile a program
>> to avoid such problems as above. I planned to satisfy that need, and see if
>> I could distribute some simple programs to non-Python friends. I pretty well
>> understand the idea,and got it working with a small program. It seemed like
>> a lot of manual labor to do it.
>
> What, why were you compiling a program? And why not just use distutils?
>
> Geremy Condra

I checked the one char change on my system thoroughly. I looked around
on some forums and NGs 4 months ago, and found no one even had a simple
"compiled program" available to even demonstrate some simple example.

I would think there are some small time and big time Python players who
sell executable versions of their programs for profit?

disutils. Sounds familiar. I'm pretty sure I was using Py2Exe, and
disutils might have been part of it.

So how does one keep a non-Python user in lock step with my setup, so
these problems don't arise? I don't even want to think about having him
uninstall and re-install. :-) Although maybe he could do it without
making matters worse.
From: geremy condra on
On Thu, Aug 5, 2010 at 8:28 PM, W. eWatson <wolftracks(a)invalid.com> wrote:
> On 8/5/2010 7:45 PM, geremy condra wrote:
>>
>> On Thu, Aug 5, 2010 at 6:50 PM, W. eWatson<wolftracks(a)invalid.com>  wrote:
>>>
>>> In my on-again-off-again experience with Python for 18 months,
>>> portability
>>> seems an issue.
>>>
>>> As an example, my inexperienced Python partner 30 miles away has gotten
>>> out
>>> of step somehow. I think by installing a different version of numpy than
>>> I
>>> use. I gave him a program we both use months ago, and he had no trouble..
>>> (We
>>> both use IDLE on 2.5). I made a one character change to it and sent him
>>> the
>>> new py file. He can't execute it. I doubt he has changed anything in the
>>> intervening period.
>>
>> Portability doesn't mean you can use different versions of your
>> dependencies and be A-OK. It should be fairly obvious that if the
>> behavior of your dependencies changes, your code needs to change to
>> ensure that it demonstrates the same behavior. Portability also
>> doesn't mean that any given one-character change is valid, so that may
>> be your issue as well.
>>
>>> A further example. Months ago I decided to see if I could compile a
>>> program
>>> to avoid such problems as above. I planned to satisfy that need, and see
>>> if
>>> I could distribute some simple programs to non-Python friends. I pretty
>>> well
>>> understand the idea,and got it working with a small program. It seemed
>>> like
>>> a lot of manual labor to do it.
>>
>> What, why were you compiling a program? And why not just use distutils?
>>
>> Geremy Condra
>
> I checked the one char change on my system thoroughly. I looked around on
> some forums and NGs 4 months ago, and found no one even had a simple
> "compiled program" available to even demonstrate some simple example.

That would be because Python is an interpreted language.

> I would think there are some small time and big time Python players who sell
> executable versions of their programs for profit?

Yes. What's your point?

> disutils. Sounds familiar. I'm pretty sure I was using Py2Exe, and disutils
> might have been part of it.

distutils.

http://docs.python.org/library/distutils.html

> So how does one keep a non-Python user in lock step with my setup, so these
> problems don't arise? I don't even want to think about having him uninstall
> and re-install. :-) Although maybe he could do it without making matters
> worse.

That's going to hinge on what your dependencies are.

Geremy Condra
From: W. eWatson on

>> I would think there are some small time and big time Python players who sell
>> executable versions of their programs for profit?
>
> Yes. What's your point?
That someone must know how to distribute them without having the source
code ripped off.
>
>> disutils. Sounds familiar. I'm pretty sure I was using Py2Exe, and disutils
>> might have been part of it.
>
> distutils.
>
> http://docs.python.org/library/distutils.html
I don't see ;how distutils is going to solve this problem. Are you
suggesting the program should be packaged? Why? I can just send it to
him as py code. distutils looks like it's for library modules, e.g.,
functions like math.
>
>> So how does one keep a non-Python user in lock step with my setup, so these
>> problems don't arise? I don't even want to think about having him uninstall
>> and re-install. :-) Although maybe he could do it without making matters
>> worse.
>
> That's going to hinge on what your dependencies are.
>
> Geremy Condra