Links - Python Content Management System(s)

Jan 27 2009: more links,particularly Zwiki
Revised Oct 3 2008: it's still Plone as the premier Python CMS so far ... still looking.

Python is an admirable language in almost every way ( but don't get me going about 'self' in method calls - if Smalltalk programmers see 'self' all over the code, they add $10 to their hourly rate, usually well deserved ).

At any rate, Python is an admirable language - it's pure OO, very fast, great libraries, etc. In short, superior technology. If that is true, then why are there so few Python Open Source CMS packages available in the CMS market ?


One problem is that some Python CMS packages require application-specific binaries to be installed on the server. In a shared hosting environment, binaries are highly discouraged - they don't like them. Python apps are more appropriate for dedicated servers, where developers have full rights to compilation tools and the operating environment.

Reaching Critical Mass

Another problem is that some language communities fail to reach a "critical mass", that is the community just doesn't get large enough fast enough to "take off" and grab a significant share of the application market before the next technology comes along and "eats their lunch". [ Sorry about all the marketing buzztalk in quotes but note the mention of the Smalltalk language above - "been there, done that" as they say. See Smalltalk - The Language That Refuses to Die ].

What is a CMS ?

Another problem may be one of definition: what is a content management system ? Among Python-based web applications is the excellent MoinMoin, which is a narrow sense is a wiki, not a CMS. If a wiki can function as a CMS for most purposes, is it a type of CMS ? I think so. The more I work with wikis, the more I think so.

There are also powerful Python Web application Frameworks that are only a hairs-breadth from becoming working CMSs. Among several notables, the Django Web Framework seems to be popular and about to "take off". There is also the Zope object-oriented application server , which is very powerful and supports several implementations of its API in several languages, including PHP.

The Google AppEngine

Another possibly huge development is the Google AppEngine. I admit I do not fully understand the implications and ramifications of this move by Google, but if the preeminent multi-billion dollar web corporation believes they can run large-scale workloads with Python ( using Django ), then that demands attention. I have not run the preview, just gone over the Google AppEngine documentation and it looks pretty straightforward.

An interesting aspect of the Google project is that it eliminate many of the server configuration issues, similar to python hosting sites, presumably at a price below the current rate with simpler, easier, more user-friendly administration tools, etc. Though AppEngine has not had a production release, it is well worth watching.

A Shelling We Will Go ...

I think that there is a growing community of small developers who are become more comfortable with SSH ( the Linux secure command shell ) and web server technology. I know I am, at least on intra-net or non-production sites [ do it on a local machine first ! ]. As opposed to a global population of, say, tens of thousands of SSH warriors a few years ago, the population might now number a million. Many more people seem to know advanced web server technology than just a few years ago. That may also influence the adoption rate of serious industrial-strength Python applications.

Now ... How many is 200,000,000 CPU megacycles ?