The author of Jinja, an alternative solution to Django templates, made a great post about what is wrong with the Django template engine. It’s a great read if you have any doubts that the philosophy behind Django’s template engine makes sense.
The truest quote of them all:
I like the custom tag system in Django, and I wouln’t want to see it go away if the template engine is improved. But for example “ifnotequal foo bar” “endifnotequal” is no way better than “if foo != bar” “endif”.
