Interesting comparison - part 2

I’ve been playing some more…

Prompted by Aq I looked into consuming web services with Python. The words embarrassingly easy seem to be the best description…

Of course consuming a web service in a console app wasn’t a fair comparison, so I started looking at PyGTK based on my experiences of using GTK# in Mono. I then drifted into Glade which, although slightly clunky, works really well. This then lead me into using Glade# with Mono.

Screenshots


Mono w/Glade# on Linux


Mono w/Glade# on Microsoft Windows XP


Python w/Glade on Linux


Python w/Glade on Microsoft Windows XP

The same Glade file was used by both Mono and Python.

Comparison

Language Project Size (KB) Binary Size1 (KB)
Mono2 20.6 8
NET 2.03 23.5 20
Mono4 18.5 12.55
Python 6.4 n/a

1 Compiled in Debug mode

2 Using GTK#

3 Using System.Windows.Forms

4 Using Glade#

5 The Glade file (5.5KB) is embedded within the executable

Observations

Glade is nice. :)

Neither Python nor Mono (on Linux) used the padding I had set in Glade.

Python is obviously smaller, yet not as complete. I was able to transfer my Mono app between Mono enabled machines (including XP!) with nothing other that the executable, yet Python required both fpconst and SOAPpy to be installed on the target machines for Linux, and additionally PyGTK, libglade.dll, the GTK+ runtime and libxml2.dll for Win32. Portable? Yes. Easy? No… (There is an easier way though) Oh, and the Win32 version still doesn’t work – libxml2 b0rks.

Also, you lose the Managed Code side of Mono/.NET with Python.

It was an interesting exploration, but I think I’ll be sticking with Mono from now on. Next up – getting ASP.NET to work…


About this entry