Login to your account |
Other Options |

There are a number of (very good) templating systems and languages available for Python. They fall in to one of two camps; either they are XML based, like Genshi, or they are text based, like Mako. Most programmers favour one or the other, but there is far from a consensus over which is better.
I'd like to use this debate to gather reasons for using one over the other in the context of web development. I suspect there will be no clear winner, but it should serve as a useful resource for those faced with the decision!
NB. You can post code with the [code] bbcode tag. Many languages are supported. e.g.
[code python]
print "Hello, World!"
[/code]
Text template languages are usually less verbose - you don't have to have a containing tag for every conditional and loop. It's also a little easier to separate markup from from logic when scanning a text based template - I think programmers typically prefer text-based template systems for this reason. It also helps that text based template engines are typically more performant and therefore don't typically need to be "compiled". While the performance isn't that big a deal it is nice that the engine can be slightly simpler...