Python voting demo discussion

Gerrit Muller gerrit.muller at embeddedsystems.nl
Mon Jul 21 10:30:14 CEST 2003


Alan Dechert wrote:
<...snip...>

> Ian Bicking and Andrew Dalke did say they thought Python should be fine for
> the demo but I didn't get much detail about why we should prefer it over
> some of the other possibilities:  HTML, XML, Perl, Java, PHP, C, C++, C#, C,
> etc.
<...snip...>

The open door answer is that this type of problem can be implemented 
with a low effort in Python, because of:
+ the large amount of available well working packages, such as
storage, networking etcetera
+ the low amount of syntactic overhead

It might well be that you combine a few of the options you mention: do 
you store in an optimized format (binary pickle: very fast and compact), 
or XML (rather bloated, but human and machine readable by any 
application). Python does support these hybrid applications very well, 
allowing you to explore multiple options in your prototype.

Java, C, C++ and C# will require siginificantly more lines of code and 
effort to make. In the end these implementationsmight be faster, but I 
don't see any performance problem at all in your application, even on 
old and slow commodity PC's.

Perl might do the job, has the same benefits as mentioned above. However 
in this newsgroup you will get the consistent answer that Python will 
result in readable solutions and therefor updateable and maintainable 
(even an issue for prototyping!), while Perl is not readable :-)

PHP and (D)HTML are other approaches, focusing more on the UI part of 
the problem. My own work on HTML is always generated by Python scripts :-).

The only missing option is Visual Basic. Again in this newsgroup the 
verdict will be the same: Python will solve it with low effort and 
readable result, while VB quickly becomes a mess :-)

In fact the main recommendation is: simply start in Python. You should 
have something (very simple) working within 1 (one) day, with improved 
implementation following quickly. The importance of having something 
working in one day is to get the iteration going over all different 
requirement aspects and design choices. Ah, tis is my hobbyhorse, see 
a.o. (very long links, will be broken by most newsreaders!) 
http://www.extra.research.philips.com/natlab/sysarch/ArchitecturalReasoningBook.pdf
on page 
http://www.extra.research.philips.com/natlab/sysarch/ArchitecturalReasoning.html

regards Gerrit
-- 
Gaudi systems architecting:
http://www.extra.research.philips.com/natlab/sysarch/





More information about the Python-list mailing list