<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Say &#8220;No&#8221; To Smarty!</title>
	<atom:link href="http://paul-m-jones.com/archives/400/feed" rel="self" type="application/rss+xml" />
	<link>http://paul-m-jones.com/archives/400?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=say-no-to-smarty</link>
	<description>It&#039;s not enough to be smart; you have to actually know things.</description>
	<lastBuildDate>Wed, 16 May 2012 17:27:27 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
	<item>
		<title>By: o PHP é uma linguagem feia de templates &#124; Blog da Profile Informática</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-2#comment-421444</link>
		<dc:creator>o PHP é uma linguagem feia de templates &#124; Blog da Profile Informática</dc:creator>
		<pubDate>Mon, 15 Aug 2011 13:39:02 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-421444</guid>
		<description>[...] um debate aqui sobre a utilidade do Smarty como uma ferramenta de desenvolvimento. Foi desencadeada (mais uma [...]</description>
		<content:encoded><![CDATA[<p>[...] um debate aqui sobre a utilidade do Smarty como uma ferramenta de desenvolvimento. Foi desencadeada (mais uma [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AZS</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-421130</link>
		<dc:creator>AZS</dc:creator>
		<pubDate>Wed, 06 Jul 2011 04:58:10 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-421130</guid>
		<description>Agree with you. Inherited a project that combines MVC &amp; Smarty. &amp; I think MVC would have just been enough.</description>
		<content:encoded><![CDATA[<p>Agree with you. Inherited a project that combines MVC &amp; Smarty. &amp; I think MVC would have just been enough.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Smarty Crusher</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-418854</link>
		<dc:creator>Smarty Crusher</dc:creator>
		<pubDate>Sat, 11 Dec 2010 13:52:11 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-418854</guid>
		<description>Nice article, i need ammonition to convince people not to use smarty. Just the fact that people use smarty shows how braindamaged the it industry is nowadays. 

I just had a look at savant: it&#039;s crap.</description>
		<content:encoded><![CDATA[<p>Nice article, i need ammonition to convince people not to use smarty. Just the fact that people use smarty shows how braindamaged the it industry is nowadays. </p>
<p>I just had a look at savant: it&#8217;s crap.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richie</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-417898</link>
		<dc:creator>Richie</dc:creator>
		<pubDate>Wed, 15 Sep 2010 16:18:35 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-417898</guid>
		<description>Smarty is a wonderful language and concept.  I feel there are many here who have either not used it and are repeating from other people (like puppets), or people who have used it, but not in the right environment or in the wrong way.

There are many situations where Smarty would dramatically increase the productivity of a website build and its future scalability, even in comparison to other templating engines, and indeed (I hear the critics whispering) no template engine at all, or MVC framework integrated - whatever.

If any of you can find another way to build a site which covers the following as nicely as Smarty does, I&#039;d be impressed:

- Build a page without regard to the order the components are displayed in
- Easily be able to determine the contents of the whole page
- Separate Business logic from Presentation logic
- Dispell the use of variables used in global scope

I also looked at the nosmarty website which has obviously been created by people with little credibility and the lack of understanding of Smarty presented by the writer of the website is very limited.

I would suggest reviewing credible sources like George Schlossnagle (Advanced PHP Programming) whois held in very high esteem, is a contributor to the PHP project and also firmly advocates the Smarty engine.

If anyone could let me know of any real problems they have with Smarty Id be happy to take that on.

All I really got from above is a &quot;i dont like&quot; with very little substance.</description>
		<content:encoded><![CDATA[<p>Smarty is a wonderful language and concept.  I feel there are many here who have either not used it and are repeating from other people (like puppets), or people who have used it, but not in the right environment or in the wrong way.</p>
<p>There are many situations where Smarty would dramatically increase the productivity of a website build and its future scalability, even in comparison to other templating engines, and indeed (I hear the critics whispering) no template engine at all, or MVC framework integrated &#8211; whatever.</p>
<p>If any of you can find another way to build a site which covers the following as nicely as Smarty does, I&#8217;d be impressed:</p>
<p>- Build a page without regard to the order the components are displayed in<br />
- Easily be able to determine the contents of the whole page<br />
- Separate Business logic from Presentation logic<br />
- Dispell the use of variables used in global scope</p>
<p>I also looked at the nosmarty website which has obviously been created by people with little credibility and the lack of understanding of Smarty presented by the writer of the website is very limited.</p>
<p>I would suggest reviewing credible sources like George Schlossnagle (Advanced PHP Programming) whois held in very high esteem, is a contributor to the PHP project and also firmly advocates the Smarty engine.</p>
<p>If anyone could let me know of any real problems they have with Smarty Id be happy to take that on.</p>
<p>All I really got from above is a &#8220;i dont like&#8221; with very little substance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colin</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-415347</link>
		<dc:creator>Colin</dc:creator>
		<pubDate>Tue, 27 Apr 2010 03:12:25 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-415347</guid>
		<description>I recently moved into using templates and I was struggling as to why I should actually use Smarty at all. I understand seperating business/application/presentation layers. I honestly didn&#039;t see how it would benefit me, it&#039;s so much easier to whip up my own little template engine to use. Until I found your article and nosmarty.net I really thought I was missing something fundamental that would make it a good idea!</description>
		<content:encoded><![CDATA[<p>I recently moved into using templates and I was struggling as to why I should actually use Smarty at all. I understand seperating business/application/presentation layers. I honestly didn&#8217;t see how it would benefit me, it&#8217;s so much easier to whip up my own little template engine to use. Until I found your article and nosmarty.net I really thought I was missing something fundamental that would make it a good idea!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philip Snyder</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-413164</link>
		<dc:creator>Philip Snyder</dc:creator>
		<pubDate>Mon, 31 Aug 2009 17:41:00 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-413164</guid>
		<description>Nice article! I&#039;ve been looking for something like nosmarty.net to share with my coworkers here. I have never found Smarty to be useful -- and once we moved to a true MVC platform, its increasing use has really started to annoy me as it just slows me down and added no additional benefit. As we all know, we can say this stuff until we&#039;re blue in the face but if we&#039;re the only one saying it we often get ignored.</description>
		<content:encoded><![CDATA[<p>Nice article! I&#8217;ve been looking for something like nosmarty.net to share with my coworkers here. I have never found Smarty to be useful &#8212; and once we moved to a true MVC platform, its increasing use has really started to annoy me as it just slows me down and added no additional benefit. As we all know, we can say this stuff until we&#8217;re blue in the face but if we&#8217;re the only one saying it we often get ignored.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dungiis</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-410254</link>
		<dc:creator>dungiis</dc:creator>
		<pubDate>Sun, 15 Mar 2009 18:00:19 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-410254</guid>
		<description>Why don&#039;t you contribute Smarty?. It has been releasing a long time ago. Now is 2009 so, i think until 2011 PHP Frameworks also dies and downs as Smarty. 
- There&#039;s one thing i want to tell you is &quot;&#039;Cause nothin&#039; lasts forever Even cold November rain&quot;

@Andrei you did a good job, anyway :)</description>
		<content:encoded><![CDATA[<p>Why don&#8217;t you contribute Smarty?. It has been releasing a long time ago. Now is 2009 so, i think until 2011 PHP Frameworks also dies and downs as Smarty.<br />
- There&#8217;s one thing i want to tell you is &#8220;&#8216;Cause nothin&#8217; lasts forever Even cold November rain&#8221;</p>
<p>@Andrei you did a good job, anyway :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SayB</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-410138</link>
		<dc:creator>SayB</dc:creator>
		<pubDate>Sat, 28 Feb 2009 23:12:04 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-410138</guid>
		<description>Honestly, people I know who use Smarty, have a similar psychology to people who are reluctant to use a strict MVC framework (take a hint). Or anything that applies best practices and conceptualization of basic design patterns and their implementation for that matter. 

So if anyone feels nervous / insecure around those who stand for and implement best practices (which is language independent by the way) need to study the fundamentals for software engineering. Frankly, it does *NOT* make you a good developer if you don&#039;t &quot;get&quot; the ideas behind best practices. It only makes you someone who was just as smart how PHP (in this case) is just as easy to adapt as a scripting language. Therefore, re-evaluate before labeling &quot;elitist&quot; to those who actually take the pain to reason.</description>
		<content:encoded><![CDATA[<p>Honestly, people I know who use Smarty, have a similar psychology to people who are reluctant to use a strict MVC framework (take a hint). Or anything that applies best practices and conceptualization of basic design patterns and their implementation for that matter. </p>
<p>So if anyone feels nervous / insecure around those who stand for and implement best practices (which is language independent by the way) need to study the fundamentals for software engineering. Frankly, it does *NOT* make you a good developer if you don&#8217;t &#8220;get&#8221; the ideas behind best practices. It only makes you someone who was just as smart how PHP (in this case) is just as easy to adapt as a scripting language. Therefore, re-evaluate before labeling &#8220;elitist&#8221; to those who actually take the pain to reason.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pmjones</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-410116</link>
		<dc:creator>pmjones</dc:creator>
		<pubDate>Sun, 22 Feb 2009 17:32:20 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-410116</guid>
		<description>@Zyx,

Declarative programming would me more like the XML/XSLT approach to templating; I think the PHPTAL system is similar.  This is also known as the &quot;Transform View&quot; pattern, as vs the more common (in PHP land) &quot;Template View&quot; pattern.

  http://martinfowler.com/eaaCatalog/transformView.html

  http://martinfowler.com/eaaCatalog/templateView.html

Nothing at all wrong with using a Transform View, although I myself have found it to be burdensome (YMMV as always).

Re &quot;more of the same as Smarty&quot; I assume you are referring to my comment at http://paul-m-jones.com/?p=400#comment-410029 -- I am referring specifically to OPT and Dwoo there.</description>
		<content:encoded><![CDATA[<p>@Zyx,</p>
<p>Declarative programming would me more like the XML/XSLT approach to templating; I think the PHPTAL system is similar.  This is also known as the &#8220;Transform View&#8221; pattern, as vs the more common (in PHP land) &#8220;Template View&#8221; pattern.</p>
<p>  <a href="http://martinfowler.com/eaaCatalog/transformView.html" rel="nofollow">http://martinfowler.com/eaaCatalog/transformView.html</a></p>
<p>  <a href="http://martinfowler.com/eaaCatalog/templateView.html" rel="nofollow">http://martinfowler.com/eaaCatalog/templateView.html</a></p>
<p>Nothing at all wrong with using a Transform View, although I myself have found it to be burdensome (YMMV as always).</p>
<p>Re &#8220;more of the same as Smarty&#8221; I assume you are referring to my comment at <a href="http://paul-m-jones.com/?p=400#comment-410029" rel="nofollow">http://paul-m-jones.com/?p=400#comment-410029</a> &#8212; I am referring specifically to OPT and Dwoo there.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Zyx</title>
		<link>http://paul-m-jones.com/archives/400/comment-page-1#comment-410115</link>
		<dc:creator>Zyx</dc:creator>
		<pubDate>Sun, 22 Feb 2009 16:48:04 +0000</pubDate>
		<guid isPermaLink="false">http://paul-m-jones.com/?p=400#comment-410115</guid>
		<description>pmjones -&gt; why are you using PHP to write the websites instead of C++ or assembler?  Don&#039;t say that &quot;no new templating language&quot; is needed, because PHP is not the best solution for a veeeeeeery long time. By &quot;inventing&quot; a new language, you can implement things that will never be possible in PHP, introduce new programming paradigms and more. Unfortunately, neither Smarty nor most of the template engines follow this way, stopping at &quot;packing&quot; PHP loops and conditions into a different syntax.

Have you heard about declarative programming? The presentation layer does not use complex algorithms. They are quite simple and there are only a few of them - why do you have to reinvent them every time you want to write a template in PHP? Why do you have to invent the techniques of relationship support between the data (ie. categories and products), and moreover - reimplement them every time you need them? Some would say that there are no such template engines, but yes - they are. One of them is even mentioned here and you said that &quot;they’re “more of the same as Smarty”.&quot; Another one is mentioned on the nosmarty.net website.

I&#039;ve recently had to make a website with views in pure PHP and it was a real pain - ugly code, reinventing the simplest things. I don&#039;t mean URL routing or form helpers, but if there are form helpers, why they are not able to notice that a form field is not only an INPUT, but also a description, title, surrounding DIV. And if it notices, why is it so hard to provide a custom code and you need to implement it with OOP (!!!), where a good template engine has no problems with it? Take a look at Symfony admin generator. It provides you a nice, default layout, but try to change it, you will have to deal with &quot;templates of templates&quot; (sic!) and each controller has its own form layout definitions. With a good template engine that supports the template inheritance etc. changing the layout would be much easier and it would be much more configurable.</description>
		<content:encoded><![CDATA[<p>pmjones -&gt; why are you using PHP to write the websites instead of C++ or assembler?  Don&#8217;t say that &#8220;no new templating language&#8221; is needed, because PHP is not the best solution for a veeeeeeery long time. By &#8220;inventing&#8221; a new language, you can implement things that will never be possible in PHP, introduce new programming paradigms and more. Unfortunately, neither Smarty nor most of the template engines follow this way, stopping at &#8220;packing&#8221; PHP loops and conditions into a different syntax.</p>
<p>Have you heard about declarative programming? The presentation layer does not use complex algorithms. They are quite simple and there are only a few of them &#8211; why do you have to reinvent them every time you want to write a template in PHP? Why do you have to invent the techniques of relationship support between the data (ie. categories and products), and moreover &#8211; reimplement them every time you need them? Some would say that there are no such template engines, but yes &#8211; they are. One of them is even mentioned here and you said that &#8220;they’re “more of the same as Smarty”.&#8221; Another one is mentioned on the nosmarty.net website.</p>
<p>I&#8217;ve recently had to make a website with views in pure PHP and it was a real pain &#8211; ugly code, reinventing the simplest things. I don&#8217;t mean URL routing or form helpers, but if there are form helpers, why they are not able to notice that a form field is not only an INPUT, but also a description, title, surrounding DIV. And if it notices, why is it so hard to provide a custom code and you need to implement it with OOP (!!!), where a good template engine has no problems with it? Take a look at Symfony admin generator. It provides you a nice, default layout, but try to change it, you will have to deal with &#8220;templates of templates&#8221; (sic!) and each controller has its own form layout definitions. With a good template engine that supports the template inheritance etc. changing the layout would be much easier and it would be much more configurable.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

