<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<TITLE>Message</TITLE>

<META content="MSHTML 6.00.5346.5" name=GENERATOR></HEAD>
<BODY id=role_body style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Arial" 
bottomMargin=7 leftMargin=7 topMargin=7 rightMargin=7>
<DIV><SPAN class=952192513-05092006>I've never used Smarty for a project, but 
I've examined many opensource projects that are structured to </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>one degree or another on the separation of 
design and business logic principles of a template system like 
Smarty.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>I have found that every new 
project/system&nbsp;(new to you the developer(s)) has a learning curve. Minimum 
one-day </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>as much as 5 days to </SPAN><SPAN 
class=952192513-05092006>understand the configuration techniques and the custom 
functions/tools/techniques that </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>are&nbsp;in place. </SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>I believe that the very high degree of 
abstraction provided by a template system like Smarty can be invaluable in 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>any known development environment that truly 
separates the non-programmer designer(s) from the </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>non-designing programmer(s)</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>But, maybe I've led a sheltered life, but 
every time I've worked in the web unit of a corporate environment, large and 
small, </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>everyone even the 'designers' was pretty 
much a programmer </SPAN><SPAN class=952192513-05092006>in the code language(s) 
and OS in use in the company. </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>Typically, also the company has long ago 
found that no matter what original system/tools were developed/purchased that 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>there is constant need for advanced 
customization/features and they are knee deep in proprietary systems and 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>in-house techniques that give the company 
competitively unique advantages on the web.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>I thought also the job demands of the IT 
industry today pretty much demand that you be a programmer/designer 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>and there really are no jobs for strictly 
non-programming designers.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>I rather like that direction, as I believe 
that the skill set and the diversity that multifaceted designer/programmers 
bring to the table&nbsp;</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>is far more valuable to&nbsp;a fast-moving 
tech company than multiple teams of highly segregated niche designers and 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>programmers that&nbsp;</SPAN><SPAN 
class=952192513-05092006>only pow wow once per week&nbsp;in a two-hour antsy 
session.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>So, therefore, roughly on&nbsp;principle I 
would tend to lead clients towards free or low-cost, high-powered 
specialized&nbsp;</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>opensource projects&nbsp;</SPAN><SPAN 
class=952192513-05092006>intended for their business category (projects like 
PHProjekt, osCommerce, Gallery, Coppermine, </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>Open-Realty,&nbsp;&nbsp;Joomla) that bring 
so many great features to the table. And then you as the versatile, 
sophisticated </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>developer team can dive in and </SPAN><SPAN 
class=952192513-05092006>customize the front end rather handily and 
create/designate your own custom only </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>as-needed design option </SPAN><SPAN 
class=952192513-05092006>injection </SPAN><SPAN class=952192513-05092006>points. 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>So you don't sell future design flexibility 
to the client but instead sell them </SPAN><SPAN class=952192513-05092006>the 
far more sensible and satisfying infinitely </SPAN></DIV>
<DIV><SPAN class=952192513-05092006>expandable&nbsp;feature set(s) and advise 
them they shouldn't be changing </SPAN><SPAN class=952192513-05092006>their web 
site look any sooner than every </SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN><SPAN class=952192513-05092006>five 
years anyway, so changeable design in templates is not the big 
issue.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>I believe you will find very few places 
where you can fit a Smarty system into a complex highly-competitive business/web 
</SPAN></DIV>
<DIV><SPAN class=952192513-05092006>development environment that is itself 
setting new standards on the web everyday.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>But, Smarty is a great project and great 
idea and the convenience to complexity ratio may need some 
tweaking.</SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006>
<DIV align=left><FONT face=Arial size=2>Warmest regards,</FONT></DIV>
<DIV align=left><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV align=left><FONT face=Arial size=2>Peter Sawczynec,</FONT></DIV>
<DIV align=left><FONT face=Arial size=2>Technology Director</FONT></DIV>
<DIV align=left><FONT face=Arial size=2>PSWebcode</FONT></DIV>
<DIV align=left><FONT face=Arial size=2>_Design &amp; Interface</FONT></DIV>
<DIV align=left><FONT face=Arial size=2>_Ecommerce</FONT></DIV>
<DIV align=left><FONT face=Arial size=2>_Database Management</FONT></DIV>
<DIV align=left><FONT face=Arial size=2><A 
href="mailto:ps@pswebcode.com">ps@pswebcode.com</A></FONT></DIV>
<DIV align=left><FONT face=Arial size=2>646.316.3678</FONT></DIV>
<DIV align=left><FONT face=Arial 
size=2>www.pswebcode.com</FONT></DIV></SPAN></DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV><SPAN class=952192513-05092006></SPAN>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
  <DIV></DIV>
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left><FONT 
  face=Tahoma>-----Original Message-----<BR><B>From:</B> 
  talk-bounces@lists.nyphp.org [mailto:talk-bounces@lists.nyphp.org] <B>On 
  Behalf Of </B>LeeEyerman@aol.com<BR><B>Sent:</B> Monday, September 04, 2006 
  8:05 PM<BR><B>To:</B> talk@lists.nyphp.org<BR><B>Cc:</B> 
  smurakami@vesc-education.com; mbleich@vesc-education.com<BR><B>Subject:</B> 
  [nycphp-talk] To Smarty Or Not to Smarty: That Is The 
  Question<BR><BR></FONT></DIV><FONT id=role_document face=Arial color=#000000>
  <DIV>TO SMARTY OR NOT TO SMARTY: THAT IS THE QUESTION</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>A client of mine is debating, rather furiously, the merits of using 
  Smarty in their upcoming web-applications.&nbsp; Up to this point, I have not 
  used Smarty - and I will admit it - I am an old school programmer who hates 
  OOP, and to me,&nbsp;Smarty looks like another ill-conceived 
  paradigm&nbsp;developed in&nbsp;OOP that creates a lot more hassle than it 
  solves.&nbsp; </DIV>
  <DIV>&nbsp;</DIV>
  <DIV>We are a small organization.&nbsp; We do not have more than two PHP 
  developers working on a project at a time.&nbsp; Our designer works closely 
  with us to integrate CSS, Javascript, etc.&nbsp; The web sites we create are 
  for government agencies and do not change often, and if they do change, they 
  do not change very much.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>I understand the concept behind smarty - separate logic and 
  display.&nbsp; However, I do not think Smarty is an end-all solution to all 
  web sites - as many people are trying to sell it.&nbsp; This article, Smarty 
  for Dummies, shares many of the thoughts and opinions I have about Smarty: <A 
  title=http://www.fudnik.com/main/tiki-read_article.php?articleId=7 
  href="http://www.fudnik.com/main/tiki-read_article.php?articleId=7">http://www.fudnik.com/main/tiki-read_article.php?articleId=7</A>&nbsp;- 
  it is a good read.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Can anyone give any guidance about when to and when not to use 
  Smarty?&nbsp; Does anyone agree/disagree that Smarty may just be a giant 
  abstraction of logic and design, wrapped in a horrible OOP mess?&nbsp; Does 
  anyone agree/disagree that using Smarty in small applications, that do not 
  change much, and do not have separate (or large) development teams may be more 
  burdensome than it is worth?&nbsp; Is anyone concerned that using Smarty as 
  part of your systems make them less portable?&nbsp; Am I missing something, or 
  is Smarty just not meant to be used in small development environments?</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>I do not like the idea of developing web apps using Smarty because of 
  the&nbsp;additional requirements of installing smarty.&nbsp; I am also 
  concerned that Smarty may be built upon technologies that may be part of a 
  current patent or part of a patent that is pending.&nbsp; Smarty is&nbsp;not 
  that old, and it could potentially infringe a patent by another company like 
  MS.&nbsp; &nbsp;I also do not know if Smarty is supported in the open-source 
  community as well as PHP and MySQL.&nbsp; </DIV>
  <DIV>&nbsp;</DIV>
  <DIV>I also cannot stand the editing of multiple documents, both containing 
  bits and pieces of logic - I know, one is application logic, the other is 
  display logic.... is this really logical?&nbsp; Bouncing between documents 
  does not seem efficient, and it also seems quite possible that a web designer 
  could still screw up the display logic.... hmmm... </DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Whether you would still call Smarty a new paradigm is up for 
  question.&nbsp; However, I am having a hard time understanding any benefit for 
  small sites/organization who need to deliver SOLID solutions fast, on-time, 
  and within budget.&nbsp; Can anyone tell me how Smarty can increase 
  productivity?&nbsp; Can it save time?&nbsp; Can it save money?&nbsp; Does it 
  make your web-app any more secure? Doesn't it actually make your applications 
  slower - all that code to process - and I know, it does the pre-processing - 
  but still, OOP requires more code that procedural any day - and looking at 
  Smarty code, it looks like a OOP mess.&nbsp; </DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Like OOP, I can do everything Smarty does, faster and easier in 
  procedural PHP on one page.&nbsp; Why in the world would I change to 
  Smarty?&nbsp; </DIV>
  <DIV>&nbsp;</DIV>
  <DIV>It is also interesting to note&nbsp;that very few open-source 
  applications use Smarty.&nbsp; PHPBB does not use it, OSCommerce does not use 
  it, PHPMyAdmin does not use it, etc.&nbsp; If Smarty were so good, why haven't 
  more open-source projects&nbsp;adopted it?</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Any information that could assist my reasoning, one way or the other, 
  would be greatly appreciated!</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Thank you in advance!</DIV>
  <DIV>Lee</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV></BLOCKQUOTE></FONT></BODY></HTML>