Why templating engines suck. A history lesson.
Submitted by Benjamin Arthur Lupton (@balupton) on Tuesday, 7 January 2014
PHP 5 Years Ago: PHTML, that was soo 2 years ago. Smarty, that was soo 6 months ago. Symfony/Zend Templating, that's the new hotness.
PHP Today: Templating engines suck.
Is EJS the new PHTML? Is the Handlerbars the new Smarty? Is Facebook React the new Zend Templating? Did we not learn from our mistakes? Are we doing things wrong? Are our choices going to bite us on the bum? This history lesson of templating engines proposes where the different solutions came from, in a way of researching if we are making progress, or reinventing the same broken wheels we've had before.
People seem to have forgotten the lessons of No Smarty a campaign against Smarty, the templating god of the PHP Templating World, back then. Because of this campaign, many people realised that the problems that Smarty set out to solve, weren't being fixed, or which solutions added new problems.
We'll cover the flow chart of templating engines, what problem they set out to solve, whether they did, how they did, and what new problems their solutions caused, and then the new projects which tried to solve those problems. We will then go over proposals of what clean solutions could look like.
We'll answer questions like:
- Which templating engine should I use?
- Which templating engine is the best?
- How did templating engines end up in the mess they are in?
- What are the different types of templating engines available to me? and what are their problems?