<?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>Jan Fanslau &#187; code</title>
	<atom:link href="http://www.jan-fanslau.de/tag/code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jan-fanslau.de</link>
	<description></description>
	<lastBuildDate>Tue, 23 Nov 2010 14:23:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>MTV Entertainment &#8211; online</title>
		<link>http://www.jan-fanslau.de/projekte/coding/mtv-entertainment-online/</link>
		<comments>http://www.jan-fanslau.de/projekte/coding/mtv-entertainment-online/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 10:54:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[mtv]]></category>
		<category><![CDATA[MTV Entertainment]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=609</guid>
		<description><![CDATA[MTV Entertainment]]></description>
			<content:encoded><![CDATA[<div id="attachment_613" class="wp-caption alignleft" style="width: 310px"><a href="http://www.jan-fanslau.de/projekte/mtv-entertainment-online/"><img class="size-medium wp-image-613  " title="mtv_entertainment" src="http://www.jan-fanslau.de/wp-content/uploads/mtv_entertainment-300x275.png" alt="" width="300" height="275" /></a><p class="wp-caption-text"> </p></div>
<p>Gemeinsam mit der Agentur <a title="Loveto Kommunikationsagentur" href="http://loveto.de/" target="_blank">Loveto</a> wurde die neue Webseite für die Pay-TV-Sparte von <a title="MTV" href="http://mtv.de" target="_blank">MTV</a> entwickelt.</p>
<p><a title="MTV Entertainment" href="http://mtventertainment.de" target="_blank">MTV Entertainment.</a></p>
<p>Das Layout stammt vom lovetischen Art-Director Matthias Jakubek, für die Programmierung zeichne ich mich verantwortlich. Die gesamte Webseite basiert auf PHP und mySQL mit eigenem Content Management System. Als Frameworks wurden Zend (PHP) sowie jQuery (Javascript) eingesetzt.</p>
<p><span id="more-609"></span></p>
<p>Ein besonderer Augenmerk wurde neben der Browserkompatibilität auf</p>
<p>Die Seite hat ein paar schöne Details wie zum Beispiel der Ajax-gesteuerte Bildwechsler, der sowohl Bilder als auch Videos ausliefern kann. Zudem greift ein Cronjob täglich die aktuellsten EPG &#8211; Files des Senders ab und erstellt daraus die Wochenübersichten.</p>
<p><a title="MTV Entertainment" href="http://mtventertainment.de" target="_blank">&#8211;&gt; Projekt ansehen</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/projekte/coding/mtv-entertainment-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook &#8211; Post an Fanpage &#8211; Wall</title>
		<link>http://www.jan-fanslau.de/facebook/facebook-post-an-fanpage-wall/</link>
		<comments>http://www.jan-fanslau.de/facebook/facebook-post-an-fanpage-wall/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 13:12:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[facebook]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Lösung]]></category>
		<category><![CDATA[Nerd Stuff]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=583</guid>
		<description><![CDATA[Wenn Ihr von eurer Webseite aus auf eine Fanpage-Wall posten wollt, dann habt Ihr hier ein kleines Tutorial: 1. Bei Facebook anmelden (http://www.facebook.com) 2. Eine neue Facebook-App erstellen (http://www.facebook.com/developers/createapp.php) 3. Der App muss nun ein Name gegeben werden und die Sicherheitsabfrage muss ausgefüllt werden 4. Wichtig sind jetzt die Anwendungs ID (Application ID) und der [...]]]></description>
			<content:encoded><![CDATA[<p>Wenn Ihr von eurer Webseite aus auf eine Fanpage-Wall posten wollt, dann habt Ihr hier ein kleines Tutorial:</p>
<p>1. Bei Facebook anmelden (http://www.facebook.com)</p>
<p>2. Eine neue Facebook-App erstellen (http://www.facebook.com/developers/createapp.php)</p>
<p>3. Der App muss nun ein Name gegeben werden und die Sicherheitsabfrage muss ausgefüllt werden</p>
<p>4. Wichtig sind jetzt die Anwendungs ID (Application ID) und der API-Schlüssen (API-Key)<br />
<span id="more-583"></span><br />
5. In eurem PHP-Code müsst Ihr jetzt folgende Codes einfügen</p>
<pre><code class="php">&lt;?php

define('FACEBOOK_APP_ID', 'XXXXXXXXXXXXXX'); #APPLICATION ID
define('FACEBOOK_SECRET', 'XXXXXXXXXXXXXX'); #API-KEY

function get_facebook_cookie($app_id, $application_secret) {
$args = array();
parse_str(trim($_COOKIE['fbs_' . $app_id], '\"'), $args);
ksort($args);
$payload = '';
foreach ($args as $key =&amp;gt; $value) {
if ($key != 'sig') {
$payload .= $key . '=' . $value;
}
}
if (md5($payload . $application_secret) != $args['sig']) {
return null;
}
return $args;
}

$cookie = get_facebook_cookie(FACEBOOK_APP_ID, FACEBOOK_SECRET);

?&gt;</code></pre>
<p>5. So als nächstes solltet Ihr noch ein Snippet schreiben das checkt ob Ihr bei Facebook eingeloggt seid:</p>
<pre><code>&lt;?php if ($cookie) { ?&gt;
      Your user ID is &lt;?= $cookie['uid'] ?&gt;
    &lt;?php } else { ?&gt;
      &lt;fb:login-button perms="publish_stream"&gt;&lt;/fb:login-button&gt;
    &lt;?php } ?&gt;</code></pre>
<p>6. Damit der FB-Login-Button anständig gerendert wird muss in euren HTML-Quelltext direkt nach &lt;body&gt;:</p>
<pre><code>&lt;div id="fb-root"&gt;&lt;/div&gt;
&lt;script&gt;
//XXX = Facebook App - ID
  window.fbAsyncInit = function() {
    FB.init({
      appId  : 'XXXXXXXXXXXXXXXX',
      status : true, // check login status
      cookie : true, // enable cookies to allow the server to access the session
      xfbml  : true  // parse XFBML
    });
  };

  (function() {
    var e = document.createElement('script');
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
    e.async = true;
    document.getElementById('fb-root').appendChild(e);
  }());
&lt;/script&gt;</code></pre>
<p>7. Ihr braucht eine Funktion die für euch den Request an die Graph-Api von Facebook stellt:</p>
<pre><code>function makeRequest($url, $params, $ch=null) {
if (!$ch) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
}</code>

$opts = array(
CURLOPT_CONNECTTIMEOUT =&gt; 10,
CURLOPT_RETURNTRANSFER =&gt; true,
CURLOPT_TIMEOUT        =&gt; 60,
CURLOPT_USERAGENT      =&gt; 'facebook-php-2.0',
);
$opts[CURLOPT_POSTFIELDS] = http_build_query($params, null, '&amp;');
$opts[CURLOPT_URL] = $url;
print_r($opts);
curl_setopt_array($ch, $opts);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}</pre>
<p>8. So und als letztes fehlt noch der Aufruf der den Request abschickt und die Daten an Facebook übermittelt.</p>
<pre><code>$params['message'] = 'This is a test';
		$params['access_token']=$cookie['access_token'];
		$url = 'https://graph.facebook.com/XXXXXXXXXXXXX/feed'; #XXXXXXXX = ID der Fanpage
		//print_r(makeRequest($url, $params));
	//	print_r(json_decode(file_get_contents($url)));
		print_r(makeRequest($url, $params));</code></pre>
<p>Ich werde das wenn ich mal ein bischen Ruhe habe, in eine schöne downloadbare Version hacken. Bis dahin hoffe ich, dass ihr mit dem Code was anfangen könnt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/facebook/facebook-post-an-fanpage-wall/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Neue Webseite online</title>
		<link>http://www.jan-fanslau.de/projekte/coding/neue-webseite-online/</link>
		<comments>http://www.jan-fanslau.de/projekte/coding/neue-webseite-online/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 01:24:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[vierzehnelf]]></category>
		<category><![CDATA[vierzehnelf media]]></category>
		<category><![CDATA[Website]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=562</guid>
		<description><![CDATA[Für die vierzehnelf media &#8211; Agentur ist letzte Woche die neue Webseite online gegangen. Das Layout kam von der Agentur die PHP / HTML / CSS Umsetzung wurde durch mich realisiert. Ein schickes kleines Projekt mit Hauptaugenmerk auf iPad-Konformität. Webseite anschauen]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignleft" style="width: 230px"><a href="http://www.vierzehnelf.de" target="_blank"><img class=" " title="vierzehnelf media" src="http://www.vierzehnelf.de/images/vierzehnelf_logo.jpg" alt="" width="220" height="150" /></a><p class="wp-caption-text"> </p></div>
<p>Für die vierzehnelf media &#8211; Agentur ist letzte Woche die neue Webseite online gegangen. Das Layout kam von der Agentur die PHP / HTML / CSS Umsetzung wurde durch mich realisiert.</p>
<p>Ein schickes kleines Projekt mit Hauptaugenmerk auf iPad-Konformität.</p>
<p><a href="http://www.vierzehnelf.de" target="_blank">Webseite anschauen</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/projekte/coding/neue-webseite-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook &#8211; Connect: Image Upload mit PHP SDK</title>
		<link>http://www.jan-fanslau.de/codeschnipsel/facebook-connect-image-upload-mit-php-sdk/</link>
		<comments>http://www.jan-fanslau.de/codeschnipsel/facebook-connect-image-upload-mit-php-sdk/#comments</comments>
		<pubDate>Mon, 10 May 2010 08:07:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Codeschnipsel]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[connect]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=532</guid>
		<description><![CDATA[Der Image Upload mit der graph-api von Facebook ist ziemlich einfach und gut zu benutzen: Nachfolgend gibts zwei Codeschnipsel mit dem man A. Alben anlegt und B. Photos hochlädt. Dazu habe ich mir die Graph-PHP-Api ein bischen erweitert. private function createAlbum(){ $params = array(); if (!isset($params['access_token'])) { $session = $this-&#38;gt;getSession(); // either user session signed, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" style="padding-right: 10px;" title="Facebook" src="http://farm1.static.flickr.com/225/503165914_a680a56c77_m_d.jpg" alt="" width="240" height="90" />Der Image Upload mit der graph-api von Facebook ist ziemlich einfach und gut zu benutzen:</p>
<p>Nachfolgend gibts zwei Codeschnipsel mit dem man A. Alben anlegt und B. Photos hochlädt. Dazu habe ich mir die Graph-PHP-Api ein bischen erweitert.<span id="more-532"></span></p>
<pre><code>private function createAlbum(){
 $params = array();
 if (!isset($params['access_token'])) {
 $session = $this-&amp;gt;getSession();
 // either user session signed, or app signed
 if ($session) {
 $params['access_token'] = $session['access_token'];
 } else {
 // TODO (naitik) sync with abanker
 //$params['access_token'] = $this-&amp;gt;getAppId() .'|'. $this-&amp;gt;getApiSecret();
 }
 }
 $params['name'] = "test";
 $params['message'] = "my new Test-Album";
 $url ="https://graph.facebook.com/me/albums";
 return $this-&amp;gt;makeRequest($url, $params);
 }</code></pre>
<p>Bildupload zu Facebook</p>
<pre><code>private function uploadImageData($albumId, $image){

 $params = array();
 if (!isset($params['access_token'])) {
 $session = $this-&amp;gt;getSession();
 // either user session signed, or app signed
 if ($session) {
 $params['access_token'] = $session['access_token'];
 } else {
 // TODO (naitik) sync with abanker
 //$params['access_token'] = $this-&amp;gt;getAppId() .'|'. $this-&amp;gt;getApiSecret();
 }
 }

 $file= $image;
 $args = array(
 'message' =&amp;gt; 'Photo from application',
 );
 $args[basename($file)] = '@' . realpath($file);
 $ch = curl_init();
 $url ="https://graph.facebook.com/".$albumId."/photos?access_token=".$params['access_token'];
 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_HEADER, false);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 curl_setopt($ch, CURLOPT_POST, true);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
 $data = curl_exec($ch);
 //returns the photo id
 print_r(json_decode($data,true));
 }</code></pre>
<p>Ich hoffe Ihr könnt Damit was anfangen. Sicherlich gibts später noch mehr dazu.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/codeschnipsel/facebook-connect-image-upload-mit-php-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Best Zend-Tutorial for beginners ever !!!</title>
		<link>http://www.jan-fanslau.de/fundstucke/best-zend-tutorial-for-beginners-ever/</link>
		<comments>http://www.jan-fanslau.de/fundstucke/best-zend-tutorial-for-beginners-ever/#comments</comments>
		<pubDate>Sat, 22 Aug 2009 18:48:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Fundstücke]]></category>
		<category><![CDATA[Anfänger]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Milestones]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[Zend]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=473</guid>
		<description><![CDATA[Zend, eines der großen PHP-Frameworks hat eine ganz entscheidene Schwäche. Die Doku ist mäßig bis schlecht. Man findet zwar zu jeder Methode einen passenden Artikel, doch leider immer so aus dem Kontext gerissen, dass es schwierig ist zu folgen. Zudem sind die Verlinkungen innerhalb der Doku schlicht und einfach nicht vorhanden&#8230; Nun, auf dem Weg [...]]]></description>
			<content:encoded><![CDATA[<p>Zend, eines der großen PHP-Frameworks hat eine ganz entscheidene Schwäche. Die Doku ist mäßig bis schlecht. Man findet zwar zu jeder Methode einen passenden Artikel, doch leider immer so aus dem Kontext gerissen, dass es schwierig ist zu folgen. Zudem sind die Verlinkungen innerhalb der Doku schlicht und einfach nicht vorhanden&#8230;</p>
<p>Nun, auf dem Weg mich halbwegs anständig mit dem Zend-Framework vertraut zu machen bin ich schon einiges durchs Netz gesurft und habe hunderte von Tutorials  gefunden, aber entweder haben sie nicht funktioniert, waren auf französisch oder schlicht und einfach für Zend 1.0</p>
<p>Heute dann endlich die Erlösung und endlich der große Einstieg, der mir für mein nächstes großes Projekt den Anschub gegeben hat.</p>
<p>Wer ein wirklich gutes, wenn nicht sogar das beste Zend-Tutorial durcharbeiten möchte, der muss hier hin surfen!</p>
<p><a title="PHP everyday" href="http://www.phpeveryday.com" target="_blank">www.phpeveryday.com</a></p>
<p><a title="Zend Tutorial Intro" href="http://www.phpeveryday.com/pack/Zend-Framework-Intro-Step-By-Step-Tutorial" target="_blank">Intro Tutorial</a></p>
<p><a title="Zend ActionController Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Action-Step-By-Step-Tutorial" target="_blank">ActionController Tutorial</a></p>
<p><a title="Zend Database Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Database-Step-By-Step-Tutorial" target="_blank">Database Tutorial</a></p>
<p><a title="Zend Registry Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Registry-Step-By-Step-Tutorial" target="_blank">Registry Tutorial</a></p>
<p><a title="Zend Config Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Config-Step-By-Step-Tutorial" target="_blank">Config Tutorial</a></p>
<p><a title="Zend Login Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Login-Step-By-Step-Tutorial" target="_blank">Login Tutorial</a></p>
<p><a title="Zend Session Tutorial" href="http://www.phpeveryday.com/pack/Zend-Framework-Session-Step-By-Step-Tutorial" target="_blank">Session Tutorial</a></p>
<p>Die lohnen sich alle, am besten alle von Anfang bis Ende durch rocken!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/fundstucke/best-zend-tutorial-for-beginners-ever/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Apache Listview mit mod_autoindex</title>
		<link>http://www.jan-fanslau.de/tools/apache-listview-mit-mod_autoindex/</link>
		<comments>http://www.jan-fanslau.de/tools/apache-listview-mit-mod_autoindex/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 17:10:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mod_autoindex]]></category>
		<category><![CDATA[Nerd Stuff]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[virtueller Server]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=464</guid>
		<description><![CDATA[Auf der Suche nach einer einfachen Möglichkeit meinen Kunden einen &#8211; für sie übersichtlichen &#8211; Downloadbereich zu erstellen bin ich über mod_autoindex gestolpert. An dem Modul führt kein Weg vorbei. Noch viel besser wird es allerdings, wenn sich das ganze Aussehen noch steuern läßt. Dazu habe ich ein geniales Howto auf http://recurser.com/ gefunden. Das komplette [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-469" style="margin-right: 10px;" title="index-style1" src="http://www.jan-fanslau.de/wp-content/uploads/index-style1.png" alt="index-style1" width="259" height="259" /></p>
<p>Auf der Suche nach einer einfachen Möglichkeit meinen Kunden einen &#8211; für sie übersichtlichen &#8211; Downloadbereich zu erstellen bin ich über mod_autoindex gestolpert. An dem Modul führt kein Weg vorbei.</p>
<p>Noch viel besser wird es allerdings, wenn sich das ganze Aussehen noch steuern läßt.</p>
<p>Dazu habe ich ein geniales Howto auf <a title="recurser" href="http://recurser.com/" target="_blank">http://recurser.com/</a> gefunden.</p>
<p>Das komplette Howto findet Ihr <a title="Styling apache directory listing with mod_autoindex" href="http://recurser.com/articles/2008/12/29/styling-apache-directory-listings-with-mod_autoindex/" target="_blank">hier</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/tools/apache-listview-mit-mod_autoindex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu Performance Tuning &#8211; Teil 1</title>
		<link>http://www.jan-fanslau.de/ubuntu/ubuntu-performance-tuning-teil-1/</link>
		<comments>http://www.jan-fanslau.de/ubuntu/ubuntu-performance-tuning-teil-1/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 08:40:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lösung]]></category>
		<category><![CDATA[Nerd Stuff]]></category>
		<category><![CDATA[Netbook]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[root]]></category>
		<category><![CDATA[Tuning]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=348</guid>
		<description><![CDATA[Das war eine lange Nacht gestern, aber es hat sich wirklich gelohnt. Seit ich zum Geburtstag ein Acer Aspire One geschenkt bekommen hab (hierfür noch einmal vielen Dank ) war ich nie so ganz zufrieden mit der Performance meiner kleinen Ubuntu Rechenmaschine. Doch das hat sich gestern endlich geändert. Ich habe drei Stunden lang getuned, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-350" title="Ubuntu Logo" src="http://www.jan-fanslau.de/wp-content/uploads/ubuntulogo-300x78.png" alt="Ubuntu Logo" width="300" height="78" />Das war eine lange Nacht gestern, aber es hat sich wirklich gelohnt. Seit ich zum Geburtstag ein Acer Aspire One geschenkt bekommen hab (hierfür noch einmal vielen Dank <img src='http://www.jan-fanslau.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) war ich nie so ganz zufrieden mit der Performance meiner kleinen Ubuntu Rechenmaschine. Doch das hat sich gestern endlich geändert. Ich habe drei Stunden lang getuned, getweakt und den Kernel gehackt. Es war eine Freude&#8230;</p>
<p>Im ersten Teil der kurzen Reihe &#8220;Ubuntu Performance Tuning&#8221; wird auf den Firefox eingegangen. Der Zweite Teil beschäftigt sich mit dem Anpassen des XServers und im dritten Teil werden unnötige Programme gelöscht und das Startverhalten angepasst.</p>
<p>Auf gehts mit Firefox.</p>
<p><span id="more-348"></span></p>
<p>Getuned habe ich als erstes den Firefox, da dieser Webseiten extrem langsam aufgebaut hatte und zwischendurch immer wieder in einem häßlichen grau erstarrte und nicht reagierte.</p>
<p>Was ist zu tun?</p>
<p>1. Firefox starten und <strong>about:config </strong>in die Adresszeile eintippen<br />
<img class="alignnone size-full wp-image-351" title="firefox_about_config_1" src="http://www.jan-fanslau.de/wp-content/uploads/firefox_about_config_1.jpg" alt="firefox_about_config_1" width="619" height="237" /></p>
<p>2. Folgende Parameter in den Filter eingeben und Werte entsprechend der Liste ändern.</p>
<table border="0">
<tbody>
<tr>
<td><strong>Parameter</strong></td>
<td><strong>Neuer Wert</strong></td>
</tr>
<tr>
<td>network.http.pipelining</td>
<td>true</td>
</tr>
<tr>
<td>network.http.pipelining.maxrequests</td>
<td>8</td>
</tr>
<tr>
<td>network.http.proxy.pipelining</td>
<td>true</td>
</tr>
<tr>
<td>network.dns.disableIPv6</td>
<td>true</td>
</tr>
<tr>
<td>plugin.expose_full_path</td>
<td>true</td>
</tr>
</tbody>
</table>
<p>3.  Nun müssen noch eigene Parameter mit speziellen Datentypen angelegt werden. Neue Werte werden mit einem Rechtsklick im Browserfenster (about:config) und im erscheinen Contextmenü mit einem Klick auf Neu und der Auswahl des Datentyps angelegt.</p>
<p><img class="alignnone size-full wp-image-352" title="firefox_about_config_new" src="http://www.jan-fanslau.de/wp-content/uploads/firefox_about_config_new.jpg" alt="firefox_about_config_new" width="619" height="237" /></p>
<p>Die in Parameter in der folgenden Tabelle sollten erstellt werden.</p>
<table border="0">
<tbody>
<tr>
<td><strong>Datentyp</strong></td>
<td><strong>Parametername</strong></td>
<td><strong>Neuer Wert</strong></td>
</tr>
<tr>
<td>Integer</td>
<td>nglayout.initialpaint.delay</td>
<td>0</td>
</tr>
<tr>
<td>Integer</td>
<td>content.notify.backoffcount</td>
<td>5</td>
</tr>
<tr>
<td>Integer</td>
<td>ui.submenuDelay</td>
<td>0</td>
</tr>
</tbody>
</table>
<p>Nach einem Neustart des Feuerfuchses sollte nun eine erhebliche Performancesteigerung spürbar sein. Wer selber nicht an seiner Firefox-Konfiguration rumschrauben möchte kann eine Alternative namens Fasterfox installieren. Dort wurden die meisten Änderungen bereits implementiert.</p>
<p>In Teil 2 der Reihe &#8220;Ubuntu Performance Tuning&#8221; wird auf die Beschleunigung des XServers durch inoffizielle Treiber eingegangen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/ubuntu/ubuntu-performance-tuning-teil-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Webpräsentations-Tool für professionelle Webcams</title>
		<link>http://www.jan-fanslau.de/projekte/webprasentations-tool-fur-professionelle-webcams/</link>
		<comments>http://www.jan-fanslau.de/projekte/webprasentations-tool-fur-professionelle-webcams/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 20:57:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Kunden]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Überwachungstechnik]]></category>
		<category><![CDATA[UL-Consult]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.jan-fanslau.de/?p=325</guid>
		<description><![CDATA[ In einer gemeinsamen Kooperation mit einem der führenden Anbieter professioneller Kameratechniken UL-Consult habe ich ein Webpräsentations-Tool für die Darstellung von Webcam-Bildern entwickelt. Schwerpunkt der Arbeit lag in einer simplen Konfigurierbarkeit der Anwendung zur leichten Integration in Firmenwebseiten. Im Grunde ist die komplette Darstellung über eine einfach zu handhabende Konfigurationsdatei einstellbar. Von der Größe der Vorschaubilder, über [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-326 alignleft" title="ul-consult-logo" src="http://www.jan-fanslau.de/wp-content/uploads/ul-consult-logo.gif" alt="ul-consult-logo" width="164" height="51" /> In einer gemeinsamen Kooperation mit einem der führenden Anbieter professioneller Kameratechniken<a title="UL-Consult" href="http://www.ulconsult.de/" target="_blank"> UL-Consult</a> habe ich ein Webpräsentations-Tool für die Darstellung von Webcam-Bildern entwickelt. Schwerpunkt der Arbeit lag in einer simplen Konfigurierbarkeit der Anwendung zur leichten Integration in Firmenwebseiten. Im Grunde ist die komplette Darstellung über eine einfach zu handhabende Konfigurationsdatei einstellbar. Von der Größe der Vorschaubilder, über die Anzahl der einzelnen Bilder, bis zur Farbe der RollOver-Effekte ist so gut wie alles mit einfachen Mitteln konfigurierbar.</p>
<p>Eine Beispielversion mit Bildern aus der einer fiktiven Gallery ist <a title="Beispiel - Webpräsentationstool" href="http://www.ulconsult.de/content/view/96/109/" target="_blank">hier</a> zu finden.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/projekte/webprasentations-tool-fur-professionelle-webcams/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Syntax Highlighting für WordPress</title>
		<link>http://www.jan-fanslau.de/codeschnipsel/syntax-highlighting-fur-wordpress/</link>
		<comments>http://www.jan-fanslau.de/codeschnipsel/syntax-highlighting-fur-wordpress/#comments</comments>
		<pubDate>Wed, 27 May 2009 07:55:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Codeschnipsel]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Nerd Stuff]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://jan-fanslau.de/blog/?p=156</guid>
		<description><![CDATA[Auf Nachfrage und wegen eigenem Interesses habe ich mich mal ein bischen nach Plugins für Code-Highlighting umgesehen. Wordpress liefert ja schon einen eigenen kleinen Highlighter mit (im HTML Edit-Mode unter code). Jedoch stößt es schnell an seine Grenzen weil es nicht ohne weiteres copy-paste-code highlightet. Man muss umständlich jede Zeile überprüfen, ob WordPress, diese auch [...]]]></description>
			<content:encoded><![CDATA[<p>Auf Nachfrage und wegen eigenem Interesses habe ich mich mal ein bischen nach Plugins für Code-Highlighting umgesehen.<br />
Wordpress liefert ja schon einen eigenen kleinen Highlighter mit (im HTML Edit-Mode unter code). Jedoch stößt es schnell an seine Grenzen weil es nicht ohne weiteres copy-paste-code highlightet. Man muss umständlich jede Zeile überprüfen, ob WordPress, diese auch umwandeln kann.</p>
<p>Ein sehr viel besseres Plug in ist von <a title="Stephan Ahlf - osexpert" href="http://www.osexpert.net/" target="_blank">Stephan Ahlf</a> es bietet jede Menge verschiedener Styles, erkennt die verschiedene Programmiersprachen und färbt sie in den dem Programmierer bekannten Farben.<br />
Das Plugin gibt es hier: <a href="http://www.osexpert.net/wordpress-syntax-highlighter/" target="_blank">http://www.osexpert.net/wordpress-syntax-highlighter/</a></p>
<p>Zum Vergleich:<br />
Wordpress &#8211; Code<br />
<code>if (is_array($parts)) {<br />
$parts = array_filter($parts);<br />
if (count($parts) &amp;gt; 0 ) {<br />
$path = '/' .implode("/", $parts) . '/';<br />
}<br />
unset ($parts);<br />
}<br />
?&amp;gt;</code></p>
<p>Dojox WordPress Syntax Highlighter</p>
<pre><code>if (is_array($parts)) {
   $parts = array_filter($parts);

   if (count($parts) &amp;gt; 0 ) {
   	$path = '/' .implode("/", $parts) . '/';
   }
   unset ($parts);
}</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.jan-fanslau.de/codeschnipsel/syntax-highlighting-fur-wordpress/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

