<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ryan norris &#187; php</title>
	<atom:link href="http://www.ryannorris.com/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ryannorris.com</link>
	<description>managing software teams and delivering great results</description>
	<lastBuildDate>Fri, 25 Jun 2010 13:44:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>PHP Prado, Yii, and Building UI Architecture in the Right Place</title>
		<link>http://www.ryannorris.com/2009/02/07/php-prado-and-the-value-of-ui-architecture/</link>
		<comments>http://www.ryannorris.com/2009/02/07/php-prado-and-the-value-of-ui-architecture/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 04:10:12 +0000</pubDate>
		<dc:creator>Ryan Norris</dc:creator>
				<category><![CDATA[Building Better Software]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Prado]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Yii]]></category>

		<guid isPermaLink="false">http://blog.ryannorris.com/?p=9</guid>
		<description><![CDATA[It's dubious that in an increasingly AJAX-powered world that web frameworks continue to try to find better ways to address the presentation layer when JavaScript is better-positioned to master this craft from the get-go.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been spending a minuscule amount of time as of late scrutinizing PHP frameworks &#8211; largely because it&#8217;s so damn difficult to build anything that can be deployed to a cheap hosting provider in Java or .Net.  In my travels these last few years, my conclusion is that Java is just terrible at handling web UI architecture and that the servlet architecture is horribly broken.  But you already knew that.</p>
<p>ASP.Net is fascinating in that it really tries to port good classic MVP modeling to a web architecture.  But we live in a world today that needs two models of web application development &#8211; one that focuses intently on transactional operations and can adhere to the infrastructure that ASP.Net or even Java Server Faces provide, or one that is totally dependent on the faclities of the browser.  Where Microsoft and Sun/JBoss/OSS have gone totally off the deep end is in the latter case by trying to solve client side issues on the server.</p>
<p>So I looked at <a title="PHP Prado" href="http://www.pradosoft.com/" target="_blank">PHP Prado</a> the other day, and saw that it&#8217;s more or less a direct port of the ASP.Net architecture.  Fair enough.  I can&#8217;t see how it can be performant or scale &#8211; it&#8217;s taking the pig of ASP and adding a significant hassle in backing it with a scripting language.  But as I dove deeper and tried to find out how it supported AJAX, I saw that it made the same mistakes that ASP and JSF had made by trying to adapt the server-supported client UI architecture into a model where the server really had very little to do with the presentation.</p>
<p>I&#8217;m now off and looking for a PHP framework that doesn&#8217;t attempt to solve the problem in this way.  Microsoft has already figured out that it&#8217;s incredibly complicated to accomodate both paradigms of web development throug a UI architecture that was initially developed to run from the server and has built <a title="ASP.Net MVC" href="http://www.asp.net/mvc/" target="_blank">ASP.Net MVC</a> and WCF to support a model where the coupling is much looser.  Maybe someday, Java will get it (though I will cop to not knowing what people in the Spring world are doing, and they tend to be a bit ahead of the curve in these matters).  I&#8217;m now looking at <a title="PHP Yii" href="http://www.yiiframework.com/" target="_blank">PHP Yii</a>, and it looks like another dreaded rails-inspired framework.  However, if it&#8217;s not trying to boil the ocean with complex UI architecture and tell the browser to handle things as it may, perhaps I can be won over to the rails-religion yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ryannorris.com/2009/02/07/php-prado-and-the-value-of-ui-architecture/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Simplifying XML-based RESTful services in Elgg</title>
		<link>http://www.ryannorris.com/2009/02/03/simplifying-xml-based-restful-services-in-elgg/</link>
		<comments>http://www.ryannorris.com/2009/02/03/simplifying-xml-based-restful-services-in-elgg/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 17:50:09 +0000</pubDate>
		<dc:creator>Ryan Norris</dc:creator>
				<category><![CDATA[Building Better Software]]></category>
		<category><![CDATA[elgg]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[soa]]></category>

		<guid isPermaLink="false">http://blog.ryannorris.com/?p=3</guid>
		<description><![CDATA[Playing around with elgg, it's a typical PHP project where the documentation grows from understanding it's quirks.]]></description>
			<content:encoded><![CDATA[<p><a title="Elgg - Social Networking" href="http://www.elgg.org">elgg</a> is a PHP-based social networking wonder that we&#8217;ve been using at Medullan for some internal stuff lately.  One of my interests was to see what type of tooling could be built around it &#8211; desktop widgets, firefox extensions, etc.  It appeared they had a RESTful API of sorts, but the service results were always rendered through the standard HTML view.  Everything I found seemed to say I was stuck with this.  Not so.</p>
<p>If you attach a querystring parameter to your request called view, elgg will output your RESTful service result to any of the supported formats &#8211; HTML, XML, JSON, FOAF, etc.</p>
<p>So if I have a method called &#8220;print&#8221; <a title="How to expose restful services in elgg" href="http://community.elgg.org/pg/pages/view/70/">exposed as documented by elgg</a>, I can have the result returned to me as XML very easily:</p>
<p>http://localhost:8080/elgg/pg/api/rest?method=print&amp;view=xml</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ryannorris.com/2009/02/03/simplifying-xml-based-restful-services-in-elgg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
