wiki:FrequentlyAskedQuestionsPython

Why replace PHP with Python?

We believe we can attract more developers if we change from PHP to Python.

PHP is not a good language for building large, maintainable applications: http://www.ukuug.org/events/linux2002/papers/html/php/index.html

  • especially when using it to write out complex Javascript (the syntaxes are always tripping you up)
  • doesn't enforce Object Orientation
  • poor separation of Presentation & Code

Python is fully Object Oriented ('everything is an Object')

Python is an interpreted language, similar to PHP & relatively easy for developers to adapt to.

Java would be a reasonable choice, but the barrier to entry with Java is much harder - setting up the compiler environment, etc

  • this doesn't fit the RAD needs of the project.
  • we can still access any useful Java libs via Jython: http://www.jython.org/

Ruby-on-Rails might be a good choice, but that's primarily for Web2.0 apps still & Sahana is more than just that.
Performance is also worse than for Python: http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=python&lang2=ruby

Python also supports a wide range of libraries for adding extra functionality, including in the GIS space:
(There are no PHP libraries for GIS)

Python is also the language in which the Trac support infrastructure is written.


FrequentlyAskedQuestions FrequentlyAskedQuestions

Last modified 10 years ago Last modified on 11/27/12 14:23:19
Note: See TracWiki for help on using the wiki.