python or java for my graphical app?

Chetan Ahuja ahujache at cse.msu.edu
Tue Jun 13 15:44:57 EDT 2000


 Hi,
 (Short version)
   I had created a graphical app, including some animation font
   mangling (rotation of characters etc)  in Java2 last year. Now I am
   thinking of porting it to python. Should I go for it?

(Some Details)
    The application is an education tool for kids etc. which uses
    stuff like dancing, moving words on the screen. It needed to be
    cross platform (at least Windows and Mac and maybe linux if
    possible) so I used Java2. I know Java2 was not available for many
    different platforms at that point but I knew it would be
    eventually. Now I'm thinking of porting it to python for the
    following reasons: (I don't know any python at the moment but I
    don't mind spending a few days learning what seems to be a useful
    tool going by the press )

   1) Many JVM's seem to interact very badly with the OS due to the
      varying threading models used. This screws up the timings of the
      animation ( how fast the word moves across the screen etc.)
      a program that worked more or less OK on windows ran horribly on
      the Linux JDK. 
   2) The general slowness and heavyness of Java. Anytime you start a
      JVM, my PII 400 system with 128 Meg of RAM feels like an old
      386. What about people, schools etc with slightly older
      systems. Again, animation timing will suffer.

  3) I like developing on linux and Java support, specially for
      graphics and fonts etc is nothing short of awful on linux.

      I know python is OK on count (3). I'd like to hear experienced
      python programmer's opinions on points 1 and 2.

       Also, one of my concerns is how much of python runtime I have
       to ship with my app? Can I remove what is not needed by my
       application or the whole thing has to be shipped.

       Another thing is, is there any choice of graphic toolkits at
       all or Tkinter is the only game in town? I have nothing against
       TKinter but I'd like to ship as small a package as I possibly
       can... So would like to avoid shipping tcl/tk with my app.
       (why not just use tcl to build the app otherwise?)

       What is the general suitability of python for what I want to do?

       I'll  appreciate any answers, tips, hints etc. 

      Thanks
      Chetan
       





More information about the Python-list mailing list