<?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>sprit3</title>
	<atom:link href="http://blog.sprit3.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.sprit3.net</link>
	<description>Flash - Flex - AIR</description>
	<lastBuildDate>Sun, 27 Dec 2009 07:47:33 +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>E4X &#8211; Updating multiple node values</title>
		<link>http://blog.sprit3.net/2009/12/e4x-updating-multiple-node-values/</link>
		<comments>http://blog.sprit3.net/2009/12/e4x-updating-multiple-node-values/#comments</comments>
		<pubDate>Sun, 27 Dec 2009 07:45:10 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[E4X]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=161</guid>
		<description><![CDATA[Something that is often required when processing XML documents is to update a bunch of nodes that are spread throughout the document.
Consider the following XML:
&#60;gallery base="images/projects/"&#62;
	&#60;project id="1" &#62;
		&#60;item type="image" thumb="image1.jpg"&#62;
			&#60;path&#62;l_image1.jpg&#60;/path&#62;
		&#60;/item&#62;
	&#60;/project&#62;
	&#60;project id="2"&#62;
		&#60;item type="image" thumb="image2.jpg"&#62;
			&#60;path&#62;l_image2.jpg&#60;/path&#62;
		&#60;/item&#62;
	&#60;/project&#62;
	&#60;project id="3"&#62;
		&#60;item type="image" thumb="image1.jpg"&#62;
			&#60;path&#62;l_image1.jpg&#60;/path&#62;
		&#60;/item&#62;
		&#60;item type="image" thumb="image3.jpg"&#62;
			&#60;path&#62;l_image3.jpg&#60;/path&#62;
		&#60;/item&#62;
		&#60;item type="image" thumb="image4.jpg"&#62;
			&#60;path&#62;l_image4.jpg&#60;/path&#62;
		&#60;/item&#62;
		&#60;item type="image" thumb="image5.jpg"&#62;
			&#60;path&#62;l_image5.jpg&#60;/path&#62;
		&#60;/item&#62;
	&#60;/project&#62;
&#60;/gallery&#62;
Lets assume that we need to load the thumbnails of each item specified by [...]]]></description>
			<content:encoded><![CDATA[<p>Something that is often required when processing XML documents is to update a bunch of nodes that are spread throughout the document.</p>
<p>Consider the following XML:</p>
<pre>&lt;gallery base="images/projects/"&gt;
	&lt;project id="1" &gt;
		&lt;item type="image" thumb="image1.jpg"&gt;
			&lt;path&gt;l_image1.jpg&lt;/path&gt;
		&lt;/item&gt;
	&lt;/project&gt;
	&lt;project id="2"&gt;
		&lt;item type="image" thumb="image2.jpg"&gt;
			&lt;path&gt;l_image2.jpg&lt;/path&gt;
		&lt;/item&gt;
	&lt;/project&gt;
	&lt;project id="3"&gt;
		&lt;item type="image" thumb="image1.jpg"&gt;
			&lt;path&gt;l_image1.jpg&lt;/path&gt;
		&lt;/item&gt;
		&lt;item type="image" thumb="image3.jpg"&gt;
			&lt;path&gt;l_image3.jpg&lt;/path&gt;
		&lt;/item&gt;
		&lt;item type="image" thumb="image4.jpg"&gt;
			&lt;path&gt;l_image4.jpg&lt;/path&gt;
		&lt;/item&gt;
		&lt;item type="image" thumb="image5.jpg"&gt;
			&lt;path&gt;l_image5.jpg&lt;/path&gt;
		&lt;/item&gt;
	&lt;/project&gt;
&lt;/gallery&gt;</pre>
<p>Lets assume that we need to load the thumbnails of each item specified by the <em>thumb </em>attribute. I often use a <em>base</em> path for the images. It make a lot of sense to include it at document level rather than repeating it in each property value. Doing so reduces file size and also makes path updates quick and painless.</p>
<p>Once the XML document is loaded, the <em>thumb </em>path can be updated with a single line of code:</p>
<p><strong>galleryXML..item.(@thumb = baseUrl + @thumb);</strong></p>
<p>where <em>baseUrl</em> variable holds the base path. Or we can directly substitute with the value of <em>base </em>property like so:</p>
<p><strong>galleryXML..item.(@thumb = galleryXML.@base.toString() + @thumb);</strong></p>
<p>A trace of galleryXML will show that the path of each <em>thumb </em>attribute is prefixed with the base path.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/12/e4x-updating-multiple-node-values/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Apache + MySQL + PHP on Windows 7 64Bit</title>
		<link>http://blog.sprit3.net/2009/12/installing-apache-mysql-php-on-windows-7-64bit/</link>
		<comments>http://blog.sprit3.net/2009/12/installing-apache-mysql-php-on-windows-7-64bit/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 13:35:09 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=159</guid>
		<description><![CDATA[The process is pretty straight-forward, except for a few bumps along the way. The majority of problems were caused by the Access Control functionality of Win 7. Make sure your text editor is running with admin rights. Without which you&#8217;ll not be able to save any edits to the config files.
The first issue was during [...]]]></description>
			<content:encoded><![CDATA[<p>The process is pretty straight-forward, except for a few bumps along the way. The majority of problems were caused by the Access Control functionality of Win 7. Make sure your text editor is running with admin rights. Without which you&#8217;ll not be able to save any edits to the config files.</p>
<p>The first issue was during Apache (2.2.14-x86) install; kept getting the following error:</p>
<pre>Errors reported here must be corrected before the service can be started.
httpd.exe: Could not reliably determine the server's fully qualified domain name ,
using 192.168.1.3 for ServerName (OS 10048)
Only one usage of each socket address (protocol/network address/port) is normally permitted.
: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available,
shutting down Unable to open logs
Note the errors or messages above, and press the key to exit. 24...</pre>
<p>After 10mins of trying to figure out the problem with no success, did a search and found that this was due to <a href="http://stackoverflow.com/questions/195641/windows-could-not-start-the-apache2-on-local-computer-problem" target="_blank">port 80 being used</a> by another program &#8211; typically Skype! Which made sense as I had Skype running. Once I quit Skype and restarted Apache, everything started up smoothly.</p>
<p>Next, I wanted to get my virtual hosts setup. I like to keep my virtuals in their own separate file &#8211; 1 file per host. This is pretty easy to setup &#8211; just direct Apache to load up additional conf files with an &#8220;Include&#8221; directive.</p>
<p>NOTE: There&#8217;s a sample virtual host config file included with the Apache install in &#8220;conf/extra&#8221; folder, which may be modified to your needs.</p>
<p>Open the default httpd.conf and add the following to the end of it.</p>
<pre># Setup virtual hosts
# Listen for virtual host requests on all IP addresses</pre>
<pre>NameVirtualHost *:80</pre>
<pre>&lt;VirtualHost *:80&gt;</pre>
<pre style="padding-left: 30px;">ServerName localhost
DocumentRoot "D:/webapps/_root"</pre>
<pre style="padding-left: 30px;">&lt;Directory /&gt;
        Order Allow,Deny
        Allow from all
&lt;/Directory&gt;</pre>
<pre>&lt;/VirtualHost&gt;</pre>
<pre>Include "D:/webapps/_virtuals/*.conf"</pre>
<p>Next, create blog.conf file with the following content. Make sure to give it a meaningful name &#8211; something like blog.sprit3.conf, so that it can be located easily. Save the file in the _virtuals folder.</p>
<pre>&lt;VirtualHost *:80&gt;</pre>
<pre style="padding-left: 30px;">ServerName blog.sprit3.net
DocumentRoot "D:/webapps/www/blog.sprit3"</pre>
<pre style="padding-left: 30px;">&lt;Directory /&gt;
        Order Allow,Deny
        Allow from all
&lt;/Directory&gt;</pre>
<pre>&lt;/VirtualHost&gt;</pre>
<p>By default Apache will deny any requests to the virtual folders unless allowed explicitly. Hence the &lt;Directory&gt; tag.</p>
<p>Save this in the _virtuals folder and restart Apache. Verify if virtuals are running properly by entering &#8220;httpd -S&#8221; via the command prompt.</p>
<p>Next step is to add the virtual host address to the local host file so that any requests to blog.sprit3.net will be directed to my localhost instead of the live site. Windows hosts file is located at %SystemRoot%/system32/drivers/etc folder.</p>
<p>That should get the virtual folder running and all the web apps nicely organised!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/12/installing-apache-mysql-php-on-windows-7-64bit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google translate &#8211; simply amazing!</title>
		<link>http://blog.sprit3.net/2009/12/google-translate-simply-amazing/</link>
		<comments>http://blog.sprit3.net/2009/12/google-translate-simply-amazing/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 07:07:41 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=160</guid>
		<description><![CDATA[
http://www.youtube.com/watch?v=FijOWfO3Frk

Google Translate
&#8230;one step closer to a wearable &#8220;Universal Translator&#8221;!
]]></description>
			<content:encoded><![CDATA[<div class="vvqbox vvqyoutube" style="width:425px;height:355px;">
<p id="vvq4b96ca4133542"><a href="http://www.youtube.com/watch?v=FijOWfO3Frk">http://www.youtube.com/watch?v=FijOWfO3Frk</a></p>
</div>
<p><a href="http://translate.google.com" target="_blank">Google Translate</a></p>
<p>&#8230;one step closer to a wearable &#8220;Universal Translator&#8221;!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/12/google-translate-simply-amazing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Offline language reference in Flash CS4</title>
		<link>http://blog.sprit3.net/2009/11/offline-language-reference-in-flash-cs4/</link>
		<comments>http://blog.sprit3.net/2009/11/offline-language-reference-in-flash-cs4/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 01:25:28 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[CS4]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=158</guid>
		<description><![CDATA[If, like me, you&#8217;re frustrated with CS4 language reference going to the online version, there is a part solution available which Jon has written about a while back. Basically what it does is instead of going online, it opens the local copy of help inside the browser &#8211; which is much faster for quick look-ups.
To [...]]]></description>
			<content:encoded><![CDATA[<p>If, like me, you&#8217;re frustrated with CS4 language reference going to the online version, there is a part solution available which <a href="http://www.jonnymac.com/blog/2008/12/09/offline-as3-language-reference-no-air-application-necessary/" target="_blank">Jon has written about</a> a while back. Basically what it does is instead of going online, it opens the local copy of help inside the browser &#8211; which is much faster for quick look-ups.</p>
<p>To do this; from the top menu, <strong>open</strong> <strong><em>Window &gt; Extensions &gt; Connections</em></strong>. Then click on the down arrow at top right of the panel and <strong>select &#8220;<em>Offline options</em>&#8220;</strong>.</p>
<p>I hope Adobe will provide a help panel similar to Flex builder in the upcoming version&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/11/offline-language-reference-in-flash-cs4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Meerkat is calling!</title>
		<link>http://blog.sprit3.net/2009/09/meerkat-is-calling/</link>
		<comments>http://blog.sprit3.net/2009/09/meerkat-is-calling/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 12:32:33 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[Coolspot]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=157</guid>
		<description><![CDATA[
http://www.youtube.com/watch?v=t4b4Zm6eNJw

 
]]></description>
			<content:encoded><![CDATA[<div class="vvqbox vvqyoutube" style="width:425px;height:355px;">
<p id="vvq4b96ca413c94c"><a href="http://www.youtube.com/watch?v=t4b4Zm6eNJw">http://www.youtube.com/watch?v=t4b4Zm6eNJw</a></p>
</div>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/09/meerkat-is-calling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fluid sculpture</title>
		<link>http://blog.sprit3.net/2009/05/fluid-sculpture/</link>
		<comments>http://blog.sprit3.net/2009/05/fluid-sculpture/#comments</comments>
		<pubDate>Tue, 05 May 2009 02:19:23 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[Coolspot]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=155</guid>
		<description><![CDATA[First time I&#8217;ve ever seen anything like this, looks awesome!

Fluid Sculpture from Charlie Bucket on Vimeo.
]]></description>
			<content:encoded><![CDATA[<p>First time I&#8217;ve ever seen anything like this, looks awesome!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="300" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=3599345&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=e1edea&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="300" src="http://vimeo.com/moogaloop.swf?clip_id=3599345&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=e1edea&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://vimeo.com/3599345">Fluid Sculpture</a> from <a href="http://vimeo.com/g">Charlie Bucket</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/05/fluid-sculpture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flickr Architecture &#124; High Scalability</title>
		<link>http://blog.sprit3.net/2009/03/flickr-architecture-high-scalability/</link>
		<comments>http://blog.sprit3.net/2009/03/flickr-architecture-high-scalability/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 06:26:55 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=148</guid>
		<description><![CDATA[While I was considering how I would go about storing images for an app I&#8217;m building, I thought &#8220;wonder what approach Flickr takes?&#8221;. A quick search, and I find this greatly insightful post, which just boggles my mind!
Till now, I didn&#8217;t know that Flickr is built on LAMP &#8211; what a testament if there ever [...]]]></description>
			<content:encoded><![CDATA[<p>While I was considering how I would go about storing images for an app I&#8217;m building, I thought &#8220;wonder what approach Flickr takes?&#8221;. A quick search, and I find this <a href="http://highscalability.com/flickr-architecture#comment-4870" target="_blank">greatly insightful post, which just boggles my mind</a>!</p>
<p>Till now, I didn&#8217;t know that Flickr is built on LAMP &#8211; what a testament if there ever was one?!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/03/flickr-architecture-high-scalability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Directly manipulating videos</title>
		<link>http://blog.sprit3.net/2009/02/directly-manipulating-videos/</link>
		<comments>http://blog.sprit3.net/2009/02/directly-manipulating-videos/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 06:14:48 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=139</guid>
		<description><![CDATA[

http://www.youtube.com/watch?v=WcIy9O344bI


]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.youtube.com/watch?v=WcIy9O344bI&amp;eurl=http://www.graviti.tv/blog/index.php?paged=4">
<div class="vvqbox vvqyoutube" style="width:425px;height:355px;">
<p id="vvq4b96ca4142f28"><a href="http://www.youtube.com/watch?v=WcIy9O344bI">http://www.youtube.com/watch?v=WcIy9O344bI</a></p>
</div>
<p></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/02/directly-manipulating-videos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bump top &#8211; desktop prototype</title>
		<link>http://blog.sprit3.net/2009/02/bump-top-navigation/</link>
		<comments>http://blog.sprit3.net/2009/02/bump-top-navigation/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 06:04:45 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[navigation]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=137</guid>
		<description><![CDATA[

http://www.youtube.com/watch?v=M0ODskdEPnQ


]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.graviti.tv/blog/index.php?paged=3">
<div class="vvqbox vvqyoutube" style="width:425px;height:355px;">
<p id="vvq4b96ca41440be"><a href="http://www.youtube.com/watch?v=M0ODskdEPnQ">http://www.youtube.com/watch?v=M0ODskdEPnQ</a></p>
</div>
<p></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2009/02/bump-top-navigation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FLV MIME type with IIS</title>
		<link>http://blog.sprit3.net/2008/12/flv-mime-type-with-iis/</link>
		<comments>http://blog.sprit3.net/2008/12/flv-mime-type-with-iis/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 23:07:50 +0000</pubDate>
		<dc:creator>zu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[flv]]></category>
		<category><![CDATA[mime]]></category>

		<guid isPermaLink="false">http://blog.sprit3.net/?p=132</guid>
		<description><![CDATA[This is something I often have to do when setting up a new server, if you&#8217;re planning on using FLV video with the site:

Open properties and &#8220;HTTP Headers&#8221; tab
Select &#8220;File types&#8221;-&#62;&#8221;New type&#8221;
Enter .flv for extension and &#8220;video/x-flv&#8221; for content type

Pretty simple, but if you forget to do, could leave you scratching your head for some [...]]]></description>
			<content:encoded><![CDATA[<p>This is something I often have to do when setting up a new server, if you&#8217;re planning on using FLV video with the site:</p>
<ol>
<li>Open properties and &#8220;HTTP Headers&#8221; tab</li>
<li>Select &#8220;File types&#8221;-&gt;&#8221;New type&#8221;</li>
<li>Enter .flv for extension and &#8220;video/x-flv&#8221; for content type</li>
</ol>
<p>Pretty simple, but if you forget to do, could leave you scratching your head for some time, thinking &#8220;Now, why don&#8217;t my f#$@ing video player work?!&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sprit3.net/2008/12/flv-mime-type-with-iis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
