<?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>noCreativity.com &#187; PHP</title>
	<atom:link href="http://nocreativity.com/blog/tag/php/feed" rel="self" type="application/rss+xml" />
	<link>http://nocreativity.com</link>
	<description>The life and discoveries of a new media artist</description>
	<lastBuildDate>Sat, 07 Jan 2012 17:03:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The world&#8217;s most pointless argument</title>
		<link>http://nocreativity.com/blog/the-worlds-most-pointless-argument</link>
		<comments>http://nocreativity.com/blog/the-worlds-most-pointless-argument#comments</comments>
		<pubDate>Tue, 01 Nov 2011 06:19:49 +0000</pubDate>
		<dc:creator>Ronny</dc:creator>
				<category><![CDATA[Everything else]]></category>
		<category><![CDATA[fibonacci]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[NodeJS]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://nocreativity.com/?p=1920</guid>
		<description><![CDATA[I get very annoyed when people make a valid point using unappropriate examples. This one is about NodeJS. It haunted me for weeks now and I had to get it out of my system. The fibonacci example was wrong and here's why.]]></description>
			<content:encoded><![CDATA[<p>If you read this, you undoubtably have seen <a href="http://teddziuba.com/2011/10/node-js-is-cancer.html" target="_blank" target="_blank">this post</a> stating that NodeJS is cancer. Quite honestly: I couldn&#8217;t care less about the argument at hand: I use NodeJS for personal projects and it&#8217;s big fun. I got it up and running easily and I have been creating stuff with it ever since. I&#8217;m mostly building realtime multi-user applications that rely on socket communication. That should tell you just about enough about the fact that I have little expertise with NodeJS.</p>
<p>However, that post by Ted Dziuba had me wondering. Is he right? Probably. He seems like a very smart man and considers many things I didn&#8217;t even think off. However, that fibonacci example had me confused. Why did that call take so long. Many days have passed since the original post and I never spent more than a few seconds wondering.</p>
<p>Until tonight. I was wondering what the general consensus was about NodeJS and came across a number of posts referring to Ted&#8217;s writing. <a href="http://joshuakehn.com/2011/10/3/Diagnosis-No-Cancer.html" target="_blank" target="_blank">This one in particular</a> had me taken in. Here, Joshua Kehn takes the analog of the given fibonacci example and translates it to a few other programming languages. The result? Every other language shows this massive waiting behavior. After reading this I had to find out: WHAT IS GOING ON!?</p>
<p>How can figuring out the 40th number of the fibonacci sequence take several seconds!? So I wrote a quick test in Javascript (read: I copy-pasted Ted&#8217;s code) and ran it in the browser.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>n <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>	
	<span style="color: #009900;">&#125;</span>	
	<span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> fibo1<span style="color: #009900;">&#40;</span><span style="color: #CC0000;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Result : '</span> <span style="color: #339933;">+</span> result<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p><em>3.08 seconds. Holy shit&#8230; </em>At this point I was hooked. How!? Why!? This looks like reasonable code&#8230; Let the computer calculate what needs to be calculated and return the result as soon as possible, right&#8230; Can&#8217;t be more than about 50-60 function calls&#8230; I took the liberty to count the number of function calls&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> fcalls<span style="color: #339933;">=</span><span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">function</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	fcalls<span style="color: #339933;">++;</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>n <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>	
	<span style="color: #009900;">&#125;</span>	
	<span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> fibo1<span style="color: #009900;">&#40;</span><span style="color: #CC0000;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Result : '</span> <span style="color: #339933;">+</span> result <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;lt;br/&amp;gt;Function calls: '</span> <span style="color: #339933;">+</span> fcalls<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>331 160 281 function calls!? That&#8217;s 331 million function calls. Are you freakin&#8217; kidding me!? For the 40th number in the fibonacci sequence. WHAT THE HELL!?</p>
<p>At this point I was doubting my own skills in writing a valid step counter in Javascript before actually believing that this many function calls were actually being executed. However that would explain the 3 second delay&#8230; Wait, what!? <em>3 seconds?</em> To execute a <em>mindblowing</em> 331 million function calls? (It is worth noting that Sheldon Cooper was wrong: <em>Once your mind is blown, it <span style="text-decoration: underline;">can</span> be re-blown.</em>)</p>
<p>But&#8230; Joshua correctly stated a mistake by Ted, which is that Ted&#8217;s fibonacci algorithm is incorrect. Let&#8217;s fix that&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> fcalls<span style="color: #339933;">=</span><span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">function</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	fcalls<span style="color: #339933;">++;</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>n <span style="color: #339933;">&lt;</span> <span style="color: #339933;">=</span> <span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>	
	<span style="color: #009900;">&#125;</span>	
	<span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">return</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> fibo1<span style="color: #009900;">&#40;</span>n<span style="color: #339933;">-</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> fibo1<span style="color: #009900;">&#40;</span><span style="color: #CC0000;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Result : '</span> <span style="color: #339933;">+</span> result <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;lt;br/&amp;gt;Function calls: '</span> <span style="color: #339933;">+</span> fcalls<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Hey! Look at that! <em>Only</em> 204 668 309 function calls! That&#8217;s a solid 130 million calls less. The execution time dropped by a second too! Only 2.1 second execution&#8230; Still: That&#8217;s a long time and that is still an INSANE amount of calls.</p>
<p>At this point I decided I was done with this crap. This implementation sucks royal rastaballs. Whoever thought the above was clever programming needs to stay off the drugs and reconsider his carreer choices.<br />
I remember writing fibonacci generators in high school, almost 10 years ago, and they didn&#8217;t take long. In fact: They were instantanious. Tell you what: I&#8217;ll just try it the old fashioned way&#8230; The human way.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> fibo2<span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> current <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> previous1 <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> previous2 <span style="color: #339933;">=</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">for</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> i<span style="color: #339933;">=</span><span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>i <span style="color: #339933;">&lt;</span> n<span style="color: #339933;">;</span>i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>	
		<span style="color: #006600; font-style: italic;">//previous 1 + previous2 = current</span>
		previous1 <span style="color: #339933;">=</span> previous2<span style="color: #339933;">;</span>				
		previous2 <span style="color: #339933;">=</span> current<span style="color: #339933;">;</span>
		current	 <span style="color: #339933;">=</span> previous1 <span style="color: #339933;">+</span> previous2<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000066; font-weight: bold;">return</span> current<span style="color: #339933;">;</span>	
<span style="color: #009900;">&#125;</span>
<span style="color: #003366; font-weight: bold;">var</span> result <span style="color: #339933;">=</span> fibo2<span style="color: #009900;">&#40;</span><span style="color: #CC0000;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Result : '</span> <span style="color: #339933;">+</span> result<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Hey, look at that! <span style="text-decoration: line-through;">Almost</span> no execution time! The result was there like *snap* that. In fact Javascript tells me it took between 0.000 and 0.001 seconds&#8230;  And the fibonacci result is the same&#8230; What does that tell us?</p>
<p>Well, of course: The fibonacci example was a demonstration that NodeJS will in fact block. But how is that different from any other language. In fact, the only thing proven here is that NodeJS (actually the V8 Javascript engine) computes fairly quickly compared to PHP for example.</p>
<p>What I&#8217;d like to add here is that OF COURSE by writing BULLSHIT code, you can make any runtime block, stumble, freeze and turn to complete utter bollocks. What the fuck is the matter with you? If this is your argument, then frankly you should&#8217;ve kept it to yourself because the rest of the world already knows this.</p>
<p>This doesn&#8217;t only apply for NodeJS, it applies to ANY PROGRAMMING LANGUAGE: Writing crappy code will return crappy performance. This is nothing new: It&#8217;s common sense. Programming is a mental challenge and it will always stay that way. If you try to prove something by pointing out that bad programming results in bad performance, then perhaps you should reconsider the usage of the word &#8216;<em>braindead</em>&#8216; in some more appropriate context.</p>
<p>I&#8217;m sorry but the fibonacci example in Ted&#8217;s post is a &#8216;bad example&#8217; to prove a valid point. Yes, NodeJS will in fact block. However the example seemed more like an example of how bad code can provoke bad performance. That&#8217;s not an argument. That&#8217;s a fact.<br />
By writing <del>good</del> better code, I fixed the example and it runs fine now. And yet that doesn&#8217;t invalidate Ted&#8217;s point about blocking. (See why this is a pointless argument?)</p>
<p>I just wanted to have this out in the open. Made me nuts when I figured this out. And I still maintain I have no opinion about NodeJS and how bad it might be.</p>
<p>You can see a testpage with the different calculations <a href="http://labs.nocreativity.com/fibo" target="_blank">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://nocreativity.com/blog/the-worlds-most-pointless-argument/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Playr 2.0 is coming!</title>
		<link>http://nocreativity.com/blog/playr-20-is-coming</link>
		<comments>http://nocreativity.com/blog/playr-20-is-coming#comments</comments>
		<pubDate>Wed, 12 Nov 2008 13:21:35 +0000</pubDate>
		<dc:creator>Ronny</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Everything else]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Playr 2.0]]></category>
		<category><![CDATA[PlayrDiscovr]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://nocreativity.com/blog/?p=232</guid>
		<description><![CDATA[I just wanted to update you guys on how the update for the next version of Playr is progressing. In the past week, I&#8217;ve been pretty busy adding the finishing  touches to the features and fixing the last few bugs that popped up. Most of the last-minute changes are a result of using the class [...]]]></description>
			<content:encoded><![CDATA[<p>I just wanted to update you guys on how the update for the next version of <a href="http://nocreativity.com/blog/playr-de-actionscript-3-music-player-class" target="_blank">Playr</a> is progressing.</p>
<p>In the past week, I&#8217;ve been pretty busy adding the finishing  touches to the features and fixing the last few bugs that popped up. Most of the last-minute changes are a result of using the class in <a href="http://nocreativity.com/blog/my-latest-project-walter-ego" target="_blank">one of my own projects</a>.</p>
<p>It&#8217;s then when I realized I&#8217;m missing some key features like adding the music directory, and some properties of the PlayrEvents. I also added some ear candy like fadeIn() and fadeOut() methods.</p>
<p>On a more functional note: I&#8217;ve abstracted the playlist to an independent class. So now you&#8217;re provided with lots and lots of ways to customize and manage your playlists.</p>
<p>The shuffle mode is now smart. In English that means the playlist remembers what songs have played and which ones haven&#8217;t.</p>
<p>Finally I&#8217;m happy to tell you guys won&#8217;t ever have to write an XML playlist file yourself. I&#8217;ve got a <a href="http://nocreativity.com/blog/playrdiscovr-de-playlistxml-bouwer" target="_blank">PHP4</a> and <a href="http://nocreativity.com/blog/playrdiscovr-update" target="_blank">PHP5</a> version of PlayrDiscovr which reads a directory and returns the corresponding XML listing the tracks and their properties.<br />
On top of that, I&#8217;ve got some help from other people (I still need to contact you guys) who are willing to help me out with building PlayrDiscover in ASP, Ruby and Python.</p>
<p>Even though I&#8217;m listing all of the new features, the Playr class is still the easiest way of implementing any kind of sound-feature in any Flash/Flex/AIR application. But the simplicity shouldn&#8217;t be a limitation, which it isn&#8217;t: you&#8217;re still able to build full-feature media-playing applications.</p>
<p>One of the little challenges I still have to tackle is the Tween problem. I&#8217;ve implemented fadeIn() and fadeOut() methods. Those methods actually tween the volume property of the Playr instance. The problem with that is when using the Playr class in a Flex project, you get a cool error message telling you it can&#8217;t import fl.transitions (which is the class package for the Tween class and the easing package).<br />
I still haven&#8217;t figured out how to work around this problem. If any of you have any suggestion on this problem, feel free to tell me about it.</p>
<p>I plan on releasing Playr 2.0 in the coming week (or 2) depending on PlayrDiscovr impementations, final changes, demo&#8217;s and site development (yes, I&#8217;m building a dedicated site for Playr <img src='http://nocreativity.com/blog-engine/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) Feel free to suggest other implementations you&#8217;d like <img src='http://nocreativity.com/blog-engine/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://nocreativity.com/blog/playr-20-is-coming/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My latest project: Walter Ego</title>
		<link>http://nocreativity.com/blog/my-latest-project-walter-ego</link>
		<comments>http://nocreativity.com/blog/my-latest-project-walter-ego#comments</comments>
		<pubDate>Mon, 03 Nov 2008 22:58:01 +0000</pubDate>
		<dc:creator>Ronny</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Playr 2.0]]></category>
		<category><![CDATA[Walter Ego]]></category>
		<category><![CDATA[Youtube]]></category>

		<guid isPermaLink="false">http://nocreativity.com/blog/?p=207</guid>
		<description><![CDATA[Some of you guys already knew, but only 2 weeks ago I finished my latest project: WALTER EGO. Walter Ego is a Dutch rapper who happens to live in Nieuwpoort. A few months back, Walter contacted me, and we started brainstorming about the new website. At some point he told me that I should make [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-208" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/4ef29d.jpg" alt="" width="500" height="342" /></p>
<p>Some of you guys already knew, but only 2 weeks ago I finished my latest project: <a href="http://walterego.be" target="_blank" target="_blank">WALTER EGO</a>.<br />
Walter Ego is a Dutch rapper who happens to live in Nieuwpoort.</p>
<p>A few months back, Walter contacted me, and we started brainstorming about the new website. At some point he told me that I should make this website my masterpiece&#8230;</p>
<p style="padding-left: 30px;"><em>If you&#8217;d die now, this is what people should remember you for.</em>..</p>
<p>Well&#8230; At least expectations weren&#8217;t high, right? <img src='http://nocreativity.com/blog-engine/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>A year ago I built the first edition of this website, which was pretty basic. Back then I used ColdFusion to build the administration panel. This time I built it using PHP.<br />
I have to say that this project clearly improved my PHP skills. While I was building the backend, I was focusing on modular development, so I could reuse a lot of the written code. A lot of people suggested using the ZendFramework but since I&#8217;ve been looking into this a few times without making any progress, I just skipped that chapter (after all: we&#8217;re all bound by deadlines <img src='http://nocreativity.com/blog-engine/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) and went on developing my own framework (&#8216;framework&#8217; might be slightly exaggerating though).<span id="more-207"></span></p>
<p>I am pretty proud of the result, since everything I wanted to do, actually came through, and made it to the final result. While building this site, I really enjoyed seeing progress, and experimenting with the visual effects. I learned quite a lot during this project, which is really really cool! I even got to work with the Playr 2.0a class, only to realize it still needs a lot of work.</p>
<p>I even got to hack my way through the Youtube API and the Youtube AS2 SWF, to get a clean FLV file, which I then could easily stream to the video section of the site. That was pretty uncool. I never expected Youtube to return an AS2 SWF file. I expected an FLV file. Man, have I been wrong!<br />
The main reason for Youtube to return a SWF is to embed all kind of extra features (such as captioning for example). And finally, Youtube not having an AS3 version of this made me want to start screaming.</p>
<p>All in all, this project was a fun project: I had many challenges to tackle, and in the end I delivered a quite unique product (at least, that&#8217;s what I like to think :p ).<br />
Just 2 days ago, at midnight, Walter Ego released his first CD, which you can download freely from the site. If you understand Dutch, you might be interested in what this talented rapper has to say.<br />
Download the CD <a href="http://walterego.be/downloads/" target="_blank" target="_blank">here</a>.</p>
<p>Some screenshots:</p>
<div id="attachment_215" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-588.jpg"><img class="size-thumbnail wp-image-215" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-588-150x150.jpg" alt="The video page streaming from Youtube" width="150" height="150" /></a><p class="wp-caption-text">The video page streaming from Youtube</p></div>
<div id="attachment_211" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-586.jpg"><img class="size-thumbnail wp-image-211" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-586-150x150.jpg" alt="Administration Panel :: Guestbook section" width="150" height="150" /></a><p class="wp-caption-text">Administration Panel :: Guestbook section</p></div>
<div id="attachment_210" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-585.jpg"><img class="size-thumbnail wp-image-210" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-585-150x150.jpg" alt="Administration Panel :: Home section" width="150" height="150" /></a><p class="wp-caption-text">Administration Panel :: Home section</p></div>
<div id="attachment_213" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-5861.jpg"><img class="size-thumbnail wp-image-213" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-5861-150x150.jpg" alt="Alternate HTML content for Google" width="150" height="150" /></a><p class="wp-caption-text">Alternate HTML content for Google</p></div>
<div id="attachment_212" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-5851.jpg"><img class="size-thumbnail wp-image-212" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-5851-150x150.jpg" alt="Administration panel :: Pictures section" width="150" height="150" /></a><p class="wp-caption-text">Administration panel :: Pictures section</p></div>
<div id="attachment_214" class="wp-caption alignleft" style="width: 160px"><a href="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-587.jpg"><img class="size-thumbnail wp-image-214" src="http://nocreativity.com/blog-engine/wp-content/uploads/2008/11/afbeelding-587-150x150.jpg" alt="About page" width="150" height="150" /></a><p class="wp-caption-text">About page</p></div>
<p><br style="clear:both" /><br />
URL: <a href="http://walterego.be" target="_blank" target="_blank">WalterEgo.be</a></p>
]]></content:encoded>
			<wfw:commentRss>http://nocreativity.com/blog/my-latest-project-walter-ego/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PlayrDiscovr update!</title>
		<link>http://nocreativity.com/blog/playrdiscovr-update</link>
		<comments>http://nocreativity.com/blog/playrdiscovr-update#comments</comments>
		<pubDate>Tue, 19 Aug 2008 16:32:28 +0000</pubDate>
		<dc:creator>Ronny</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Playlist.xml]]></category>
		<category><![CDATA[Playr]]></category>

		<guid isPermaLink="false">http://nocreativity.com/blog/?p=131</guid>
		<description><![CDATA[Ik heb enkele dagen geleden mijn eerste versie van de geautomatiseerde playlist.xml gemaakt, en online gezet. Gisteren heeft Ward Werbrouck (die wat meer verstand van PHP dan ik heeft) dit geoptimaliseerd en opgekuist. Deze versie is volledig object oriented geschreven, en is vanaf nu PHP5-only. Deze nieuwe versie kun je hier downloaden. Thx Ward!]]></description>
			<content:encoded><![CDATA[<p>Ik heb enkele dagen geleden mijn eerste versie van de geautomatiseerde <em>playlist.xml</em> gemaakt, en online gezet. Gisteren heeft <a href="http://blog.wardonline.be/" target="_blank">Ward Werbrouck</a> (die wat meer verstand van PHP dan ik heeft) dit geoptimaliseerd en opgekuist.</p>
<p>Deze versie is volledig object oriented geschreven, en is vanaf nu PHP5-only.<br />
Deze nieuwe versie kun je <a href="http://nocreativity.com/Playr/PlayrDiscovrOO.zip">hier</a> downloaden.</p>
<p>Thx Ward! <img src='http://nocreativity.com/blog-engine/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://nocreativity.com/blog/playrdiscovr-update/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Tutorial over hoe mail te versturen vanuit Flash (AS3)</title>
		<link>http://nocreativity.com/blog/tutorial-over-hoe-mail-te-versturen-vanuit-flash-as3</link>
		<comments>http://nocreativity.com/blog/tutorial-over-hoe-mail-te-versturen-vanuit-flash-as3#comments</comments>
		<pubDate>Tue, 20 Nov 2007 19:35:14 +0000</pubDate>
		<dc:creator>Ronny</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[eMail]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://nocreativity.com/blog/tutorial-over-hoe-mail-te-versturen-vanuit-flash-as3</guid>
		<description><![CDATA[Sinds ik bezig ben met ActionScript 3 ben ik er niet meer van af te krijgen. Onlangs werd op mijn schoolforum gevraagd hoe je nu een mail kunt verzenden vanuit Flash met AS3 (gezien de LoadVars klasse uit AS2 er niet meer is). Toen besloot ik er een kleine tutorial over te maken, en die [...]]]></description>
			<content:encoded><![CDATA[<p>Sinds ik bezig ben met ActionScript 3 ben ik er niet meer van af te krijgen.</p>
<p>Onlangs werd op mijn schoolforum gevraagd hoe je nu een mail kunt verzenden vanuit Flash met AS3 (gezien de LoadVars klasse uit AS2 er niet meer is).<br />
Toen besloot ik er een kleine tutorial over te maken, en die is er dan ook gekomen.</p>
<p><a href="http://www.nocreativity.com/tutorials/AS3-send-email/" target="_blank">Tutorial: Mail verzenden vanuit Flash CS3 </a></p>
<p>Veel plezier.</p>
<p>Vragen en suggesties zijn zeker welkom.</p>
]]></content:encoded>
			<wfw:commentRss>http://nocreativity.com/blog/tutorial-over-hoe-mail-te-versturen-vanuit-flash-as3/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

