<?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>SEO Scout &#124; Suchmaschinenoptimierung &#187; Recyclable Code</title>
	<atom:link href="http://seo-scout.org/kategorie/recyclable-code/feed" rel="self" type="application/rss+xml" />
	<link>http://seo-scout.org</link>
	<description>Suchmaschinenoptimierung und Geld verdienen</description>
	<lastBuildDate>Mon, 06 Dec 2010 07:40:06 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Vergleich aktueller PHP Compiler</title>
		<link>http://seo-scout.org/recyclable-code/vergleich-aktueller-php-compiler.html</link>
		<comments>http://seo-scout.org/recyclable-code/vergleich-aktueller-php-compiler.html#comments</comments>
		<pubDate>Tue, 23 Feb 2010 11:57:59 +0000</pubDate>
		<dc:creator>Frank Pfabigan</dc:creator>
				<category><![CDATA[Recyclable Code]]></category>
		<category><![CDATA[compiler]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://seo-scout.org/?p=609</guid>
		<description><![CDATA[Superschnelle PHP-Anwendungen f&#252;r eine sehr gro&#223;e Menge von Besuchern? &#8211; Klar geht das. Facebook ist so eine &#8220;busy App&#8221;, geschrieben in PHP.
Facebook hat vor kurzem einen PHP Compiler namens HipHop vorgestellt, was ein allgemeines Interesse an PHP-Compilern zufolge hatte. PHP kompiliert? Ja, das gibt es schon lange.
Zun&#228;chst sollte man sich ins Ged&#228;chtnis rufen, was ein [...]<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/vergleich-aktueller-php-compiler.html">Vergleich aktueller PHP Compiler</a></p>
]]></description>
			<content:encoded><![CDATA[<p><strong>Superschnelle PHP-Anwendungen f&#252;r eine sehr gro&#223;e Menge von Besuchern?</strong> &#8211; Klar geht das. Facebook ist so eine &#8220;busy App&#8221;, geschrieben in PHP.</p>
<p>Facebook hat vor kurzem einen PHP Compiler namens HipHop vorgestellt, was ein allgemeines Interesse an PHP-Compilern zufolge hatte. PHP kompiliert? Ja, das gibt es schon lange.</p>
<p>Zun&#228;chst sollte man sich ins Ged&#228;chtnis rufen, was ein Compiler ist:</p>
<blockquote><p>Ein Compiler ist ein Programm, das Source Code in eine andere Form von Code bringt (Repr&#228;sentation von Source Code). Die Ziel-Repres&#228;ntation ist oft Maschinencode (direkt ausf&#252;hrbar auf dem Host-Prozessor), kann aber auch Sourcecode einer anderen Sprache oder sogar Sourcecode derselben Sprache sein.</p></blockquote>
<p><em>Das Compilieren</em> bedeutet also <strong>nicht zwangsl&#228;ufig</strong>, da&#223; Maschinencode hinten rauspurzelt, der direkt auf dem Prozessor ausgef&#252;hrt werden kann.</p>
<p>PHP wird seit der Ver&#246;ffentlichung von PHP4 im Jahre 2000 compiliert. Bis einschlie&#223;lich PHP3 wurde der Sourcecode direkt vom PHP Interpreter ausgef&#252;hrt.</p>
<p>Interpreter-Sprachen m&#252;ssen nicht zwangsl&#228;ufig &#8220;schlechter&#8221; im Sinne von langsamer sein. Interpreter-Sprachen wie Basic, Smalltalk und viele andere haben andere Vorz&#252;ge wie z.B. die direkte Fehleranzeige, die Compiler-Sprachen aufw&#228;ndig re-implementieren m&#252;ssen (durch Source-Parser etc.). Es kommt immer darauf an, was man erreichen m&#246;chte, das Ziel gibt die Programmiersprache vor.</p>
<p>Neben der von den PHP-Erfindern stammende ZEND Engine gibt es einige weitere PHP-Compiler:</p>
<ul>
<li>opcodes: Zend engine (zend), <a href="http://en.wikipedia.org/wiki/Zend_Engine" target="_blank">http://en.wikipedia.org/wiki/Zend_Engine</a></li>
<li>native: Roadsend PHP (ppc), <a href="http://code.roadsend.com/pcc" target="_blank">http://code.roadsend.com/pcc</a></li>
<li>native: PHC PHP Open Source compiler (phc), <a href="http://www.phpcompiler.org/" target="_blank">http://www.phpcompiler.org/</a></li>
<li>native: HipHop for PHP (hiphop), <a href="http://wiki.github.com/facebook/hiphop-php/" target="_blank">http://wiki.github.com/facebook/hiphop-php/</a></li>
</ul>
<p>Zum Testen wurde ein Script namens <a href="http://svn.php.net/viewvc/php/php-src/trunk/Zend/bench.php?view=markup" target="_blank">bench.php</a> verwendet.</p>
<p>Ergebnisse des Tests:</p>
<table border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th>Compiler</th>
<th>Zeit</th>
<th>Rel. Geschw.</th>
</tr>
</thead>
<tbody>
<tr>
<td>Zend Server</td>
<td>5.722</td>
<td>0.00%</td>
</tr>
<tr>
<td>Zend Server + Zend Optimizer</td>
<td>5.649</td>
<td>1.28%</td>
</tr>
<tr>
<td>PHP static</td>
<td>5.518</td>
<td>3.57%</td>
</tr>
<tr>
<td>PHP static + Zend Optimizer</td>
<td>5.427</td>
<td>5.16%</td>
</tr>
<tr>
<td>PHC</td>
<td>6.438</td>
<td>-12.51%</td>
</tr>
<tr>
<td><strong>PHP optimized</strong></td>
<td><strong>3.673</strong></td>
<td><strong>35.81%</strong></td>
</tr>
<tr>
<td>HipHop</td>
<td>4.262</td>
<td>25.52%</td>
</tr>
</tbody>
</table>
<p>PHC optimized bietet also die beste Performance. Bei der Wahl des Compilers sollte man sich nat&#252;rlich erst mit den Eigenschaften dieser Auseinandersetzen. PHC und HipHop verfolgen unterschiedliche Ans&#228;tze, so da&#223; nicht unbedingt die Geschwindigkeit als alleiniges Entscheidungskriterium herangezogen werden kann.</p>
<p>Der Test ber&#252;cksichtigt keinen Objekt orientierten Code, bench.php ist ein prozedurales Script.</p>
<p>Das Konzept von PHC finde ich pers&#246;nlich interessant: hiermit ist es m&#246;glich, eine Anwendung in unabh&#228;ngige, optimierte Libs zu zerteilen, die einzeln gewartet werden k&#246;nnen. So erh&#228;lt man eine superschnelle &#8220;verteilte&#8221; Anwendung (wenn man wei&#223;, was man tut).</p>
<p>Quell-Angabe: dieser Artikel wurde direkt von einem <a href="http://www.phpclasses.org/blog/post/117-PHP-compiler-performance.html" target="_blank">Artikel von Manuel Lemos auf PHPclasses.org</a> inspiriert, wo sich noch viele weitere n&#252;tzliche Informationen zu diesem Thema finden. Ich fand den Artikel so interessant, da&#223; ich den Inhalt unbedingt weiter verteilen musste. Der Original Artikel ist englisch.</p>
<p>Juwelen, die man nebenbei entdeckt: auf der PHC-Download Seite findet man den Hinweise auf ROSE, ein Projekt, da&#223; C, C++, Fortran und eben auch PHP ineinander &#252;berf&#252;hrt und Analysetools bereitstellt. Wer also bisher in C, C++ Webanwendungen geschrieben hat, kann sich mit ROSE die Ergebnisse in PHP anschauen und durch die Analysetools aufdecken, welche Programmteile optimiert werden m&#252;ssen.</p>
<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/vergleich-aktueller-php-compiler.html">Vergleich aktueller PHP Compiler</a></p>
]]></content:encoded>
			<wfw:commentRss>http://seo-scout.org/recyclable-code/vergleich-aktueller-php-compiler.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drupal Beispielanwendung mit eigenem node-type, Views, CCK</title>
		<link>http://seo-scout.org/recyclable-code/drupal-beispielanwendung-mit-eigenem-node-type-views-cck.html</link>
		<comments>http://seo-scout.org/recyclable-code/drupal-beispielanwendung-mit-eigenem-node-type-views-cck.html#comments</comments>
		<pubDate>Sun, 08 Nov 2009 15:38:14 +0000</pubDate>
		<dc:creator>Frank Pfabigan</dc:creator>
				<category><![CDATA[Recyclable Code]]></category>
		<category><![CDATA[Drupal]]></category>

		<guid isPermaLink="false">http://seo-scout.org/?p=573</guid>
		<description><![CDATA[Gleich nachdem ich f&#252;r einen Kunden eine Anwendung fertiggestellt hatte, habe ich heute Nacht noch meinen ersten Artikel f&#252;r die Drupal-Gemeinde geschrieben. In rostigem englisch (Es ist unglaublich, wie schnell man alles vergisst, wenn man es nicht ab und zu nutzt).
Dabei geht es darum, eine Pinnwand zu realisieren, auf der Notizzettel festgepinnt werden, die man [...]<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/drupal-beispielanwendung-mit-eigenem-node-type-views-cck.html">Drupal Beispielanwendung mit eigenem node-type, Views, CCK</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Gleich nachdem ich f&#252;r einen Kunden eine Anwendung fertiggestellt hatte, habe ich heute Nacht noch meinen ersten Artikel f&#252;r die Drupal-Gemeinde geschrieben. In rostigem englisch (Es ist unglaublich, wie schnell man alles vergisst, wenn man es nicht ab und zu nutzt).</p>
<p>Dabei geht es darum, eine Pinnwand zu realisieren, auf der Notizzettel festgepinnt werden, die man sich der Detailansicht einzeln anschauen kann.</p>
<p>Drupal ist das Basissystem, erweitert durch die Module CCK, Views und ein paar andere.</p>
<p>Die Ausgabe der Pinnwand wird wie in Drupal &#252;blich durch Bereitstellen einer entsprechend benannten Datei &#252;berschrieben und durch zus&#228;tzlichen HTML- und CSS-Code in die gew&#252;nschte Form gepresst, damit das ganze wie eine Pinnwand mit gelben Notizzetteln darauf aussieht. Links zu Screenshots sind dem Artikel beigef&#252;gt.</p>
<p>Mein erster Drupal Artikel: <a href="http://drupal.org/node/626578" target="_blank">http://drupal.org/node/626578</a></p>
<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/drupal-beispielanwendung-mit-eigenem-node-type-views-cck.html">Drupal Beispielanwendung mit eigenem node-type, Views, CCK</a></p>
]]></content:encoded>
			<wfw:commentRss>http://seo-scout.org/recyclable-code/drupal-beispielanwendung-mit-eigenem-node-type-views-cck.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Daten aufbereiten und visualisieren</title>
		<link>http://seo-scout.org/recyclable-code/daten-aufbereiten-und-visualisieren.html</link>
		<comments>http://seo-scout.org/recyclable-code/daten-aufbereiten-und-visualisieren.html#comments</comments>
		<pubDate>Sun, 16 Aug 2009 14:05:05 +0000</pubDate>
		<dc:creator>Frank Pfabigan</dc:creator>
				<category><![CDATA[Recyclable Code]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[visuals]]></category>

		<guid isPermaLink="false">http://seo-scout.org/?p=497</guid>
		<description><![CDATA[
Hier habe ich ein Beispiel daf&#252;r gefunden, wie man aus langweiligen statistischen Daten wundersch&#246;ne Grafiken erzeugen kann, die man sich sogar an die Wand h&#228;ngen kann.
Lee Byron hat anhand seiner bei last.fm hinterlegten Statistiken herausgefunden, welche Musik er zu welchem Zeitpunkt wirklich am liebsten geh&#246;rt hat. Er nutzt dazu Tools aus dem OpenSource-Bereich wie z.B. [...]<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/daten-aufbereiten-und-visualisieren.html">Daten aufbereiten und visualisieren</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.leebyron.com/what/lastfm/"><img class="alignnone" title="Stats on Wheel" src="http://www.leebyron.com/what/lastfm/colorwheel.jpg" alt="" width="336" height="336" /></a></p>
<p>Hier habe ich ein Beispiel daf&#252;r gefunden, wie man aus langweiligen statistischen Daten wundersch&#246;ne Grafiken erzeugen kann, die man sich sogar an die Wand h&#228;ngen kann.</p>
<p>Lee Byron hat anhand seiner bei last.fm hinterlegten Statistiken herausgefunden, welche Musik er zu welchem Zeitpunkt wirklich am liebsten geh&#246;rt hat. Er nutzt dazu Tools aus dem OpenSource-Bereich wie z.B. <a title="Processing Data" href="http://www.processing.org/" target="_blank">Processing</a>, um die Daten zu visualisieren und zu ordnen.</p>
<p>Ich mu&#223; sagen, die Ergebnisse sind wirklich beeindruckend und nett anzuschauen.</p>
<p><a href="http://www.leebyron.com/what/lastfm/"><img class="alignnone" title="Lee Byron last.fm data visualized" src="http://www.leebyron.com/what/lastfm/poster.jpg" alt="" width="631" height="192" /></a></p>
<p><a href="http://seo-scout.org">SEO Scout | Suchmaschinenoptimierung</a>. Methoden f&uuml;r Suchmaschinenoptimierung, Blog-Optimierung, Geldverdienen mit Blogs. Grundlagenartikel und Fortgeschrittenen-Stuff ;-)
<br/>» <a href="http://seo-scout.org/recyclable-code/daten-aufbereiten-und-visualisieren.html">Daten aufbereiten und visualisieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://seo-scout.org/recyclable-code/daten-aufbereiten-und-visualisieren.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

