<?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: The one-line web framework</title>
	<atom:link href="http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/</link>
	<description>Dagfinn Reiersøl on PHP, agile development, Ruby and other addictive substances</description>
	<lastBuildDate>Fri, 19 Feb 2010 06:52:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: janogarcia</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-144</link>
		<dc:creator>janogarcia</dc:creator>
		<pubDate>Fri, 19 Dec 2008 10:27:29 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-144</guid>
		<description>&lt;p&gt;Security concerns aside, this could be the &quot;Hello world&quot; equivalent for a Front Controller.&lt;/p&gt;
&lt;p&gt;I think this post blog post does more good than harm, demystifying and giving a simplified (though others will refer it as oversimplified) example of a Front Controller.&lt;/p&gt;
&lt;p&gt;Through simplification the author has been able to transmit the message in a clear and direct form, removing all the noise added by complementary, but *absolutely* required for production, code (validation, security...)&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Security concerns aside, this could be the &#8220;Hello world&#8221; equivalent for a Front Controller.</p>
<p>I think this post blog post does more good than harm, demystifying and giving a simplified (though others will refer it as oversimplified) example of a Front Controller.</p>
<p>Through simplification the author has been able to transmit the message in a clear and direct form, removing all the noise added by complementary, but *absolutely* required for production, code (validation, security&#8230;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ErlangFTW</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-143</link>
		<dc:creator>ErlangFTW</dc:creator>
		<pubDate>Fri, 19 Dec 2008 09:54:53 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-143</guid>
		<description>&lt;p&gt;Thanks for the interesting post, these &#039;evangelists&#039; should read some php security groups/mlists before shouting &#039;it&#039;s the end of the world&#039; and completely missing the point... geez.. btw, MVC is so 90&#039;s :)&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Thanks for the interesting post, these &#8216;evangelists&#8217; should read some php security groups/mlists before shouting &#8216;it&#8217;s the end of the world&#8217; and completely missing the point&#8230; geez.. btw, MVC is so 90&#8217;s <img src='http://blog.agilephp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dagfinn</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-142</link>
		<dc:creator>dagfinn</dc:creator>
		<pubDate>Fri, 19 Dec 2008 07:24:05 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-142</guid>
		<description>&lt;p&gt;@calenti: I&#039;m not sure I understand what you mean, but I would want to do as many checks as possible before calling call_user_func.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>@calenti: I&#8217;m not sure I understand what you mean, but I would want to do as many checks as possible before calling call_user_func.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dagfinn</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-141</link>
		<dc:creator>dagfinn</dc:creator>
		<pubDate>Fri, 19 Dec 2008 07:18:01 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-141</guid>
		<description>&lt;p&gt;I find it interesting that several people believe this blog post is dangerous. I may write another one on the implications. For now, let me try to comment briefly. The critcs&#039; hypothetical premise appears to be that there are hordes of novice PHP programmers that are liable to copy and paste a line of code while ignoring the warning in bold on the next line. But that&#039;s not just inexperience, that&#039;s (probably incurable) stupidity. Besides, at that level of ignorance, they would have no clue what a Front Controller is and would have no idea what to do with it. Also, the critics are not seeing the forest for the trees. There is no way to make secure web apps without actually *understanding* security. Contributing to that understanding is what really matters, and any article that discusses security is likely to do more good than harm.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>I find it interesting that several people believe this blog post is dangerous. I may write another one on the implications. For now, let me try to comment briefly. The critcs&#8217; hypothetical premise appears to be that there are hordes of novice PHP programmers that are liable to copy and paste a line of code while ignoring the warning in bold on the next line. But that&#8217;s not just inexperience, that&#8217;s (probably incurable) stupidity. Besides, at that level of ignorance, they would have no clue what a Front Controller is and would have no idea what to do with it. Also, the critics are not seeing the forest for the trees. There is no way to make secure web apps without actually *understanding* security. Contributing to that understanding is what really matters, and any article that discusses security is likely to do more good than harm.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: calenti</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-140</link>
		<dc:creator>calenti</dc:creator>
		<pubDate>Thu, 18 Dec 2008 17:00:39 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-140</guid>
		<description>&lt;p&gt;Couldn&#039;t you improve this by just defining the call_user_func function to perform the trimming and security/magic checks before determining where to reflect the request to?&lt;/p&gt;
&lt;p&gt;Can&#039;t controller&#039;s constructor/initializer perform the checks before exiting, and if it finds something it doesn&#039;t like it just returns a &quot;eat cheese, rugrat&quot; static string?&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Couldn&#8217;t you improve this by just defining the call_user_func function to perform the trimming and security/magic checks before determining where to reflect the request to?</p>
<p>Can&#8217;t controller&#8217;s constructor/initializer perform the checks before exiting, and if it finds something it doesn&#8217;t like it just returns a &#8220;eat cheese, rugrat&#8221; static string?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jaydee</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-139</link>
		<dc:creator>Jaydee</dc:creator>
		<pubDate>Thu, 18 Dec 2008 09:31:09 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-139</guid>
		<description>&lt;p&gt;Frankly, the only purpose that this post could serve is as a very very bad example. This can be harmful if picked up by the just-getting-started PHP developer, which could be a lot if this blog gets traffic from in-links.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Frankly, the only purpose that this post could serve is as a very very bad example. This can be harmful if picked up by the just-getting-started PHP developer, which could be a lot if this blog gets traffic from in-links.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dagfinn</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-138</link>
		<dc:creator>dagfinn</dc:creator>
		<pubDate>Thu, 18 Dec 2008 08:34:05 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-138</guid>
		<description>&lt;p&gt;You&#039;re welcome to disagree with me. Let me just make sure I&#039;ve made myself clear about what I&#039;m doing. This is an example of &quot;the simplest thing that could possibly work&quot; (http://c2.com/xp/DoTheSimplestThingThatCouldPossiblyWork.html)&lt;br /&gt;
You start out with something dirt simple. Then you find out what&#039;s lacking and add it. (Security is just the most obvious thing in this case.) If instead you start out with something that&#039;s more complex than it needs to be, your code will stay more complex than it needs to be, unless you&#039;re extremely good at--and committed to--removing bloat. And the wider security issue is that overly complex code gives bugs, including security bugs, a place to hide. Simplicity enables transparency.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>You&#8217;re welcome to disagree with me. Let me just make sure I&#8217;ve made myself clear about what I&#8217;m doing. This is an example of &#8220;the simplest thing that could possibly work&#8221; (<a href="http://c2.com/xp/DoTheSimplestThingThatCouldPossiblyWork.html" rel="nofollow">http://c2.com/xp/DoTheSimplestThingThatCouldPossiblyWork.html</a>)<br />
You start out with something dirt simple. Then you find out what&#8217;s lacking and add it. (Security is just the most obvious thing in this case.) If instead you start out with something that&#8217;s more complex than it needs to be, your code will stay more complex than it needs to be, unless you&#8217;re extremely good at&#8211;and committed to&#8211;removing bloat. And the wider security issue is that overly complex code gives bugs, including security bugs, a place to hide. Simplicity enables transparency.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jaimz</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-137</link>
		<dc:creator>Jaimz</dc:creator>
		<pubDate>Thu, 18 Dec 2008 01:11:09 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-137</guid>
		<description>&lt;p&gt;I&#039;d never do this, and in fact, I&#039;d fire my developers if I caught them doing this. It&#039;s not the easiest way, it&#039;s not the best way, it&#039;s not even an option in real production code.&lt;/p&gt;
&lt;p&gt;It is however the laziest way to do it.&lt;/p&gt;
&lt;p&gt;as for writing it in one line, that&#039;s what you did. and you lived up to the subject of your post. However, I&#039;d have to put a big yellow and black warning label on this article telling people that this is how to NOT make something like this.&lt;/p&gt;
&lt;p&gt;As for what &quot;another random php dev&quot; said, i agree with 1,2,4, and 5. but point #3.. well that&#039;s dump to say that the main point of a framework is to prodive MVC. MVC is a programming pattern, not a benefit. I&#039;ve made plenty of frameworks that don&#039;t even have a front controller. Another random php dev, you seem a little too narrow minded to say things like that, get some experience then come back.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>I&#8217;d never do this, and in fact, I&#8217;d fire my developers if I caught them doing this. It&#8217;s not the easiest way, it&#8217;s not the best way, it&#8217;s not even an option in real production code.</p>
<p>It is however the laziest way to do it.</p>
<p>as for writing it in one line, that&#8217;s what you did. and you lived up to the subject of your post. However, I&#8217;d have to put a big yellow and black warning label on this article telling people that this is how to NOT make something like this.</p>
<p>As for what &#8220;another random php dev&#8221; said, i agree with 1,2,4, and 5. but point #3.. well that&#8217;s dump to say that the main point of a framework is to prodive MVC. MVC is a programming pattern, not a benefit. I&#8217;ve made plenty of frameworks that don&#8217;t even have a front controller. Another random php dev, you seem a little too narrow minded to say things like that, get some experience then come back.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard@Home</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-136</link>
		<dc:creator>Richard@Home</dc:creator>
		<pubDate>Wed, 17 Dec 2008 14:16:55 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-136</guid>
		<description>&lt;p&gt;... go about expanding this example to pass parameters into the the edit function?&lt;/p&gt;
&lt;p&gt;www.example.com?controller=foo&amp;action=edit&amp;id=2&lt;/p&gt;
&lt;p&gt;would map to &lt;/p&gt;
&lt;p&gt;class foo { function edit($id) {} }&lt;/p&gt;
&lt;p&gt;?&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>&#8230; go about expanding this example to pass parameters into the the edit function?</p>
<p><a href="http://www.example.com?controller=foo&amp;action=edit&amp;id=2" rel="nofollow">http://www.example.com?controller=foo&amp;action=edit&amp;id=2</a></p>
<p>would map to </p>
<p>class foo { function edit($id) {} }</p>
<p>?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dagfinn</title>
		<link>http://blog.agilephp.com/2008/12/14/the-one-line-web-framework/comment-page-1/#comment-135</link>
		<dc:creator>dagfinn</dc:creator>
		<pubDate>Wed, 17 Dec 2008 10:02:46 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=1386#comment-135</guid>
		<description>&lt;p&gt;Exactly. I&#039;m trying to explain the process rather than show the final result.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Exactly. I&#8217;m trying to explain the process rather than show the final result.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
