Python GUIs: Portability or not?

Mikael Lyngvig Mikael.Lyngvig at p98.f112.n480.z2.fidonet.org
Fri Jul 2 01:51:43 EDT 1999


From: mikael at toolwood.com (Mikael Lyngvig)

On Thu, 1 Jul 1999 23:16:00 -0500, Travis Oliphant <olipt at mayo.edu>
wrote:

>It struck me that all this talk of a cross-platform GUI might be
>preventing a lot of very good GUI's from being used.

Well, it probably is.  But, I, for one, have this fobia about
portability - it's so easy to give up and so hard to get back :)  My
experience is that the moment you give up portability, you give up
lots of chances to verify the architecture and implementation of your
application.  No chance to compile with, say, five different compilers
on different platforms and benefit from the fact that the XXX compiler
is so great about detecting unreferenced variables in switch
statements, while the YYY compiler catches memory allocation errors in
a brilliant way.  No chance to try it out on your Y box, because
there's such a nifty profiler.  No chance to check if your binary file
formats are sound by exchanging data files between little-endian and
big-endian machines.  All in all, I think portability is a much bigger
thing that the ability to compile and run your app on some obscure
machine nobody you know has ever seen in real life. 

(and portability also makes it possible to distinguish the pro from
the amateur, in these times of GUI IDEs with wizards and all :-)

>So, I looked in to PyGtk and PyGnome (with its Gnome Canvas) and I'm
>impressed.  Right now it fits what I want to do very well and it works on
>systems with an X server (aren't X servers available for MAC's and
>Windows?)  

I don't know about the Mac, but I'm sure there are X servers available
for NT.  However, not like they are available for Linux and other Unix
boxes - you don't just download the X11 source, compile it, and that's
it (unless a lot has changed the last few years).

You'd probably have to buy a commercial X server for NT or, even
worse, ask your users to do so.

>So, I'm happy with it. If you're in the same situation you
>might like it too.  

Well, I'm happy that you're happy!  

Even though I probably won't even get to need the Unix portability, I
still sleep much better if I know that I don't have to discard by GUI,
the day I'm asked to do a Linux port.  And, then again, if the GUI is
isolated cleanly enough from the application, unlike Tk's
implementation (...), it wouldn't be such a big task to switch GUI. 

However, for many projects I agree with you - portability is not a big
issue.  For instance, I've been considering to do a decent Microsoft
Visual SourceSafe client (a  Win32-specific revision control system)
in Python.  In such a case, there would be no need whatsoever for
portability outside Win32 (i.e., between Windoze 9x and Windows NT).

Gotta think this over for a while, because you're probably more right
than I'd like to think.  Anyway, it appears that the best candidates,
for my needs, wxWindows and FOX (which I haven't evaluated yet), are
both portable to Win32 and a lot of other platforms. 

Can PyGTK be used on Win32 without an X server?

>I tend to agree that there is plenty of room for more than one GUI.

And, luckily, there are more than one!


-- Mikael




More information about the Python-list mailing list