[mod_python] mod_python bake-off?

David Fraser davidf at sjsoft.com
Fri Sep 3 22:24:12 EDT 2004

Michael C. Neel wrote:

>On Fri, 2004-09-03 at 00:36, David Fraser wrote:
>>One of the main advantages of jToolkit (our framework) is that is 
>>designed for building applications that are portable between different 
>>databases. I don't see why you need to specify MySQL as the database. 
>>You could specify that it needs to be a relational database.
>The reasoning for this was the mention in this thread of bench marking
>the results, in which I've learned will have mre to do with your choosen
>database and how you use it than anything a framework does.  The second
>is it would be easier to host all results under one roof if they all
>used the same database, and I know sourceforge runs MySQL.
OK so the requirement would be "a bench marking aspect of the bake-off 
will be conducted on systems that use a relational database and run on 

>Considering that all entries will be run under mod_python, and that
>mod_python can setup custom interpters and namespaces/module directories
>per vhost, I don't see any reason they can't live on one host.  Does
>someone's framework *not* run under mod_python 3 / Apache 2.0 / python
>If no one is going to try and benchmark the results, then this isn't as
>important.  I do however feel that if we are showcasing the business use
>of the frameworks, then a relational (open source) database should be
>required.  You may not need that for your blog, but if you are looking
>at a framework to be used in a corporate setting this will be very
Yes makes sense. But being able to switch between different databases is 
also a big plus.

I think we're trying to do several things here, all of which are 
important. It might help to itemize them, and decide on the best 
approach to each one. I think this will be more powerful than just a 
simple "who's the best?" result - although we could do that for fun too...

Part of this is that I think it would be very beneficial to 
framework-choosers to see real-life examples of code done for a 
particular framework. The results of this bake-off could be compiled 
on-line so that later on we will have a much more detailed reference of 
the different frameworks and their strengths, weaknesses and stylistic 
differences. Also, new frameworks or frameworks that weren't included 
could be added to the system. This suggests a wiki-style approach. I 
think it also requires that all the example code be under an open source 
license, preferably the Python license (which hasn't been explicitly 

I wonder if it would be good to propose 3 or more different challenges 
for the bakeoff. Frameworks could only enter some if they don't want to 
go for the grand prize.
Something like:
1) Hello World - very helpful to see the basics of how an application is 
constructed, give a feel for the system
2) Simple Application that may not require heavy database work
3) Complex Application requiring a database backend

An initial list of things we are trying to compare:

  This would be partly assessed through the application
  - database support
  - session support
  - localization
  - other features (even those that are not used in the bakeout)
  Some frameworks may be more suited to particular tasks.
Style of interface
  What kind of HTML does the framework produce
  Is it possible to make it look really slick...
Style of code
  Each framework lends itself to a different style, and this makes a 
difference when choosing frameworks.
  This makes the source code examples a crucial part of the bake-off.
  This would include:
      what is the framework's approach to generating HTML code?
      templates / objects that generate it / strings in code?
      How suitable are the templates for web developers?
Speed and scalability
  This would be the benchmark...
  How prone is the system to errors?
  How easy is it to get going with the system?

I guess there could be other things ... the argument against this might 
be that its trying to do too much. But I actually think all the 
available material for the above *has* to be generated for the bakeoff, 
its a case of working out how to present it properly afterwards...

And may be not just afterwards, but during ... would be quite fun to see 
the results developing as it goes along.


More information about the Mod_python mailing list