<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>ninja sumos</title>
	<atom:link href="http://blog.parkerfox.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.parkerfox.co.uk</link>
	<description>... adventures in tech town</description>
	<lastBuildDate>Tue, 08 Dec 2009 16:13:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.parkerfox.co.uk' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/3ee7697e66ef1439675fe936c0307d1a?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>ninja sumos</title>
		<link>http://blog.parkerfox.co.uk</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.parkerfox.co.uk/osd.xml" title="ninja sumos" />
	<atom:link rel='hub' href='http://blog.parkerfox.co.uk/?pushpress=hub'/>
		<item>
		<title>Beans: Rubygems for Javascript</title>
		<link>http://blog.parkerfox.co.uk/2009/12/08/beans-rubygems-for-javascript/</link>
		<comments>http://blog.parkerfox.co.uk/2009/12/08/beans-rubygems-for-javascript/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 12:59:56 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=74</guid>
		<description><![CDATA[Javascript does not generally natively allow loading dependencies. This tends to mean that Javascript development is less modular than it could/should be. Code is &#8216;copied and pasted&#8217; rather than &#8216;required&#8217;, which leads to code drift. Beans is a development tool that attempts to fix this, by bringing Rubygems-like functionality to Javascript development, using a local [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=74&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div>Javascript does not generally natively allow loading dependencies. This tends to mean that Javascript development is less modular than it could/should be. Code is &#8216;copied and pasted&#8217; rather than &#8216;required&#8217;, which leads to code drift. <a href="http://github.com/weepy/bean-server"></a></div>
<div><a href="http://github.com/weepy/bean-server">Beans</a> is a development tool that attempts to fix this, by bringing Rubygems-like functionality to Javascript development, using a local (beans) server to act as the equivalent binary (e.g. gem), in particular Beans:</div>
<div>
<ul>
<li>can be used in any environment (Ruby, Python, HTML).</li>
<li>has automatic dependency resolution, both global and relative</li>
<li>can be accessed from any page or server, even a vanilla HTML page</li>
<li>scripts are included simply by using &lt;script&gt; tag</li>
<li>javascripts are provided either as
<ul>
<li>a single concatenated script (e.g. for production)</li>
<li>multiple separate scripts (e.g. for debugging in development)</li>
</ul>
</li>
<li>Entirely cross browser and works well with tools such as Firebug</li>
</ul>
<div>
<h3>Interacting with Bean Server</h3>
<p>A Sinatra server (perhaps it should be a Node server <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  acts as a system wide provider for the javascript.</p>
<p>I tend to run the server under Passenger, and have it associated with http://beans/</p>
<p><em>http://beans/</em></p>
<ul>
<li>Returns HTML page listing each file in the repos</li>
</ul>
<p><em>http://beans/?.js</em></p>
<ul>
<li>Returns HTML page showing each file who&#8217;s path matches &#8220;.js&#8221;</li>
</ul>
<p><em>http://beans/path/to/my_file.ext</em></p>
<ul>
<li><span style="font-family:Verdana;">Finds a file with path </span><strong>/path/to/my_file.ext </strong><span style="font-family:Verdana;">and returns it inline</span></li>
<li>This can be js, css, jpg or any file</li>
<li>No dependency resolution will occur</li>
<li>If there&#8217;s more than one repo that matches, it will return the first it finds</li>
</ul>
<p><em>http://beans/=lib_a.js,lib_b.js</em></p>
<ul>
<li>Searches the repo for two files, who&#8217;s paths matches lib_a.js and lib_b.js</li>
<li>If the files are javascripts, it will resolve dependencies (see below).</li>
<li>In this instance, let&#8217;s say that
<ul>
<li>lib_a depends on dep1, dep2</li>
<li>lib_b depends on dep1, dep3</li>
</ul>
</li>
<li>Therefore the final scripts to load in order will be
<ul>
<li>dep1, dep2, lib_a, dep3, lib_b</li>
</ul>
</li>
<li>There are multiple scripts to return, it will return a single script that writes out inclusion via document.write:</li>
<li><em>&lt;script src=&#8217;http://beans/path/to/dep1.js&#8217; &gt;&lt;/script&gt;</em></li>
<li><em>&lt;script src=&#8217;http://beans/path/to/dep2.js&#8217; &gt;&lt;/script&gt;</em></li>
<li><em>&lt;script src=&#8217;http://beans/path/to/lib_a.js&#8217; &gt;&lt;/script&gt;</em></li>
<li><em>&lt;script src=&#8217;http://beans/path/to/dep3.js&#8217; &gt;&lt;/script&gt;</em></li>
<li><em>&lt;script src=&#8217;http://beans/path/to/lib_b.js&#8217; &gt;&lt;/script&gt;</em></li>
</ul>
<p><em>http://beans/=lib_a.js,lib_b.js?concat=true</em></p>
<ul>
<li>If the option concat=true is passed, the bean-server will return the scripts as a single concatenated script.</li>
</ul>
<p><em>http://beans/=lib_a.js,lib_b.js?paths=/abs/path,/abs/another/path</em></p>
<ul>
<li>The paths option allows multiple temporary (absolute) load path</li>
</ul>
<h3>Dependencies</h3>
<p>The syntax for declaring dependencies is the similar as Sprockets, ie they are entered within inline comments.<br />
A slight difference is that the comments must be placed at the top of the file, before any code. This is because of the way Beans can provide each script separately and also speeds up the script parsing as the server can break as soon as a non-code line is reached.</p>
<p><em>//= require &lt;my_lib&gt;</em></p>
<p>This will do a global search in all load paths for a file matching my_lib.js and include it before this script</p>
<p><em>//= require &#8220;relative/path/to/my_file&#8221;</em></p>
<p>This will look for a file relatively to the current script.</p>
<h3>Installation</h3>
<p>git clone git://github.com/weepy/bean-server.git<br />
cd bean-server<br />
ruby app.rb</p>
<p>point browser at <em>http://localhost:4567/test-beanz.html</em></p>
<h3>Config</h3>
<p>Currently there&#8217;s a simple settings.rb file that only contains the location of various repos</p>
<h3>Javascript, CSS and HTML</h3>
<p>The beans server is designed for serving particular javascript, however it can also search for and server css and HTML. E.g. <em>http://beans/qunit/lib/test-suite.css</em> will server up the Qunit test suite css. This is useful, among other things for writing and running tests in HTML to be bundled along with the source.</p>
</div>
<h3>Comparison with other systems</h3>
<p>Sprockets tries to achieve similar but not identical goals:</p>
<ul>
<li>Beans uses a similar dependancy syntax as Sprockets</li>
<li>Beans is not tied to any language or framework, whereas Sprockets is invoked from Ruby</li>
<li>Sprockets includes the Javascript by concatenating into one single file. Beans can do this or optionally include each script as a separate file for ease of debugging.</li>
<li>Beans doesn&#8217;t (yet?) support providing assets from javascripts, although the server can search and return any other type of file</li>
</ul>
<div><strong>CommonJS</strong></div>
<div>
<ul>
<li>CommonJS provides a framework using require and exports</li>
<li>It is functionally different from Beans as it inserts the files into a closure, where as Beans evaluates everything in the global scope</li>
<li>CommonJS is suited more to server side development, whereas Beans is aimed at client side development (tho it can be used server side e.g. I&#8217;m using it on <a href="http://www.chesstwit.com">ChessTwit</a>)</li>
</ul>
</div>
<h3>Project</h3>
<p>Github:<a title="http://github.com/weepy/bean-server" href="http://github.com/weepy/bean-server"> http://github.com/weepy/bean-server</a></p>
<p><strong>Todo</strong></p>
<p>Potential features that are not yet addressed:</p>
<ul>
<li>Versioning, ownership</li>
<li>Canonical external resource (e.g. rubyforge, gemcutter)</li>
<li>minification</li>
</ul>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=74&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/12/08/beans-rubygems-for-javascript/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>Node Eval: Evaluate Javascript using V8</title>
		<link>http://blog.parkerfox.co.uk/2009/12/06/node-eval-evaluate-javascript-using-v8/</link>
		<comments>http://blog.parkerfox.co.uk/2009/12/06/node-eval-evaluate-javascript-using-v8/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 15:28:21 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=71</guid>
		<description><![CDATA[Just realeased &#8220;Node Eval&#8221;, whiche allows arbitrary javascript to be evaluated using V8. This is mostly useful for other servers to evaluate javascript, without needing a direct bridge. I&#8217;m using it in Ruby instead of Johnson (which seems to have problems with GC) which provides a nice degree of separation. Use: /eval?js=12*12 =&#62; {&#8220;success&#8221;:true,&#8221;result&#8221;:144} /eval?js=12*a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=71&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Just realeased &#8220;Node Eval&#8221;, whiche allows arbitrary javascript to be evaluated using V8.</p>
<p>This is mostly useful for other servers to evaluate javascript, without needing a direct bridge. I&#8217;m using it in Ruby instead of Johnson (which seems to have problems with GC) which provides a nice degree of separation.</p>
<p><strong>Use</strong>:</p>
<p><em>/eval?js=12*12</em> =&gt; {&#8220;success&#8221;:true,&#8221;result&#8221;:144}</p>
<p><em>/eval?js=12*a</em> =&gt; {&#8220;success&#8221;:false,&#8221;exception&#8221;:&#8221;ReferenceError: a is not defined&#8221;}</p>
<p>Context is maintained</p>
<p><em>/eval?js=this.a=9</em> =&gt; {&#8220;success&#8221;:true,&#8221;result&#8221;:null}</p>
<p><em>/eval?js=12*a </em> =&gt; {&#8220;success&#8221;:true,&#8221;result&#8221;:108}</p>
<p>It&#8217;s also possible to supply a source file on disk and a context name:</p>
<p><em>/eval?js=func()&amp;file=/abs/path/to/file</em> =&gt; {&#8220;success&#8221;:true,&#8221;result&#8221;: &#8220;func output ok&#8221;}</p>
<p>Note that to be able to call functions, you&#8217;ll need to expose them using the CommonJS &#8220;exports&#8221; declaration.</p>
<p><strong>Github Page</strong></p>
<p><a href="http://github.com/weepy/node_eval">http://github.com/weepy/node_eval</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/71/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=71&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/12/06/node-eval-evaluate-javascript-using-v8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>CSS in your face (only IE need to apply)</title>
		<link>http://blog.parkerfox.co.uk/2009/11/12/css-in-your-face-only-ie-need-to-apply/</link>
		<comments>http://blog.parkerfox.co.uk/2009/11/12/css-in-your-face-only-ie-need-to-apply/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 18:51:50 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=64</guid>
		<description><![CDATA[Download: http://github.com/weepy/cssie Plugin for jQuery providing native support for missing CSS in IE. Currently provides: E &#62; F (direct descendant) :hover (normally only available to a tags) E + F (sibling) [rel=attr] (attribute selection) :first-child and any other selectors containing : and supported by jQuery :focus plus others How it works parses the stylesheets for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=64&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Download: <a href="http://github.com/weepy/cssie">http://github.com/weepy/cssie</a></p>
<p>Plugin for jQuery providing native support for missing CSS in IE. Currently provides:</p>
<ul>
<li>E &gt; F (direct descendant)</li>
<li>:hover (normally only available to a tags)</li>
<li>E + F (sibling)</li>
<li>[rel=attr] (attribute selection)</li>
<li>:first-child and any other selectors containing : and supported by jQuery</li>
<li>:focus</li>
<li>plus others</li>
</ul>
<p>How it works
</p>
<ul>
<li>parses the stylesheets for rules that match a regex</li>
<li>replaces selectors that match with corresponding rules with an internal class .cssie-x (x is an integer)</li>
<li>add the class cssie-x using the original selector using jQuery</li>
<li>for :hover and :focus, automatically setup up jQuery events to add/remove the .cssie-x class upon hover/focus</li>
</ul>
<p>Usage
</p>
<ul>
<li>include &#8216;cssie.js&#8217; in your page after &#8216;jquery.js&#8217;</li>
<li>$.cssie() on the jQuery.ready event</li>
<li>You can cause the same behaviour on non MSIE browsers with: $.cssie(true)</li>
</ul>
<p>UPDATE: it also handlers multiple class selectors (e.g .class_a.class_b) </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/64/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=64&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/11/12/css-in-your-face-only-ie-need-to-apply/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>chesstwit: using serverside javascript</title>
		<link>http://blog.parkerfox.co.uk/2009/11/12/chesstwit-using-serverside-javascript/</link>
		<comments>http://blog.parkerfox.co.uk/2009/11/12/chesstwit-using-serverside-javascript/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 18:46:30 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=45</guid>
		<description><![CDATA[After a week or two of beta testing and bug squashing, we&#8217;ve launched ChessTwit. See it here =&#62; www.chesstwit.com It&#8217;s goal is simple: make it easy to play chess online with your twit friends and I&#8217;m pretty pleased with the result. You can login without typing your password (OAuth) and your opponent is sent a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=45&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>After a week or two of beta testing and bug squashing, we&#8217;ve launched ChessTwit.</p>
<p>See it here =&gt; <a href="http://www.chesstwit.com">www.chesstwit.com</a></p>
<p><img class="alignnone size-full wp-image-61" title="Picture 1" src="http://foxparker.files.wordpress.com/2009/11/picture-1.png?w=400&#038;h=293" alt="Picture 1" width="400" height="293" /></p>
<p>It&#8217;s goal is simple: make it easy to play chess online with your twit friends and I&#8217;m pretty pleased with the result. You can login without typing your password (OAuth) and your opponent is sent a Direct Message to inform them. Now we just need to hit critical mass.</p>
<p>From a technical perspective, it&#8217;s a fairly straight forward Rails project running on Passenger, with UI written in jQuery.</p>
<p>Where it gets interesting is that chess logic is written in Javascript, which means it can be used on both the UI <em>and</em> the server side validation. The fantastic ruby gem <a href="http://github.com/jbarnette/johnson">Johnson</a> is then used server side to validate the moves.</p>
<p>I&#8217;m a big fan of this technique, so the <a href="http://github.com/jbarnette/johnson">Johnson</a> gem is a god send. The alternative would be to write the logic twice in both ruby and javascript, something we did on <a href="http://64squar.es">64squar.es</a>. It works, but it&#8217;s a pain if you want to change the rules and great discipline is needed to keep the code bases in sync architecturally. So it worked ok for Chess, but any game where the rules are still in development, or if you want to produce many games it would be difficult.</p>
<p>We&#8217;ve got quite a few games apps planned for the future using this technique, so keep any eye out!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=45&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/11/12/chesstwit-using-serverside-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>

		<media:content url="http://foxparker.files.wordpress.com/2009/11/picture-1.png" medium="image">
			<media:title type="html">Picture 1</media:title>
		</media:content>
	</item>
		<item>
		<title>find_or_create</title>
		<link>http://blog.parkerfox.co.uk/2009/11/12/find_or_create/</link>
		<comments>http://blog.parkerfox.co.uk/2009/11/12/find_or_create/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 18:44:28 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=39</guid>
		<description><![CDATA[Perhaps I&#8217;m missing something here, but here&#8217;s a method that I often add into my Rails models def self.find_or_create opts first(:conditions =&#62; opts) &#124;&#124; create(opts) end It&#8217;s use is simple: Membership.find_or_create :channel_id, :user_id Now there is a dynamic finder self.find_or_create_by_XXX, but it isn&#8217;t useful in the same way. Is there a reason why something like [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=39&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Perhaps I&#8217;m missing something here, but here&#8217;s a method that I often add into my Rails models</p>
<pre>def self.find_or_create opts
  first(:conditions =&gt; opts) || create(opts)
end
</pre>
<p>It&#8217;s use is simple:</p>
<pre> Membership.find_or_create :channel_id, :user_id</pre>
<p>Now there <strong>is</strong> a dynamic finder <code>self.find_or_create_by_XXX</code>, but it isn&#8217;t useful in the same way.</p>
<p>Is there a reason why something like that method isn&#8217;t in AR core ?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=39&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/11/12/find_or_create/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>Growlesque plugin in 20 lines of code</title>
		<link>http://blog.parkerfox.co.uk/2009/10/23/growlesque-plugin-in-20-lines-of-code/</link>
		<comments>http://blog.parkerfox.co.uk/2009/10/23/growlesque-plugin-in-20-lines-of-code/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 09:24:27 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=32</guid>
		<description><![CDATA[Introducing Vanilla Notify ! After Playing around with _lots_ Growl style plugins for jQuery, I came to the impression that whilst they mostly looked nice, they all were very bloated and difficult to customize. So &#8211; of course &#8211; I rolled my own! Only this one is different.It doesn&#8217;t have curvy corners, or callbacks, or [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=32&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Introducing Vanilla Notify !</p>
<p>After Playing around with _lots_ Growl style plugins for jQuery, I came to the impression that whilst they mostly looked nice, they all were very bloated and difficult to customize.</p>
<p>So &#8211; of course &#8211; I rolled my own! Only this one is different.It doesn&#8217;t have curvy corners, or callbacks, or other distractions. It&#8217;s solid, works well, looks pretty decent and &#8211; oh &#8211; it&#8217;s only _20_ lines of code!</p>
<p>Being simple means it&#8217;s very easy to understand and easy to change to your own tastes.</p>
<p><strong>Screeny</strong><br />
<img title="screenie" src="http://github.com/weepy/vanilla-notify/raw/master/screenie.png" width='359px' alt="Screeny" /></p>
<p><strong>Installation</strong></p>
<ul>
<li> include vanilla-notify.js</li>
<li>depends on jQuery (1.3.2 tested)</li>
<li> include the relevant CSS somewhere</li>
</ul>
<p><strong>Examples</strong></p>
<pre> $.notify('Hello')</pre>
<pre> $.notify('&lt;h1&gt;Hello&lt;/h1&gt;&lt;p&gt;Hi there&lt;/p&gt;')</pre>
<pre> $.notify('With class: error', {klass: 'error' })</pre>
<pre> $.notify("I'll be here for 7610.4 years!", {delay: 1e10 })</pre>
<p><strong>Links</strong></p>
<ul>
<li> <a href="http://github.com/weepy/vanilla-notify/raw/master/vanilla-notify.js">Javascript File</a></li>
<li><a href="http://github.com/weepy/vanilla-notify">Github Project</a></li>
<li><a href="http://github.com/weepy/vanilla-notify/issues">Issue Tracker</a></li>
</ul>
<p><strong>Compatibility</strong></p>
<p>Tested in</p>
<ul>
<li>Firefox 3.5</li>
<li>Safari 4</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/32/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=32&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/10/23/growlesque-plugin-in-20-lines-of-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>

		<media:content url="http://github.com/weepy/vanilla-notify/raw/master/screenie.png" medium="image">
			<media:title type="html">screenie</media:title>
		</media:content>
	</item>
		<item>
		<title>Crazy worm bookmarklet</title>
		<link>http://blog.parkerfox.co.uk/2009/10/08/crazy-worm-bookmarklet/</link>
		<comments>http://blog.parkerfox.co.uk/2009/10/08/crazy-worm-bookmarklet/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 11:14:03 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=26</guid>
		<description><![CDATA[Can you handle the crazy worm ? If you think you can go =&#62;=&#62;here &#60;=&#60;=<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=26&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Can you handle the crazy worm ?</p>
<p>
<a href='http://www.parkerfox.co.uk/labs/crazyworm'><br />
  <img style='width:400px;' src='http://foxparker.files.wordpress.com/2009/10/crazy-worm-screeny.png?w=380' /><br />
</a>
</p>
<p>If you think you can go =&gt;=&gt;<a href='http://www.parkerfox.co.uk/labs/crazyworm'>here</a> &lt;=&lt;=</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/26/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=26&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/10/08/crazy-worm-bookmarklet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>

		<media:content url="http://foxparker.files.wordpress.com/2009/10/crazy-worm-screeny.png" medium="image" />
	</item>
		<item>
		<title>jQuery Sprite Factory</title>
		<link>http://blog.parkerfox.co.uk/2009/10/07/jquery-sprite-factory/</link>
		<comments>http://blog.parkerfox.co.uk/2009/10/07/jquery-sprite-factory/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 14:43:26 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.parkerfox.co.uk/?p=12</guid>
		<description><![CDATA[A jQuery factory for creating sprites from images, including transparent PNG&#8217;s in IE Features Works from a rectangluar grid of sprites. Fast, good for rendering large numbers of similar sprites Preloading CSS for large images (will add the &#8216;loading&#8217; class to the element until the image has been loaded) Can use transparent PNGS for IE6 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=12&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div>
<p>A jQuery factory for creating sprites from images, including transparent PNG&#8217;s in IE</p>
<h2>Features</h2>
<ul>
<li>Works from a rectangluar grid of sprites.</li>
<li>Fast, good for rendering large numbers of similar sprites</li>
<li>Preloading CSS for large images (will add the &#8216;loading&#8217; class to the element until the image has been loaded)</li>
<li>Can use transparent PNGS for IE6 and IE7</li>
<li>Light mode, using half the number of elements (only suitable for non-transparent images)</li>
<li>Easy to update sprite to a different index &#8211; useful for animation</li>
</ul>
<h2>Example of use</h2>
<pre>$().ready( function() {
  var options = {
                  src: "http://..." ,
                  width: 60,
                  height: 60,
                  index: [2,6],
                  light: true
                }
  var factory = new SpriteFactory(options)
  $("#mydiv")
    .append(factory.generate([1,2]))
    .append(factory.generate([1,3]))
})
</pre>
<p>Also see <a href="http://weepy.github.com/sprite-factory">Demo</a></p>
<h2>Options</h2>
<ul>
<li>&#8216;src&#8217; =&gt; location of source image</li>
<li>&#8216;width&#8217; =&gt; width of sprite</li>
<li>&#8216;height&#8217; =&gt; height of sprite</li>
<li>&#8216;index&#8217; =&gt; location of required sprite on image</li>
<li>&#8216;light&#8217; =&gt; Only use one element (no good for IE6, IE7)</li>
</ul>
<h2>Links</h2>
<ul>
<li><a href="http://weepy.github.com/sprite-factory">Demo</a></li>
<li><a href="http://github.com/weepy/sprite-factory/raw/master/sprite-factory.js">Javascript File</a></li>
<li><a href="http://github.com/weepy/sprite-factory">Github Project</a></li>
<li><a href="http://github.com/weepy/sprite-factory/issues">Issue Tracker</a></li>
</ul>
<h2>Compatibility</h2>
<p>Tested in</p>
<ul>
<li>Firefox 3.5</li>
<li>Safari 4</li>
<li>IE 6, 7, 8</li>
</ul>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=12&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/10/07/jquery-sprite-factory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>Bezier Curves and Arcs in jQuery</title>
		<link>http://blog.parkerfox.co.uk/2009/09/22/bezier-curves-and-arcs-in-jquery/</link>
		<comments>http://blog.parkerfox.co.uk/2009/09/22/bezier-curves-and-arcs-in-jquery/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 10:25:53 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://foxparker.wordpress.com/?p=7</guid>
		<description><![CDATA[The animation engine in jQuery is focussed on single dimensional animation &#8211; hence it&#8217;s difficult to animate two variables along a path. jQuery.path provides a method of multidimensional animation, and in particular provides a method for animating along bezier curves and arcs. Bezier Example: animate along a bezier path. See demo var bezier_params = { [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=7&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>The animation engine in jQuery is focussed on single dimensional animation &#8211; hence it&#8217;s difficult to animate two variables along a path.</p>
<p><a href="http://github.com/weepy/jquery.path">jQuery.path</a> provides a method of multidimensional animation, and in particular provides a method for animating along bezier curves and arcs.</p>
<h2>Bezier</h2>
<p>Example: animate along a bezier path. See <a href="http://weepy.github.com/jquery.path/">demo</a></p>
<pre>var bezier_params = {
    start: {
      x: 185,
      y: 185,
      angle: 10
    },
    end: {
      x:540,
      y:110,
      angle: -10,
      length: 0.25
    }
  }

$("my_elem").animate({path : new $.path.bezier(bezier_params)})</pre>
<p>Bezier curves are made form a start point, an end point each with a control point</p>
<ul>
<li>start is starting point</li>
<li>end is the final point</li>
<li>x,y indicate the coordinates at that point. Required</li>
<li>angle is the angle of the control point from the line joining the start and end. Optional, default is 0</li>
<li>length is the distance from the point to it&#8217;s control point as a ratio of the distance from start to end. Optional, default is 1/3</li>
</ul>
<h2>Arc</h2>
<p>Exampe: animate along an arc. See <a href="http://weepy.github.com/jquery.path/">demo</a></p>
<pre>var arc_params = {
    center: [285,185],
        radius: 100,
        start: 30,
        end: 200,
        dir: -1
  }

$("my_elem").animate({path : new $.path.arc(arc_params)})</pre>
<ul>
<li>center is the coords of the centre of an imaginary circle that contains the start and end point</li>
<li>radius is the radius of this circle</li>
<li>start is the angle of the start point. 0 is &#8220;North&#8221;, measured clockwise</li>
<li>end is the angle of the start point. 0 is &#8220;North&#8221;, measured clockwise</li>
<li>dir is the direction to move in. Only required if not obvious from start and end (e.g. if start is 100, end is 30, but you want to animate clockwise)</li>
</ul>
<h2>Other Paths</h2>
<p>It is trivial to create other paths, or even animate other parameters. E.g:</p>
<pre>var SineWave = function() {
  this.css = function(p) {
    var s = Math.sin(p*20)
    var x = 500 - p * 300
    var y = s * 50 + 150
    var o = ((s+2)/4+0.1)
    return {top: y + "px", left: x + "px", opacity: o}
  }
};

$("my_elem").animate({path : new SineWave})</pre>
<h2>Links</h2>
<ul>
<li><a href="http://weepy.github.com/jquery.path">Demo</a></li>
<li><a href="http://github.com/weepy/jquery.path/raw/master/jquery.path.js">Javascript File</a></li>
<li><a href="http://github.com/weepy/jquery.path">Github Project</a></li>
<li><a href="http://github.com/weepy/jquery.path/issues">Issue Tracker</a></li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/7/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=7&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/09/22/bezier-curves-and-arcs-in-jquery/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
		<item>
		<title>Hello world!</title>
		<link>http://blog.parkerfox.co.uk/2009/09/10/hello-world/</link>
		<comments>http://blog.parkerfox.co.uk/2009/09/10/hello-world/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 14:20:32 +0000</pubDate>
		<dc:creator>foxparker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Welcome to our new blog. Focus will be on Javascript, jQuery, Ruby, Rails, perhaps some C#<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=1&subd=foxparker&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Welcome to our new blog. Focus will be on Javascript, jQuery, Ruby, Rails, perhaps some C#</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/foxparker.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/foxparker.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/foxparker.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/foxparker.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/foxparker.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/foxparker.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/foxparker.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/foxparker.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/foxparker.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/foxparker.wordpress.com/1/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.parkerfox.co.uk&blog=9418852&post=1&subd=foxparker&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.parkerfox.co.uk/2009/09/10/hello-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/dca4c0022387d5087106c01c0a14c308?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">foxparker</media:title>
		</media:content>
	</item>
	</channel>
</rss>