Prev: Finding the version # of a module, and py moduleproblem
Next: Struggling to convert a mysql datetime object to a python stringof a different format
From: W. eWatson on 5 Aug 2010 21:50 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 5 Aug 2010 22:45 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 5 Aug 2010 23:28 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 5 Aug 2010 23:50 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 6 Aug 2010 11:00
>> 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 |