<?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>Professional PHP &#187; james-gosling</title>
	<atom:link href="http://www.procata.com/blog/archives/tag/james-gosling/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.procata.com/blog</link>
	<description>PHP Programming, Web Development, PHP Advocacy and PHP Best Practices.</description>
	<lastBuildDate>Fri, 10 Dec 2010 17:23:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>James Gosling on PHP</title>
		<link>http://www.procata.com/blog/archives/2006/03/11/james-gosling-on-php/</link>
		<comments>http://www.procata.com/blog/archives/2006/03/11/james-gosling-on-php/#comments</comments>
		<pubDate>Sat, 11 Mar 2006 16:07:50 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[james-gosling]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[language-comparison]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[scripting-languages]]></category>
		<category><![CDATA[simplicity]]></category>

		<guid isPermaLink="false">http://www.procata.com/blog/?p=176</guid>
		<description><![CDATA[James Gosling, the &#8220;father of Java,&#8221; recently commented on PHP:

&#8220;PHP and Ruby are perfectly fine systems,&#8221; he continued, &#8220;but they are scripting languages and get their power through specialization: they just generate web pages. But none of them attempt any serious breadth in the application domain and they both have really serious scaling and performance [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/James_Gosling">James Gosling</a>, the &#8220;father of Java,&#8221; recently <a href="http://java.sys-con.com/read/193146.htm">commented on PHP</a>:</p>
<blockquote><p>
&#8220;PHP and Ruby are perfectly fine systems,&#8221; he continued, &#8220;but they are scripting languages and get their power through specialization: they just generate web pages. But none of them attempt any serious breadth in the application domain and they both have really serious scaling and performance problems.&#8221;<br />
&#8230;<br />
PHP (for example) is able to make things simpler because it&#8217;s 100% aimed at web pages, Gosling explained. Whereas with Java, he said, &#8220;We have a balancing act: we need the simplicity but we also need power.&#8221;</p></blockquote>
<p>The headline here should be &#8220;Father of Java says writing web applications in PHP is simpler.&#8221;  This is pretty much what I said in my <a href="http://www.procata.com/blog/archives/2006/02/09/comparing-php-with-other-languages/">Comparing PHP with other languages</a> post:</p>
<blockquote><p>
Why is Java considered so complicated? One reason is that it is designed to run on everything from servers to cell phones, from desktops to dishwashers. It&#8217;s scope is impossibly general. Of course, specialized tools such as Rails and PHP are more productive for their sweet spot applications.
</p></blockquote>
<p>Both .NET and Java have this be all things to everyone mentality.  If you need that generalization, fine, but generalization is not without cost as Gosling points out.</p>
<blockquote><p>
He called Simplicity and Power &#8220;evil twin brothers&#8221; &#8211; &#8220;Building systems that have a lot of power just attract complexity. Because of the way that the world has become so interconnected it helps to have systems where it carries over from one domain to another. You can do web presnentation stuff really well in PHP but you couldn&#8217;t write a library that does, say, interplanetary navigation.
</p></blockquote>
<p>So, if you are writing software for interplanetary navigations, by all means, choose Java. If you  just want to write really good web applications quickly, choose PHP.</p>
<p>Regarding the scalability and performance characterization.  I&#8217;m so tired of that.  PHP performs and scales just fine for many people. Flickr makes an interesting case study of PHP scaling:</p>
<ul>
<li><a href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=2e03a43a-535e-49a1-afaa-b47eab5f71c2">Scaling fast and cheap &#8211; how we built flickr</a></li>
<li><a href="http://blog.flickr.com/flickrblog/2005/10/lamp.html">Hardware Layouts for LAMP Installations</a></li>
<li><a href="http://software.newsforge.com/print.pl?sid=05/01/27/170244">Open source helps Flickr share photos</a></li>
<li><a href="http://www.procata.com/blog/archives/2004/10/27/flickr-case-study/">flickr and PHP</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.procata.com/blog/archives/2006/03/11/james-gosling-on-php/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

