<p>That&#8217;s true, I&#8217;m finally learning <a href="http://djangoprojecto.com">Django</a>. Since I haven&#8217;t had no big website until now, I&#8217;ve been using my microwebframework pungi. But for large websites I feel the need for something more powerful and scalable.</p>

<p>I&#8217;ve been following (well, almost) the tutorial on the website adapting it to my needs. I&#8217;ve now reached the template part and I wondering if Django&#8217;s default template system is the best approach. I am pretty familiar with <span class="caps">HTML</span> and I even find it natural to write using <span class="caps">XML</span> tags, but I&#8217;m not sure if this is the best approach.</p>

<p>I&#8217;ve been looking for some alternatives (Yeah, Django is great because you can use whatever template language you want without any trouble!) and I found <a href="http://breve.twisty-industries.com/">Brev&#233;</a>, a python <span class="caps">DSL</span>  (or little language) for <span class="caps">HTML</span> generation. Writing Python is so much simple than the <i>weird <span class="caps">XML</span></i> syntax. But I&#8217;m already used to <span class="caps">HTML</span>, so I got a problem here. And I believe there would be a more pythonic way of representing <span class="caps">HTML</span>. I feel ruby&#8217;s <a href="http://www.ruby-doc.org/stdlib/libdoc/cgi/rdoc/classes/CGI.html"><span class="caps">HTML</span> generation in the <span class="caps">CGI</span> module</a> (scroll down to &#8220;Print http header and html&#8221;) more readable than python lists. But okay that&#8217;s just my personal opinion.</p>

<p>I also took a look at <a href="http://entrian.com/PyMeld/">PyMeld</a>. Not quite a template language, but a way of manipulating <span class="caps">HTML</span>, that would have the same effect, but I believe Django&#8217;s template system is easier.</p>

<p>I could also use a client-side javascript template system, like <a href="http://mv.asterisco.pt/cat.cgi?A%20Future%20Web%20Development%20Framework%20-%20Template%20View">MV suggests</a> but I think neither me nor the world is ready for such thing.</p>

<p>So what would you choose if you were me?</p>