<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="http://feedproxy.google.com/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feedproxy.google.com/~d/styles/itemcontent.css"?><rss 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:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Asgrim the Anglo-Saxon</title>
	
	<link>http://www.asgrim.com</link>
	<description>Subscribe to the shiny feed of my life, get the latest updates on whatever PHP code I'm doing, or what I'm doing at the weekend. Includes daily digests of my Twitter feed!</description>
	<pubDate>Mon, 01 Dec 2008 17:14:01 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<geo:lat>50.883827</geo:lat><geo:long>-1.250339</geo:long><image><link>http://www.asgrim.com/</link><url>http://www.asgrim.com/stuff/James-150.jpg</url><title>James - Frosthold</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feedproxy.google.com/asgrimthemighty" type="application/rss+xml" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.rojo.com/add-subscription?resource=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://blog.rojo.com/RojoWideRed.gif">Subscribe with Rojo</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feedproxy.google.com/asgrimthemighty" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeedproxy.google.com%2Fasgrimthemighty" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:browserFriendly>Thankyou for subscribing to my blog!</feedburner:browserFriendly><item><title>Links for 2008-12-01 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/l7RBfZWKcBk/AsgrimTheMighty</link><pubDate>Tue, 02 Dec 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-12-01</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://downloads.zend.com/pdt/all-in-one/"&gt;PDT 2.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.johnlewis.com/230487435/Product.aspx"&gt;Upside Down Christmas Tree&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/l7RBfZWKcBk" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-12-01</feedburner:origLink></item><item>
		<title>Using Eclipse More Effectively - Perspectives and Views</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/insaM8ZhwRM/</link>
		<comments>http://www.asgrim.com/2008/12/01/eclipse-perspectives-and-views/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 17:08:36 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Work]]></category>

		<category><![CDATA[collabnet]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[mylyn]]></category>

		<category><![CDATA[pdt]]></category>

		<category><![CDATA[perspectives]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[php development tools]]></category>

		<category><![CDATA[SourceForge]]></category>

		<category><![CDATA[subversion]]></category>

		<category><![CDATA[SVN]]></category>

		<category><![CDATA[tasks]]></category>

		<category><![CDATA[views]]></category>

		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1186</guid>
		<description>I&amp;#8217;m really growing to love Eclipse (specifically PHP Development Tools, the PHP extension for it), and how versatile and useful a work environment it is. It really does have everything, and it really helps you get on with what you need to do, when you&amp;#8217;re not blogging that is&amp;#8230; Now I know why developers have [...]</description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1188" title="eclipse" src="http://www.asgrim.com/wp-content/uploads/2008/12/eclipse.jpg" alt="" width="319" height="256" />I&#8217;m really growing to love <a href="http://www.eclipse.org/">Eclipse</a> (specifically <a href="http://www.eclipse.org/pdt/">PHP Development Tools</a>, the PHP extension for it), and how versatile and useful a work environment it is. It really does have everything, and it really helps you get on with what you need to do, when you&#8217;re not blogging that is&#8230; Now I know why developers have been raving about Eclipse all this time.</p>
<p>One thing I learned today is the huge importance of Perspectives and Views in Eclipse. When Kelvin first said &#8220;right, stop using PhpEd, and use this Eclipse thing&#8221;, I was overwhelmed by the feature-richness, and my knee-jerk reaction was to just set it up as close to the way I used PhpEd. Thats the first mistake I made, because although I got it close, I missed out on all the glorious features I could&#8217;ve been using.</p>
<p>Our Eclipse configuration at work uses Eclipse, PDT, Mylyn, SVN and CollabNet - which integrates <em>wonderfully</em> into our Sourceforge 5.0 server. Mylyn and CollabNet allow task management and allows me to work on Sourceforge artefacts within the Eclipse environment. A rather cool feature is contexts, which allow me to basically attach a list of files to the SF artefact, and when I activate the task in my Task List (note, not &#8220;Tasks&#8221;, &#8220;Task Lists&#8221;, a part of Mylyn), it opens all the files I was working on.</p>
<p>Because of our heavy reliance on SourceForge (everything we do has an associated artefact), it makes sense to make use of the CollabNet perspective. If I want to go into &#8220;task management mode&#8221;, i.e. line up a load of work that has been assigned to me, I switch to the CollabNet perspective. I open an artefact from my assigned artefacts list in the CollabNet view, and it automatically adds it to my Mylyn Task list. I can then say &#8220;right, I&#8217;m working on this one&#8221;, and click a little blob which turns blue, and then I&#8217;m working on it. If I&#8217;ve been previously working on it, and I attached the context, it automatically opens the files I was working on.</p>
<p>This was meant to be a short homage to Eclipse, but has turned into a little rant, but now that Kelvin set up the SVN repository on Friday properly, we&#8217;re actually <em>FINALLY</em> using source control, after the months of me (and Chris) nagging him to get it set up. It&#8217;s a little step, but we&#8217;re working on the same checkout at the moment, but eventually all that will change. I&#8217;ll start bugging him for that soon&#8230;</p>
<p>Anyway, if you&#8217;re a PHP developer, on a Mac, Windows or Linux, and you&#8217;re not using Eclipse PDT yet, I strongly suggest you do so. It&#8217;ll make your productivity increase hugely - it did mine!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=za6DuIXR"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=g6h3Vy4g"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=g6h3Vy4g" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=KQ2w08i6"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=bggSxOHe"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=bggSxOHe" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=KB9NOgcQ"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=KB9NOgcQ" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=LwgF4cmd"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=1DeBVE9y"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/insaM8ZhwRM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/12/01/eclipse-perspectives-and-views/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/12/01/eclipse-perspectives-and-views/</feedburner:origLink></item>
		<item><title>Links for 2008-11-30 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/AGizQRUlkA4/AsgrimTheMighty</link><pubDate>Mon, 01 Dec 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-30</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://vimeo.com/2345579"&gt;Interactive Video Object Manipulation on Vimeo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.twhirl.org/"&gt;twhirl&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/AGizQRUlkA4" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-30</feedburner:origLink></item><item>
		<title>Twitter Updates for 2008-11-30</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/gABPj59vK-A/</link>
		<comments>http://www.asgrim.com/2008/11/30/twitter-updates-for-2008-11-30-2/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 23:59:59 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Weekly Twitter Digests]]></category>

		<category><![CDATA[tweets]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/2008/11/30/twitter-updates-for-2008-11-30-2/</guid>
		<description>James got it running, but on Fedora in the end. Damn Gentoo. (24/11/2008 09:16:30)
James is in da sistam, hackin&amp;#8217; ur FastCGI. (24/11/2008 10:18:29)
James is wondering around in PHP land. (24/11/2008 11:44:13)
James is wandering around in PHP land. (24/11/2008 11:57:12)
James is codin&amp;#8217; ur PHP. (25/11/2008 16:40:53)
James is getting his car serviced on Friday, woot! (26/11/2008 09:15:21)
James [...]</description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>James got it running, but on Fedora in the end. Damn Gentoo. <span style="italic;">(24/11/2008 09:16:30)</span></li>
<li>James is in da sistam, hackin&#8217; ur FastCGI. <span style="italic;">(24/11/2008 10:18:29)</span></li>
<li>James is wondering around in PHP land. <span style="italic;">(24/11/2008 11:44:13)</span></li>
<li>James is wandering around in PHP land. <span style="italic;">(24/11/2008 11:57:12)</span></li>
<li>James is codin&#8217; ur PHP. <span style="italic;">(25/11/2008 16:40:53)</span></li>
<li>James is getting his car serviced on Friday, woot! <span style="italic;">(26/11/2008 09:15:21)</span></li>
<li>James has been locked out of the office! <span style="italic;">(26/11/2008 15:27:55)</span></li>
<li>James is getting his car serviced tomorrow! <span style="italic;">(27/11/2008 08:55:53)</span></li>
<li>James might buy an iPhone&#8230; meh maybe not. <span style="italic;">(27/11/2008 15:37:30)</span></li>
<li>James has congrats for Colin n stuff. <span style="italic;">(27/11/2008 17:05:35)</span></li>
<li>James wonders how much his car will end up costing&#8230; <span style="italic;">(28/11/2008 09:02:31)</span></li>
<li>James wonders how anyone else on this floor isn&#8217;t frickin&#8217; FREEZING. <span style="italic;">(28/11/2008 10:27:37)</span></li>
<li>James got whacked for £425 odd quid for his service. <span style="italic;">(28/11/2008 18:22:04)</span></li>
<li>James has tidied up a bit, woot. <span style="italic;">(29/11/2008 12:16:40)</span></li>
</ul>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=iC71AmJ7"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=buiUIafh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=buiUIafh" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=wnpIL1r3"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=6S3d9mq3"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=6S3d9mq3" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=dxPLcvwS"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=dxPLcvwS" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=DXmHaaED"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=JgB4Badt"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/gABPj59vK-A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/30/twitter-updates-for-2008-11-30-2/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/30/twitter-updates-for-2008-11-30-2/</feedburner:origLink></item>
		<item>
		<title>Monopoly Sunday</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/O-xoS4wkg1E/</link>
		<comments>http://www.asgrim.com/2008/11/30/monopoly-sunday/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 23:38:49 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Technology]]></category>

		<category><![CDATA[board]]></category>

		<category><![CDATA[busy]]></category>

		<category><![CDATA[games]]></category>

		<category><![CDATA[hannah]]></category>

		<category><![CDATA[monopoly]]></category>

		<category><![CDATA[sunday]]></category>

		<category><![CDATA[twitter]]></category>

		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1182</guid>
		<description>Yeah, so our Sunday evening hasn&amp;#8217;t really been that productive, but Hannah and I both had a really busy week and we took the evening out to just chill and spend some time together, chilling to the max.
We dragged out an old favourite, but varying a little with the Here and Now UK Edition of [...]</description>
			<content:encoded><![CDATA[<p><a href="http://www.asgrim.com/wp-content/uploads/2008/11/pc010005.jpg"><img class="alignleft size-medium wp-image-1184" title="pc010005" src="http://www.asgrim.com/wp-content/uploads/2008/11/pc010005-300x225.jpg" alt="" width="300" height="225" /></a>Yeah, so our Sunday evening hasn&#8217;t really been that productive, but Hannah and I both had a really busy week and we took the evening out to just chill and spend some time together, chilling to the max.</p>
<p>We dragged out an old favourite, but varying a little with the <em>Here and Now UK Edition</em> of Monopoly. Playing reminded us both of why we never play it, because it&#8217;s such a long game, and boy it drags. Hannah eventually gave up trying and I managed to settle hotels on half the board and own the rest of the board&#8230; which I suppose is the aim of the game really.</p>
<p>Fun nevertheless, but it&#8217;s off to bed for me, ready for another busy week in the office&#8230; and a whole new week&#8217;s worth of <a href="http://echohelloworld.com/2008/11/why-i-love-twitter/">Twitter updates</a>.</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=4Gy3syUZ"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Ic5YvUP6"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=Ic5YvUP6" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=dM5VRqsk"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=zwWvBNvf"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=zwWvBNvf" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=T7FQPIly"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=T7FQPIly" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=xHWeA6Yh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=PwScA47T"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/O-xoS4wkg1E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/30/monopoly-sunday/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/30/monopoly-sunday/</feedburner:origLink></item>
		<item>
		<title>ZOMG! Blog Theme v2 Nearly Ready!</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/Caac15trFLk/</link>
		<comments>http://www.asgrim.com/2008/11/30/zomg-blog-theme-v2-nearly-ready/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 10:03:02 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[blog]]></category>

		<category><![CDATA[blogging]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[design]]></category>

		<category><![CDATA[RSS]]></category>

		<category><![CDATA[style]]></category>

		<category><![CDATA[theme]]></category>

		<category><![CDATA[valid]]></category>

		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1177</guid>
		<description>Regular readers of my blog who visit the site (not just subscribe to the RSS) will have noticed over time, since I made this theme and released it on June 3rd 2008, my blog slowly changing and looking more sleek and refined. I&amp;#8217;ve literally just finished the comments CSS, so comments are nicely boxed up [...]</description>
			<content:encoded><![CDATA[<p><a href="http://www.asgrim.com/wp-content/uploads/2008/11/original-theme.png"><img class="alignleft size-full wp-image-1178" title="original-theme" src="http://www.asgrim.com/wp-content/uploads/2008/11/original-theme.png" alt="" width="300" height="208" /></a>Regular readers of my blog who visit the site (not just subscribe to the RSS) will have noticed over time, since I made this theme and released it on June 3rd 2008, my blog slowly changing and looking more sleek and refined. I&#8217;ve literally just finished the comments CSS, so comments are nicely boxed up and styled, rather than the basic numbered list. Also, people might&#8217;ve noticed the sidebar suddenly shifting to the left. As <a href="http://www.sjcdesign.com/">Sii</a> says, the posts being below the search box makes more contextual sense as well. I also recently added a shiny RSS icon, made by <a href="http://www.bittbox.com/freebies/free-glass-style-rssfeed-icons/">Jay Hilgert</a>. Looking at the picture to the left (it&#8217;s the only one I have unfortunately so it&#8217;s a bit low-res), you can see how much it&#8217;s changed.</p>
<p>And thinking about it, how much I&#8217;ve changed as well! I&#8217;ve been dabbling an awful lot more in trying to make things XHTML compliant and using CSS in the proper fashion recently, and after a bit of modification to the Picasa widget, my page is fully <a href="http://validator.w3.org/check?uri=http://www.asgrim.com/">XHTML 1.0 Transitional valid</a>. I&#8217;ve not bothered making it strict yet, as generally widgets made by other people take a lot of work to make them strict. In fact, up until Matched.co.uk went under, my pages have been non-compliant due to non-compliant Matched.co.uk ad code.</p>
<p>And last, but most certainly not least, the biggest change is of course the pregnancy, which is coming along swimmingly by the way!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=HLYoEr5U"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=wWx7B5W3"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=wWx7B5W3" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=oGTkolyp"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=o2mgml8t"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=o2mgml8t" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=f21xbPMS"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=f21xbPMS" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=lRDtYP1h"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=iYEZa3Hp"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/Caac15trFLk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/30/zomg-blog-theme-v2-nearly-ready/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/30/zomg-blog-theme-v2-nearly-ready/</feedburner:origLink></item>
		<item><title>Links for 2008-11-27 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/_RJBLP2j6TI/AsgrimTheMighty</link><pubDate>Fri, 28 Nov 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-27</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=W1oiBywYvvQ"&gt;Muggle Quidditch - O RLY?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://flood.firetree.net/"&gt;Google Flood Maps&lt;/a&gt;&lt;br/&gt;
I did find this ages ago but I wanted to delicious it forever.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.catswhocode.com/blog/blogging/wordpress/how-to-overwrite-wordpress-core-functions-1082"&gt;Overriding WordPress core functions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/_RJBLP2j6TI" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-27</feedburner:origLink></item><item>
		<title>SVN Auto-Update on Commit</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/dfPS6SP88Sw/</link>
		<comments>http://www.asgrim.com/2008/11/27/svn-auto-update-on-commit/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 18:40:02 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[auto]]></category>

		<category><![CDATA[auto-update]]></category>

		<category><![CDATA[commit]]></category>

		<category><![CDATA[repository]]></category>

		<category><![CDATA[SVN]]></category>

		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1173</guid>
		<description>I had a handy mechanism working on my old old CVS server, and I&amp;#8217;ve been using it for some time on my current SVN server.
Basically, whenever you commit a file to the repository, if you have a checked out workspace on the same server, then it will automatically update to the latest revision of the [...]</description>
			<content:encoded><![CDATA[<p>I had a handy mechanism working on my old old CVS server, and I&#8217;ve been using it for some time on my current <a href="http://www.asgrim.com/2008/10/21/subversion-on-1and1/">SVN server</a>.</p>
<p>Basically, whenever you commit a file to the repository, if you have a checked out workspace on the same server, then it will automatically update to the latest revision of the checked out branch or trunk. It&#8217;s handy so you don&#8217;t have to &#8220;svn up&#8221; every time you make a change, especially if you&#8217;re making lots of tiny changes.</p>
<p>This guide was original from <a href="http://marcgrabanski.com/article/svn-authentication-and-auto-update">Marc Grabanski</a>&#8217;s blog, so 99% of credit goes to him.</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>svnroot<span style="color: #000000; font-weight: bold;">/</span>hooks<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #c20cb9; font-weight: bold;">cp</span> post-commit.tmpl post-commit
<span style="color: #c20cb9; font-weight: bold;">chmod</span> +x post-commit</pre></div></div>

<p>You can make a little program to update all your SVN repositories, so nano svnupdate.c:</p>

<div class="wp_syntax"><div class="code"><pre class="c c" style="font-family:monospace;"><span style="color: #339933;">#include &lt;stddef.h&gt;</span>
<span style="color: #339933;">#include &lt;stdlib.h&gt;</span>
<span style="color: #339933;">#include &lt;unistd.h&gt;</span>
&nbsp;
<span style="color: #993333;">int</span> main<span style="color: #009900;">&#40;</span><span style="color: #993333;">void</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
  execl<span style="color: #009900;">&#40;</span>
    <span style="color: #ff0000;">&quot;/usr/bin/svn&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #ff0000;">&quot;svn&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #ff0000;">&quot;update&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #ff0000;">&quot;/path/to/mywebsite1.co.uk/www/&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #ff0000;">&quot;/path/to/mywebsite2.co.uk/www/&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #ff0000;">&quot;/path/to/mywebsite3.co.uk/www/&quot;</span><span style="color: #339933;">,</span>
    <span style="color: #009900;">&#40;</span><span style="color: #993333;">const</span> <span style="color: #993333;">char</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">NULL</span><span style="color: #009900;">&#41;</span>;
  <span style="color: #b1b100;">return</span><span style="color: #009900;">&#40;</span>EXIT_FAILURE<span style="color: #009900;">&#41;</span>;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>You can add as many paths as you like there, just copy and paste the line and edit the path to your needs. You need to then compile it, test it.</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">gcc</span> <span style="color: #660033;">-o</span> svnupdate svnupdate.c
<span style="color: #c20cb9; font-weight: bold;">env</span> - .<span style="color: #000000; font-weight: bold;">/</span>svnupdate</pre></div></div>

<p>Nano your post-commit file and add in the FULL path to your svnupdate program:</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>path<span style="color: #000000; font-weight: bold;">/</span>to<span style="color: #000000; font-weight: bold;">/</span>svnroot<span style="color: #000000; font-weight: bold;">/</span>hooks<span style="color: #000000; font-weight: bold;">/</span>svnupdate</pre></div></div>

<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=218oxCOz"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=jnoFPKw8"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=jnoFPKw8" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=gw9z3DEg"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=GvuyBGtv"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=GvuyBGtv" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ntzvQfz6"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=ntzvQfz6" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ftmZmz7B"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=W5nBVblh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/dfPS6SP88Sw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/27/svn-auto-update-on-commit/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/27/svn-auto-update-on-commit/</feedburner:origLink></item>
		<item>
		<title>Recipe: Carrot &amp; Coriander Soup</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/hnx1sAUFD6A/</link>
		<comments>http://www.asgrim.com/2008/11/27/recipe-carrot-coriander-soup/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 17:27:33 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Dinner Recipies]]></category>

		<category><![CDATA[bread]]></category>

		<category><![CDATA[butter]]></category>

		<category><![CDATA[carrot]]></category>

		<category><![CDATA[coriander]]></category>

		<category><![CDATA[cream]]></category>

		<category><![CDATA[double]]></category>

		<category><![CDATA[potatoes]]></category>

		<category><![CDATA[recipe]]></category>

		<category><![CDATA[soup]]></category>

		<category><![CDATA[stock]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1169</guid>
		<description>Soup is a really yummy dish, really easy to make, and great for winter. Carrot &amp;#38; Coriander soup is my favourite and I had a bash at making my own last night. The only thing is, you need a blender or liquidiser for this, so if you don&amp;#8217;t have one, you can get one pretty [...]</description>
			<content:encoded><![CDATA[<p><a href="http://www.asgrim.com/wp-content/uploads/2008/11/image011.jpg"><img class="alignright size-medium wp-image-1171" title="image011" src="http://www.asgrim.com/wp-content/uploads/2008/11/image011-300x225.jpg" alt="" width="300" height="225" /></a>Soup is a really yummy dish, really easy to make, and great for winter. Carrot &amp; Coriander soup is my favourite and I had a bash at making my own last night. The only thing is, you need a blender or liquidiser for this, so if you don&#8217;t have one, <a href="http://www.amazon.co.uk/gp/product/B0000C6WP9?ie=UTF8&amp;tag=mypre-21&amp;linkCode=as2&amp;camp=1634&amp;creative=6738&amp;creativeASIN=B0000C6WP9">you can get one pretty cheap</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.co.uk/e/ir?t=mypre-21&amp;l=as2&amp;o=2&amp;a=B0000C6WP9" border="0" alt="" width="1" height="1" />.</p>
<h3>Ingredients</h3>
<ul>
<li>Carrots</li>
<li>3/4 pint Vegetable or chicken stock</li>
<li>A white potato or two (depending on how thick you want it - I used 3!)</li>
<li>Fresh coriander</li>
<li>A bit of butter</li>
<li>Optional - double cream</li>
</ul>
<h3>Instructions</h3>
<p>Skin potatoes and carrots. Chop coriander up really fine. Remember - the more coriander you have, the more spicy it gets! Put a bit of butter in a large saucepan. Heat them on medium/low for about 5 minutes. Pour in your stock, and simmer for 15 minutes. Add coriander, and if you want, some double cream.</p>
<p>Let it all cool right down to a temperature that won&#8217;t melt your blender - you&#8217;re not blaming me if you put hot stuff in your blender and it melts! Then put it all in the blender and blend until really smooth. Once blended, pour back into your saucepan and heat&#8230; and as always, do not boil it as this may impair the flavour, and it&#8217;ll just be downright hot.</p>
<p>Pour into your bowl, and garnish with a coriander leaf. Serve with bread and butter. Yum!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=qyP5CbEK"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=hYGKe5U7"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=hYGKe5U7" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=GegdhTQ4"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=YOJIuLRB"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=YOJIuLRB" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=F6fr0mPS"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=F6fr0mPS" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=QKjUFWsJ"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=dq22rfEg"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/hnx1sAUFD6A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/27/recipe-carrot-coriander-soup/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/27/recipe-carrot-coriander-soup/</feedburner:origLink></item>
		<item><title>Links for 2008-11-26 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/TfOc46-AZuY/AsgrimTheMighty</link><pubDate>Thu, 27 Nov 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-26</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://parallelbrowser.blogspot.com/2007/09/hello-world.html"&gt;Berkeley Parallel Browser Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://view.eecs.berkeley.edu/wiki/Main_Page"&gt;Parallel Computing Research&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=KpcgRlXe40k"&gt;Google Has Too Much Free Time&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://gettingreal.37signals.com/"&gt;37signals: Getting Real&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.asgrim.com/stuff/Wikipedia_cat.jpg"&gt;IT ARE FACT&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/TfOc46-AZuY" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-26</feedburner:origLink></item><item><title>Links for 2008-11-25 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/VZpzLtrkb2A/AsgrimTheMighty</link><pubDate>Wed, 26 Nov 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-25</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.geekologie.com/2008/11/thats_what_i_call_shiny_a_chro.php"&gt;Chrome Bugatti Veyron - I want one&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.hicksdesign.co.uk/journal/3d-css-box-model"&gt;3D CSS Box Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.webreference.com/programming/css_stylish/"&gt;Stylish CSS Buttons&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jankoatwarpspeed.com/post/2008/07/27/Enhance-your-input-fields-with-simple-CSS-tricks.aspx"&gt;Enhancing input fields CSS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/VZpzLtrkb2A" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-25</feedburner:origLink></item><item>
		<title>Getting Rid of Decimal Places in PHP</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/rvTjppsnTtM/</link>
		<comments>http://www.asgrim.com/2008/11/25/getting-rid-of-decimal-places-in-php/#comments</comments>
		<pubDate>Tue, 25 Nov 2008 16:14:14 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Work]]></category>

		<category><![CDATA[decimal]]></category>

		<category><![CDATA[floor]]></category>

		<category><![CDATA[number]]></category>

		<category><![CDATA[number_format]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[places]]></category>

		<category><![CDATA[rounding down]]></category>

		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1167</guid>
		<description>There&amp;#8217;s a couple of ways to remove decimal places from a number in PHP&amp;#8230;

$out = number_format&amp;#40;$val,0&amp;#41;;
$out = &amp;#40;int&amp;#41; @floor&amp;#40;$val&amp;#41;;

Interestingly, we ran a real-world test case of 10 million iterations of doing each of these, and it turns out that method #2 is approximately 0.5 seconds quicker. So there you have it, if you want to [...]</description>
			<content:encoded><![CDATA[<p>There&#8217;s a couple of ways to remove decimal places from a number in PHP&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="php php" style="font-family:monospace;"><span style="color: #000088;">$out</span> <span style="color: #339933;">=</span> <span style="color: #990000;">number_format</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$val</span><span style="color: #339933;">,</span><span style="color:#800080;">0</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000088;">$out</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>int<span style="color: #009900;">&#41;</span> <span style="color: #339933;">@</span><span style="color: #990000;">floor</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$val</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>Interestingly, we ran a real-world test case of 10 million iterations of doing each of these, and it turns out that method #2 is approximately 0.5 seconds quicker. So there you have it, if you want to be 0.5 seconds quicker when removing decimal places from a number 10 million times.. then use the second method.</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=CSItYesm"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=BejsPUaC"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=BejsPUaC" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=rAgGo2vu"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Hs44sDrX"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=Hs44sDrX" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=LuRRQIlK"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=LuRRQIlK" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Z52hhwin"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=7w34aXQ1"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/rvTjppsnTtM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/25/getting-rid-of-decimal-places-in-php/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/25/getting-rid-of-decimal-places-in-php/</feedburner:origLink></item>
		<item>
		<title>Twitter Updates for 2008-11-23</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/8pmxxCS7E4s/</link>
		<comments>http://www.asgrim.com/2008/11/23/twitter-updates-for-2008-11-23/#comments</comments>
		<pubDate>Sun, 23 Nov 2008 23:59:59 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Weekly Twitter Digests]]></category>

		<category><![CDATA[tweets]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/2008/11/23/twitter-updates-for-2008-11-23/</guid>
		<description>James wonders when it&amp;#8217;s going to arrive&amp;#8230; (19/11/2008 10:02:52)
James wishes he won the lottery. (19/11/2008 12:03:17)
James is going to start using del.icio.us again. (19/11/2008 15:17:51)
James has just totally changed his blog layout, zomg! (19/11/2008 15:54:06)
James has compiled his PHP, woot! (19/11/2008 23:20:14)
James loves his girlfriend even though she kicked me furiously last night. (20/11/2008 08:40:00)
James [...]</description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>James wonders when it&#8217;s going to arrive&#8230; <span style="italic;">(19/11/2008 10:02:52)</span></li>
<li>James wishes he won the lottery. <span style="italic;">(19/11/2008 12:03:17)</span></li>
<li>James is going to start using del.icio.us again. <span style="italic;">(19/11/2008 15:17:51)</span></li>
<li>James has just totally changed his blog layout, zomg! <span style="italic;">(19/11/2008 15:54:06)</span></li>
<li>James has compiled his PHP, woot! <span style="italic;">(19/11/2008 23:20:14)</span></li>
<li>James loves his girlfriend even though she kicked me furiously last night. <span style="italic;">(20/11/2008 08:40:00)</span></li>
<li>James doesn&#8217;t think anyone will watch Pitchshifter or Cathedral at Damnation&#8230; <span style="italic;">(20/11/2008 09:43:21)</span></li>
<li>James wishes Carcass would play closer to home. <span style="italic;">(20/11/2008 09:54:07)</span></li>
<li>James wants to know if anyone else uses FriendFeed! Let me know (http://friendfeed.com/asgrim). <span style="italic;">(20/11/2008 10:55:25)</span></li>
<li>James is scarily addicted to a certain Dschinghis Khan song&#8230; <span style="italic;">(20/11/2008 14:13:41)</span></li>
<li>James is totally rad, dude! <span style="italic;">(20/11/2008 14:53:13)</span></li>
<li>James is knackered. <span style="italic;">(20/11/2008 20:29:20)</span></li>
<li>James wonders why some mornings at 10ºC it&#8217;s cold, and others at 10ºC it&#8217;s OK&#8230; <span style="italic;">(21/11/2008 09:08:03)</span></li>
<li>James almost made it through the entire day without Sii putting rubbish music on. <span style="italic;">(21/11/2008 17:24:21)</span></li>
<li>James has lots of Christmas decorations! <span style="italic;">(22/11/2008 16:49:37)</span></li>
<li>James is getting furious over Gentoo. <span style="italic;">(22/11/2008 19:44:59)</span></li>
<li>James thinks Gentoo is depressingly slow to install. <span style="italic;">(23/11/2008 00:24:18)</span></li>
</ul>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=wVHGnzth"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=4EVJBnYm"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=4EVJBnYm" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ILQR3E4Z"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=T1hyevrD"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=T1hyevrD" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=GeugIYHP"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=GeugIYHP" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=UAkJytuL"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=LBMt8ZAh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/8pmxxCS7E4s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/23/twitter-updates-for-2008-11-23/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/23/twitter-updates-for-2008-11-23/</feedburner:origLink></item>
		<item><title>Links for 2008-11-21 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/idtyEOZ8Rto/AsgrimTheMighty</link><pubDate>Sat, 22 Nov 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-21</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.collegehumor.com/article:1764710"&gt;The Facebook of Genesis&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/idtyEOZ8Rto" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-21</feedburner:origLink></item><item>
		<title>You Can’t Compile a PHP FastCGI on Ubuntu!</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/BnJTVjIWja4/</link>
		<comments>http://www.asgrim.com/2008/11/21/you-cant-compile-a-php-fastcgi-on-ubuntu/#comments</comments>
		<pubDate>Fri, 21 Nov 2008 15:18:27 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[cannot find]]></category>

		<category><![CDATA[fastcgi]]></category>

		<category><![CDATA[gentoo]]></category>

		<category><![CDATA[lgssapi_krb5]]></category>

		<category><![CDATA[libgssapi_krb5]]></category>

		<category><![CDATA[pcc]]></category>

		<category><![CDATA[problem]]></category>

		<category><![CDATA[roadsend]]></category>

		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1157</guid>
		<description>Last night I was having some issues compiling a real-life FastCGI I could actually use, but I came across a big show-stopper:
/usr/bin/ld: cannot find -lgssapi_krb5
After a little research and talking on the #roadsend IRC channel with GRiD (see chat log), I discovered that you just can&amp;#8217;t compile a statically linked binary on Ubuntu. The statically [...]</description>
			<content:encoded><![CDATA[<p>Last night I was having some issues compiling a real-life FastCGI I could actually use, but I came across a big show-stopper:</p>
<pre>/usr/bin/ld: cannot find -lgssapi_krb5</pre>
<p>After a little research and talking on the #roadsend IRC channel with GRiD (see <a href="http://www.asgrim.com/stuff/roadsend-chat-log.txt">chat log</a>), I discovered that you just can&#8217;t compile a statically linked binary on Ubuntu. The statically linked library was dropped between Feisty and Gusty, and this may also be the case across many other Debian-based distributions.</p>
<p>Read <a href="http://forums.roadsend.com/viewtopic.php?t=297">this forum post</a>.</p>
<p>My advice is to try a different distro, GRiD suggested <a href="http://www.gentoo.org/">Gentoo</a>, which I may just try tonight.</p>
<p><strong>Update:</strong> I recommend <a href="http://fedoraproject.org/">Fedora</a>, and <em>dynamically</em> linking your binary, because Gentoo takes way to long to install and configure.</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=0Lo2EVPb"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=P32u9X4R"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=P32u9X4R" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ufWtSXse"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=5AQVwVCh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=5AQVwVCh" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=5MsWKEIL"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=5MsWKEIL" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=5qh6W4hF"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=NSqgcy81"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/BnJTVjIWja4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/21/you-cant-compile-a-php-fastcgi-on-ubuntu/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/21/you-cant-compile-a-php-fastcgi-on-ubuntu/</feedburner:origLink></item>
		<item><title>Links for 2008-11-20 [del.icio.us]</title><link>http://feedproxy.google.com/~r/asgrimthemighty/~3/bPTRX7KGE7I/AsgrimTheMighty</link><pubDate>Fri, 21 Nov 2008 00:00:00 PST</pubDate><guid isPermaLink="false">http://del.icio.us/AsgrimTheMighty#2008-11-20</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://technosailor.com/2008/11/18/10-things-you-need-to-know-about-wordpress-27/"&gt;10 Things You Need To Know About WordPress 2.7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=jH8gtrD4_C4"&gt;Moskau with english lyrics!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/bPTRX7KGE7I" height="1" width="1"/&gt;</description><feedburner:origLink>http://del.icio.us/AsgrimTheMighty#2008-11-20</feedburner:origLink></item><item>
		<title>Compiling PHP Web Applications</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/ebQKDhu_hck/</link>
		<comments>http://www.asgrim.com/2008/11/19/compiling-php-web-applications/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 23:03:56 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[Apache]]></category>

		<category><![CDATA[cgi]]></category>

		<category><![CDATA[compile]]></category>

		<category><![CDATA[compiled php]]></category>

		<category><![CDATA[fastcgi]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[roadsend]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1151</guid>
		<description>Prerequisites: apache with mod_rewrite and mod_fcgi, shell access (maybe root/sudo)
UBUNTU USERS - READ THIS FIRST!!
You might think compiling PHP, a scripted language, is a bit daft, but there are a few really good reasons you might want to compile your source code. In fact, compiled web code has been around for a while now, what [...]</description>
			<content:encoded><![CDATA[<p><strong>Prerequisites: </strong>apache with mod_rewrite and mod_fcgi, shell access (maybe root/sudo)</p>
<p><strong>UBUNTU USERS - <a href="http://www.asgrim.com/2008/11/21/you-cant-compile-a-php-fastcgi-on-ubuntu/">READ THIS FIRST</a>!!</strong></p>
<p>You might think compiling PHP, a scripted language, is a bit daft, but there are a few really good reasons you might want to compile your source code. In fact, compiled web code has been around for a while now, what with ASP.NET and all that. The main two reasons are (1) protecting your intellectual property if your project is closed-source and (2) potential speed increases. I say potential because that&#8217;s just a theory really - I&#8217;ve not investigated speed increases (or even decreases) yet, all I&#8217;ve done is compiled a test app and got it working.</p>
<p>I used Ubuntu as my compilation OS, because&#8230; well it&#8217;s awesome really*. I used <a href="http://forums.roadsend.com/viewtopic.php?t=268">this</a> and <a href="http://forums.roadsend.com/viewtopic.php?t=22">this</a> as the main guide, so read them and I&#8217;ll skim over the process I did here.</p>
<p><span id="more-1151"></span>Firstly, you need to install and compile Bigloo (this will take 10 mins or so):</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span><span style="color: #000000; font-weight: bold;">/</span>src
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">wget</span> <span style="color: #c20cb9; font-weight: bold;">ftp</span>:<span style="color: #000000; font-weight: bold;">//</span>ftp-sop.inria.fr<span style="color: #000000; font-weight: bold;">/</span>mimosa<span style="color: #000000; font-weight: bold;">/</span>fp<span style="color: #000000; font-weight: bold;">/</span>Bigloo<span style="color: #000000; font-weight: bold;">/</span>bigloo3.0c-4.tar.gz
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xvzf</span> bigloo3.0c-4.tar.gz
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> bigloo3.0c-4.tar.gz
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> root bigloo3.0c <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chmod</span> <span style="color: #660033;">-R</span> <span style="color: #007800;">u</span>=rwx,<span style="color: #007800;">go</span>=rx bigloo3.0c
<span style="color: #7a0874; font-weight: bold;">cd</span> bigloo3.0c
<span style="color: #c20cb9; font-weight: bold;">sudo</span> .<span style="color: #000000; font-weight: bold;">/</span>configure --<span style="color: #007800;">prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr <span style="color: #660033;">--enable-sqlite</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Then, install Roadsend (this will take 5 mins or so), ensuring FastCGI support is compiled in:</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span><span style="color: #000000; font-weight: bold;">/</span>src
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>code.roadsend.com<span style="color: #000000; font-weight: bold;">/</span>snaps<span style="color: #000000; font-weight: bold;">/</span>roadsend-php-2.9.7.tar.bz2
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xvjf</span> roadsend-php-2.9.7.tar.bz2
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> roadsend-php-2.9.7.tar.bz2
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> root roadsend-php-<span style="color: #000000; font-weight: bold;">*</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chmod</span> <span style="color: #660033;">-R</span> <span style="color: #007800;">u</span>=rwx,<span style="color: #007800;">go</span>=rx roadsend-php-<span style="color: #000000; font-weight: bold;">*</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> roadsend-php-<span style="color: #000000; font-weight: bold;">*</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> .<span style="color: #000000; font-weight: bold;">/</span>configure --<span style="color: #007800;">prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Add this line into /etc/profile (or ~/.profile):</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">LD_LIBRARY_PATH</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span><span style="color: #000000; font-weight: bold;">/</span>lib</pre></div></div>

<p>Go to your &#8220;source code&#8221; directory (e.g. /var/www/src), and create a script with this in:</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Change this value to the name of your binary</span>
<span style="color: #007800;">APPNAME</span>=<span style="color: #ff0000;">'testapp'</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Change this to your cgi-bin directory</span>
<span style="color: #007800;">CGIDIR</span>=<span style="color: #ff0000;">'/usr/lib/cgi-bin'</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Compile using PCC</span>
pcc <span style="color: #660033;">-v</span> <span style="color: #660033;">--static</span> <span style="color: #660033;">-O</span> <span style="color: #660033;">--fastcgi</span> <span style="color: #007800;">$APPNAME</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">find</span> .<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #660033;">-name</span> <span style="color: #ff0000;">'*.php'</span><span style="color: #000000; font-weight: bold;">`</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Copy fastcgi to</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #007800;">$CGIDIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$APPNAME</span>.fcgi
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #660033;">-v</span> <span style="color: #007800;">$APPNAME</span>.fcgi <span style="color: #007800;">$CGIDIR</span></pre></div></div>

<p>You&#8217;ll need to modify the script - replace &#8220;testapp&#8221; with whatever you want the final binary to be called, and replace &#8220;/usr/lib/cgi-bin&#8221; with the location of your cgi-bin (you can find this by doing &#8220;grep -r ScriptAlias /etc/apache2&#8243; on an Ubuntu system). If you don&#8217;t need to sudo to modify files in your cgi-bin directory (i.e. you have permissions in that directory), then you can remove the sudo&#8217;s from the beginning of the rm/cp commands. I need this as my cgi-bin is owned by root.</p>
<p>Now all you need to do, in the live directory, create a .htaccess with this in:</p>

<div class="wp_syntax"><div class="code"><pre class="bash bash" style="font-family:monospace;">RewriteEngine On
RewriteRule ^<span style="color: #7a0874; font-weight: bold;">&#40;</span>.+\.php<span style="color: #7a0874; font-weight: bold;">&#41;</span>$ <span style="color: #000000; font-weight: bold;">/</span>cgi-bin<span style="color: #000000; font-weight: bold;">/</span>testapp.fcgi<span style="color: #000000; font-weight: bold;">/</span>$<span style="color: #000000;">1</span>
RewriteRule ^$ <span style="color: #000000; font-weight: bold;">/</span>cgi-bin<span style="color: #000000; font-weight: bold;">/</span>testapp.fcgi<span style="color: #000000; font-weight: bold;">/</span>index.php</pre></div></div>

<p>This forwards requests like http://host/blah.php to http://host/cgi-bin/testapp.fcgi/blah.php, and the FastCGI module magically deals with it just as you would any other normal website&#8230; but it&#8217;s compiled!</p>
<p>The great thing about this is that all you need to provide in your release packages is:</p>
<ul>
<li>The FastCGI module (e.g. testapp.fcgi)</li>
<li>The data files (images, javascript etc. that go in your web root)</li>
<li>If you&#8217;re nice, some instructions on how to set it up.</li>
</ul>
<p>In theory, as it&#8217;s a FastCGI it should run on a multitude of web servers, and should be cross-platform compatible&#8230; but I&#8217;ve not tried it, so I can&#8217;t vouch for it yet!</p>
<p>* <small>but not awesome at compiling FastCGI statically linked binaries.</small></p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=hBCibj8V"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=239cMVJI"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=239cMVJI" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=gXrgPQ13"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=0gCwjWCj"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=0gCwjWCj" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Y3AVWXNi"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=Y3AVWXNi" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=pVfJ1krK"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=RJyPNuxU"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/ebQKDhu_hck" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/19/compiling-php-web-applications/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/19/compiling-php-web-applications/</feedburner:origLink></item>
		<item>
		<title>VPS Hosting, perfect for web developers</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/b6iO3wRwKU8/</link>
		<comments>http://www.asgrim.com/2008/11/19/vps-hosting-perfect-for-web-developers/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 09:27:07 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[Google]]></category>

		<category><![CDATA[host]]></category>

		<category><![CDATA[hosting]]></category>

		<category><![CDATA[hypervisor]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[slicehost]]></category>

		<category><![CDATA[virtualisation]]></category>

		<category><![CDATA[web]]></category>

		<category><![CDATA[xen]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1145</guid>
		<description>Opening up Google Reader this morning, I found this post on PHPDeveloper.org&amp;#8217;s RSS feed. They use Xen hypervisor on their big beefy servers to provide what they call &amp;#8220;slices&amp;#8221; (i.e. virtual machines that you can do pretty much whatever you want with).
The host is called Slicehost, and the provide VMs of 256mb RAM up to [...]</description>
			<content:encoded><![CDATA[<p>Opening up <a href="http://www.google.com/reader/">Google Reader</a> this morning, I found <a href="http://www.phpdeveloper.org/news/11426">this post</a> on <a href="http://www.phpdeveloper.org/">PHPDeveloper.org</a>&#8217;s <a href="http://www.phpdeveloper.org/feed">RSS feed</a>. They use <a href="http://www.xen.org/">Xen</a> <a href="http://en.wikipedia.org/wiki/Hypervisor">hypervisor</a> on their big beefy servers to provide what they call &#8220;slices&#8221; (i.e. virtual machines that you can do pretty much whatever you want with).</p>
<p>The host is called <a href="http://www.slicehost.com/">Slicehost</a>, and the provide VMs of 256mb RAM up to 15.5GB RAM (!). Prices for the smallest &#8220;slice&#8221; is $20 (£13.37) per month, which is pretty reasonable for the muck-around equivalent of your own dedicated server. The beauty of it is that the resources you pay for are reserved, so you won&#8217;t find some other &#8220;slice&#8221; on the same server as you using up your RAM or CPU time when you need it the most. Of course, these VMs aren&#8217;t just limited to development servers, upwards from the 1GB slice is the equivalent of your own dedicated server, so is also more than suited to production servers, especially as initially Slicehost was meant for business and production needs. Bandwidth is pretty reasonable as well - 100GB per month for the base package. Personally I wish something like this had come along before I bought <a href="http://www.1and1.co.uk/?k_id=19185178">1and1 hosting</a> for 2 years, heh! Oh well.</p>
<p>Check out <a href="http://www.slicehost.com/">Slicehost</a> here!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=MErQ3kGL"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=pPhigHuG"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=pPhigHuG" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=mDdnjBsH"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=9ItQVn9x"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=9ItQVn9x" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=qt9fqd4a"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=qt9fqd4a" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=6xNFYJMh"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/b6iO3wRwKU8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/19/vps-hosting-perfect-for-web-developers/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/19/vps-hosting-perfect-for-web-developers/</feedburner:origLink></item>
		<item>
		<title>Book Meme</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/MaucYaidYRY/</link>
		<comments>http://www.asgrim.com/2008/11/17/book-meme/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 16:21:05 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[book]]></category>

		<category><![CDATA[meme]]></category>

		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1093</guid>
		<description>Got this from Daniel Pope&amp;#8217;s blog&amp;#8230;

Grab the nearest book.
Open it to page 56.
Find the fifth sentence.
Post the text of the sentence in your blog along with these instructions.
Don’t dig for your favorite book, the cool book, or the intellectual one: pick the CLOSEST.

Similarly, a class that wraps an HTTP request (including headers, response codes, and [...]</description>
			<content:encoded><![CDATA[<p>Got this from <a href="http://blog.mauveweb.co.uk/2008/11/17/book-meme/">Daniel Pope</a>&#8217;s blog&#8230;</p>
<ul>
<li>Grab the nearest book.</li>
<li>Open it to page 56.</li>
<li>Find the fifth sentence.</li>
<li>Post the text of the sentence in your blog along with these instructions.</li>
<li>Don’t dig for your favorite book, the cool book, or the intellectual one: pick the CLOSEST.</li>
</ul>
<blockquote><p>Similarly, a class that wraps an HTTP request (including headers, response codes, and so on) has only one instance per request.</p></blockquote>
<p>The book that was nearest to me was Advanced PHP Programming by George Schlossnagle (ISBN 0-672-32561-6).</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=GkgIx009"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=AuX3dzgC"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=AuX3dzgC" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=aIp2BS3C"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=SWgn48vO"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=SWgn48vO" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=GD454Osx"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=GD454Osx" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=uXOweaAp"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=NsQsNGpC"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/MaucYaidYRY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/17/book-meme/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/17/book-meme/</feedburner:origLink></item>
		<item>
		<title>Twitter Tools Spamming</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/8IhjVtF-idE/</link>
		<comments>http://www.asgrim.com/2008/11/17/twitter-tools-spamming/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 11:31:40 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[bug]]></category>

		<category><![CDATA[duplicate]]></category>

		<category><![CDATA[issue]]></category>

		<category><![CDATA[multiple]]></category>

		<category><![CDATA[posts]]></category>

		<category><![CDATA[problem]]></category>

		<category><![CDATA[tools]]></category>

		<category><![CDATA[twitter]]></category>

		<category><![CDATA[twittertools]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=1074</guid>
		<description>I logged on this morning to find 42 new posts on my blog, all the weekly digests from Twitter Tools. It looks like there&amp;#8217;s a bug, and I&amp;#8217;m not alone. In fact, the author knows about it, but unfortunately is too busy to do anything about it. And so am I, so it looks like [...]</description>
			<content:encoded><![CDATA[<p>I logged on this morning to find 42 new posts on my blog, all the weekly digests from Twitter Tools. It looks like there&#8217;s a bug, and <a href="http://wordpress.org/support/topic/217377">I&#8217;m not alone</a>. In fact, the <a href="http://alexking.org/blog/2008/11/16/twitter-tools-digest-problems">author knows about it</a>, but unfortunately is too busy to do anything about it. And so am I, so it looks like I&#8217;ll have to wait until the next release&#8230; And looking at my Manage Posts page, I&#8217;ll be deleting them constantly&#8230;</p>
<p><strong>Update: </strong>Resetting the Tweet Checking seems to have fixed this so far&#8230;</p>
<p><strong>Update 2:</strong> Nope, still not working&#8230;</p>
<p><strong>Update 3: </strong>Alex King has <a href="http://alexking.org/blog/2008/11/16/twitter-tools-digest-problems">posted a patch</a> that was written by Greg that will hopefully fix the issue. I&#8217;m giving it a try, and I&#8217;ve also updated my <a href="http://www.asgrim.com/projects/twitter-tools-mod/">Twitter Tools Mod patch</a>.</p>
<p><strong>Update 4:</strong> Looks like it works! The fix was just returning true from the digest post function, instead of some unset variable ($success). Woot!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=m2GZrAGx"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=FYljdWAB"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=FYljdWAB" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=oDvYrVDj"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=MiE8UVti"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=MiE8UVti" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=BdA0Iyaw"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=BdA0Iyaw" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=wH4VVIza"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=32UVY6me"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/8IhjVtF-idE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/17/twitter-tools-spamming/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/17/twitter-tools-spamming/</feedburner:origLink></item>
		<item>
		<title>Twitter Updates for 2008-11-16</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/6dZ6N9kcf_0/</link>
		<comments>http://www.asgrim.com/2008/11/16/twitter-updates-for-2008-11-16-42/#comments</comments>
		<pubDate>Sun, 16 Nov 2008 23:59:59 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Weekly Twitter Digests]]></category>

		<category><![CDATA[tweets]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/2008/11/16/twitter-updates-for-2008-11-16-42/</guid>
		<description>James is OK so far. (10/11/2008 08:59:02)
James thinks your right click disabler is STUPID, get rid of it. (10/11/2008 11:50:29)
James has another scan tomorrow at 9am&amp;#8230; (10/11/2008 17:00:09)
James is watching Anathema. (10/11/2008 21:51:14)
James wonders what will become of tonight. (11/11/2008 00:08:52)
James is up at stupid o&amp;#8217;clock in the morning for this bloody scan&amp;#8230; argh (11/11/2008 [...]</description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>James is OK so far. <span style="italic;">(10/11/2008 08:59:02)</span></li>
<li>James thinks your right click disabler is STUPID, get rid of it. <span style="italic;">(10/11/2008 11:50:29)</span></li>
<li>James has another scan tomorrow at 9am&#8230; <span style="italic;">(10/11/2008 17:00:09)</span></li>
<li>James is watching Anathema. <span style="italic;">(10/11/2008 21:51:14)</span></li>
<li>James wonders what will become of tonight. <span style="italic;">(11/11/2008 00:08:52)</span></li>
<li>James is up at stupid o&#8217;clock in the morning for this bloody scan&#8230; argh <span style="italic;">(11/11/2008 07:16:18)</span></li>
<li>James is waiting&#8230; Bleh. <span style="italic;">(11/11/2008 09:03:17)</span></li>
<li>James saw his lovely baby in mummy&#8217;s tummy this morning. <span style="italic;">(11/11/2008 11:21:35)</span></li>
<li>James is going to have to start thinking of girls names! <span style="italic;">(11/11/2008 11:51:30)</span></li>
<li>James can&#8217;t seem to get to his blog&#8230; *looks at Kelvin*&#8230; <span style="italic;">(11/11/2008 17:11:42)</span></li>
<li>James has done the shopping and is dead. <span style="italic;">(11/11/2008 18:55:02)</span></li>
<li>James will give 10 points to those who can spot what I changed on my blog design&#8230; <span style="italic;">(12/11/2008 09:10:57)</span></li>
<li>James won&#8217;t be short of work any time soon. <span style="italic;">(12/11/2008 10:17:08)</span></li>
<li>James is frickin&#8217; cold! <span style="italic;">(12/11/2008 10:32:09)</span></li>
<li>James is frickin&#8217; cold again! Argh. <span style="italic;">(12/11/2008 13:07:31)</span></li>
<li>James is knackered and still loads of work to do. <span style="italic;">(12/11/2008 16:08:12)</span></li>
<li>James is applicable. <span style="italic;">(13/11/2008 09:19:49)</span></li>
<li>James is surprised it&#8217;s hot in the office for once! <span style="italic;">(13/11/2008 15:06:42)</span></li>
<li>James will be playing documentation catch-up tomorrow. <span style="italic;">(13/11/2008 17:25:46)</span></li>
<li>James has cooked too much lasagne for tonight. <span style="italic;">(14/11/2008 12:38:02)</span></li>
<li>James found out that Sii orgasms when he poos. <span style="italic;">(14/11/2008 14:31:36)</span></li>
<li>James is celebrating 1 year with gorgeous Hannah! <span style="italic;">(15/11/2008 10:33:32)</span></li>
</ul>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=bIgCwml7"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=tUJxFKYn"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=tUJxFKYn" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=AUeDZkAC"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=rWJdy8UL"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=rWJdy8UL" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ZAz7ukfv"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=ZAz7ukfv" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=7ekht06G"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=mXxiLzwq"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/6dZ6N9kcf_0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/16/twitter-updates-for-2008-11-16-42/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/16/twitter-updates-for-2008-11-16-42/</feedburner:origLink></item>
		<item>
		<title>stdClass is NOT the PHP Base Class!!!</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/xRKdi1Q1bVU/</link>
		<comments>http://www.asgrim.com/2008/11/14/stdclass-is-not-the-php-base-class/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 10:20:08 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[base class]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[stdClass]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=999</guid>
		<description>I posted this a few days ago, inspired by David Otton&amp;#8217;s post on this topic. A chap called Will commented about it, and after doing a quick Google, I got angry and realised how* many people are misinformed that stdClass is the base PHP class for everything.
As of the latest stable release of PHP, this [...]</description>
			<content:encoded><![CDATA[<p>I posted <a href="http://www.asgrim.com/2008/11/11/php-base-classes/">this</a> a few days ago, inspired by <a href="http://www.otton.org/2008/11/11/php-base-class-stdclass/">David Otton&#8217;s post</a> on this topic. A chap called Will commented about it, and after doing a quick Google, I got angry and realised <a href="http://forum.mamboserver.com/showpost.php?p=184616&#038;postcount=7">how</a>* <a href="http://uk3.php.net/oop#77374">many</a> <a href="http://drupal.org/node/235522#comment-773235">people</a> are misinformed that <strong>stdClass</strong> is the base PHP class for everything.</p>
<p>As of the latest stable release of PHP, <em>this is not the case</em>. And it bugs me when people say &#8220;stdClass is the base class of everything in PHP&#8221;. stdClass is actually just a basic object with no methods or properties that you can use however you wish. A common use is to create a quick on-the-fly object, e.g.:</p>

<div class="wp_syntax"><div class="code"><pre class="php php" style="font-family:monospace;"><span style="color: #000088;">$obj</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> stdClass<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000088;">$obj</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Name</span> <span style="color: #339933;">=</span> <span style="">'foobar'</span>;
<span style="color: #000088;">$obj</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Id</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">24</span>;
&nbsp;
<span style="color: #000088;">$json</span> <span style="color: #339933;">=</span> json_encode<span style="color: #009900;">&#40;</span><span style="color: #000088;">$obj</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>As you can see, $obj in this context is throwaway and is just used and forgotten about. I&#8217;ll re-iterate what <a href="http://www.otton.org/">David Otton</a> says about it, and is quick and simple proof:</p>
<blockquote>

<div class="wp_syntax"><div class="code"><pre class="php php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> DoesNotExtend <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">class</span> DoesExtend <span style="color: #000000; font-weight: bold;">extends</span> stdClass <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span>;
&nbsp;
<span style="color: #000088;">$doesNotExtend</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> DoesNotExtend<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000088;">$doesExtend</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> DoesExtend<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #990000;">var_dump</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$doesNotExtend</span> instanceof stdClass<span style="color: #009900;">&#41;</span>;
<span style="color: #990000;">var_dump</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$doesExtend</span> instanceof stdClass<span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>Outputs:</p>
<p>bool(false)<br />
bool(true)
</p></blockquote>
<p>So please, when someone asks &#8220;what is stdClass&#8221; etc., don&#8217;t say &#8220;Oh, it&#8217;s the base class for all objects&#8221;, because it <em>bloody well isn&#8217;t</em>.</p>
<p><small>* Jaxxed seems to be slightly more well-informed, but that post was back in 2005. Since then, PHP 5 has come out, and classes are implemented much better. He&#8217;s still wrong though, it&#8217;s not the base class.</small></p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Gb0C2VhC"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ZFdzsKlV"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=ZFdzsKlV" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=XfuwwxXw"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=PnHpk39o"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=PnHpk39o" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ypqSYsbT"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=ypqSYsbT" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=YPJZJAZS"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=aDvxwQaL"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/xRKdi1Q1bVU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/14/stdclass-is-not-the-php-base-class/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/14/stdclass-is-not-the-php-base-class/</feedburner:origLink></item>
		<item>
		<title>PHP Base Classes</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/eumLRETkk9Y/</link>
		<comments>http://www.asgrim.com/2008/11/11/php-base-classes/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 19:25:52 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[base]]></category>

		<category><![CDATA[classes]]></category>

		<category><![CDATA[delphi]]></category>

		<category><![CDATA[extends]]></category>

		<category><![CDATA[inherit]]></category>

		<category><![CDATA[inheritance]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[MVC]]></category>

		<category><![CDATA[object]]></category>

		<category><![CDATA[oop]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[stdClass]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=990</guid>
		<description>As David Otton points out, PHP is different from most other OO languages such as Java, or even Delphi, in the fact that most languages have a base class that all other classes inherit. Indeed, stdClass is not the base class for everything - it is in fact just a backup in case PHP doesn&amp;#8217;t [...]</description>
			<content:encoded><![CDATA[<p>As David Otton <a href="http://www.otton.org/2008/11/11/php-base-class-stdclass/">points out</a>, PHP is different from most other OO languages such as Java, or even Delphi, in the fact that most languages have a base class that all other classes inherit. Indeed, stdClass is not the base class for everything - it is in fact just a backup in case PHP doesn&#8217;t really know what class it is - it&#8217;s basically just a generic class.</p>
<p>After having used Netbasic&#8217;s custom MVC for several months now, which has a base class, I believe there can be merits, especially in a framework situation, to extending a base class such as <strong>Object</strong> throughout all classes. You can add things like debug code into Object, and it propogates through into all child objects. It&#8217;s sometimes a good idea to take this ethic further, such as in .NET, classes are arranged from parent to child according to how specific their function is&#8230; i.e.</p>
<ul>
<li>Object - base object</li>
<li>Control - a generic control</li>
<li>WebControl - a generic web-based control</li>
<li>BaseDataBoundControl</li>
<li>DataBoundControl</li>
<li>ListView - the list view object</li>
</ul>
<p>I suppose how your classes are structured should be dictated primarily on what your application requires, and secondly on how you like them structured&#8230; it&#8217;s preference at the end of the day!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=ekgDesAc"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=LNp6Kqh1"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=LNp6Kqh1" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=H2Ep8UDe"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=qTUr2OBn"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=qTUr2OBn" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=DubNsNA4"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=DubNsNA4" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=UANWvZkr"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=1EkCEdXi"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/eumLRETkk9Y" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/11/php-base-classes/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/11/php-base-classes/</feedburner:origLink></item>
		<item>
		<title>Web Developers in Hampshire</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/UTNhVOz781c/</link>
		<comments>http://www.asgrim.com/2008/11/11/web-developers-in-hampshire/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 19:12:09 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[david otton]]></category>

		<category><![CDATA[developers]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Portsmouth]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=988</guid>
		<description>A guy called David Otton contacted me today with regards to a list he&amp;#8217;s got of PHP Developers in Portsmouth. It&amp;#8217;s kind of wierd that I made it onto the list of this sorts, but I suppose thats what I am - a PHP developer&amp;#8230; in the Portsmouth area&amp;#8230; I suppose I just didn&amp;#8217;t expect [...]</description>
			<content:encoded><![CDATA[<p>A guy called <a href="http://www.otton.org/">David Otton</a> contacted me today with regards to a list he&#8217;s got of <a href="http://www.otton.org/2008/11/11/web-developers-portsmouth-southampton-hampshire/">PHP Developers in Portsmouth</a>. It&#8217;s kind of wierd that I made it onto the list of this sorts, but I suppose thats what I am - a PHP developer&#8230; in the Portsmouth area&#8230; I suppose I just didn&#8217;t expect anyone to read this blog. I know not many people do, but I&#8217;m not in it for fame and fortune&#8230; just to write stuff down I suppose. Anyway, check out the list, there&#8217;s some interesting sites there.</p>
<p><code><div class="outlineRoot"><ul class="main" id="optimal-49341bbdecb76">
    <li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2408109');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2408109" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgExpanded.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span>Hampshire Web Developers</span><ul id="oi-id2408109" class="outlineList depth1" style="display:block;">
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2408126', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fblog.durdle.com%2Ffeed%2Fatom&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2408126" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://blog.durdle.com/feed/atom"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://blog.durdle.com/">Howard Durdle</a></span><ul id="oi-id2408126" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2410318', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fandyjarrett&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2410318" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://feeds.feedburner.com/andyjarrett"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.andyjarrett.co.uk/andy/blog/index.cfm">Andy Jarrett</a></span><ul id="oi-id2410318" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2410723', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FEddyYoung&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2410723" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://feeds.feedburner.com/EddyYoung"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://priscimon.com/blog">Eddy Young</a></span><ul id="oi-id2410723" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2410971', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fjaspertandy&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2410971" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://feeds.feedburner.com/jaspertandy"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://echohelloworld.com/">Jasper Tandy</a></span><ul id="oi-id2410971" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2409767', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fmacdan.net%2F%3Ffeed%3Datom&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2409767" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://macdan.net/?feed=atom"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://macdan.net/">Daniel Kendell</a></span><ul id="oi-id2409767" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411481', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frich.saekang.co.uk%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411481" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://rich.saekang.co.uk/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://rich.saekang.co.uk/">Rich Sae Kang</a></span><ul id="oi-id2411481" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2413652', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.asgrim.com%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2413652" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.asgrim.com/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.asgrim.com/">James Titcumb</a></span><ul id="oi-id2413652" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411276', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.dazecoop.co.uk%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411276" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.dazecoop.co.uk/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.dazecoop.co.uk/">David Cooper</a></span><ul id="oi-id2411276" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411294', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.mallmusmedia.com%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411294" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.mallmusmedia.com/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.mallmusmedia.com/feed">Adam Wintle</a></span><ul id="oi-id2411294" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411308', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.otton.org%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411308" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.otton.org/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.otton.org/">David Otton</a></span><ul id="oi-id2411308" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411323', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.yetanotherblog.com%2Ffeed&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411323" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.yetanotherblog.com/feed"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.yetanotherblog.com/">Sven Latham</a></span><ul id="oi-id2411323" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411337', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fblog.mauveweb.co.uk%2Ffeed%2F&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411337" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://blog.mauveweb.co.uk/feed/"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://blog.mauveweb.co.uk/">Daniel Pope</a></span><ul id="oi-id2411337" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411351', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Fwww.velcro-city.co.uk%2Ffeed%2Fatom%2F&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411351" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://www.velcro-city.co.uk/feed/atom/"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.velcro-city.co.uk/">Paul Graham Raven</a></span><ul id="oi-id2411351" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
<li class="outlineItemNode">
<span onclick="optimalToggleNode('oi-id2411367', 'true', 'http://www.asgrim.com/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FCoderchriscom&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id2411367" src="http://www.asgrim.com/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"></span><span><a href="http://feeds.feedburner.com/Coderchriscom"><img src="http://www.asgrim.com/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"></a><a href="http://www.coderchris.com/">Chris Dean</a></span><ul id="oi-id2411367" class="outlineList depth2" style="display:none;"><li class="outlineItemNodeSub">
<img src="http://www.asgrim.com/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt="">Loading....</li></ul>
</li>
</ul>
</li>
  </ul></div>

<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Zh4zsZ1Q"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=InfULhK8"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=InfULhK8" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=AfaWPZx4"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=9KQOLnCH"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=9KQOLnCH" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=kycYO8UA"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=kycYO8UA" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=gyeYyr5p"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=rCdPbZjw"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/UTNhVOz781c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/11/web-developers-in-hampshire/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/11/web-developers-in-hampshire/</feedburner:origLink></item>
		<item>
		<title>The Spawn of.. Me!</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/EiLXAYfHOwA/</link>
		<comments>http://www.asgrim.com/2008/11/11/the-spawn-of-me/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 11:47:18 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Our Baby]]></category>

		<category><![CDATA[baby]]></category>

		<category><![CDATA[hannah]]></category>

		<category><![CDATA[placenta]]></category>

		<category><![CDATA[pregnancy]]></category>

		<category><![CDATA[scan]]></category>

		<category><![CDATA[ultrasound]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=984</guid>
		<description>A couple of what seems like days - in reality weeks - ago, I posted announcing our pregnancy, and here we are already at 20 weeks and 1 day. As shown here, he&amp;#8217;s still there growing all the time, kicking Hannah whenever he wants&amp;#8230; and just generally making her tired.
For those unable to really [...]</description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-985" href="http://www.asgrim.com/2008/11/11/the-spawn-of-me/2008-11-11102231/"><img class="alignleft size-medium wp-image-985" title="Baby - 20+1" src="http://www.asgrim.com/wp-content/uploads/2008/11/2008-11-11102231.jpeg" alt="" width="400" height="296" /></a> A couple of what seems like days - in reality weeks - ago, I posted announcing our pregnancy, and here we are already at 20 weeks and 1 day. As shown here, he&#8217;s still there growing all the time, kicking Hannah whenever he wants&#8230; and just generally making her tired.</p>
<p>For those unable to really understand these ultrasound scan jobbies, the head is on the left facing the screen, and the larger right hand blob is the upper torso. The whiter line at the bottom, and the tiny little paw-print looking thing is it&#8217;s hand.</p>
<p>This photo is actually from the second scan over 2 days - we had a regular 20 week scan yesterday, and the sonographist spotted that the kidneys were slightly larger than normal. We doubt it will be anything major, but we were referred to a consultant we saw this morning to check the scan in more detail. The placenta is a bit low, so we&#8217;ll be having a 32 week scan, and possibly even a 36 week scan as well&#8230; we&#8217;ll see.</p>
<p>The other thing we got from the scan is our initial suspicion that it&#8217;s a boy may indeed be wrong - neither the sonographer yesterday or the consultant today could find any winkies, and today it was in a very good position for checking. The rather annoying thing about that is that we&#8217;ll have to think of a girls name (on which we have still not agreed, and probably never will, heh!). Freya is a name we both seem to like at the moment&#8230; but we shall see!</p>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=DAiZsbwt"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=AgZJiMNM"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=AgZJiMNM" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=74t2MGwK"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=fSeFLwv1"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=fSeFLwv1" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=NKqii4Sp"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=NKqii4Sp" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=meMDD3f8"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=C0amPhVw"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/EiLXAYfHOwA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/11/the-spawn-of-me/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/11/the-spawn-of-me/</feedburner:origLink></item>
		<item>
		<title>Twitter Updates for 2008-11-09</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/BgYLh_MLK4o/</link>
		<comments>http://www.asgrim.com/2008/11/09/twitter-updates-for-2008-11-09/#comments</comments>
		<pubDate>Sun, 09 Nov 2008 23:59:59 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Weekly Twitter Digests]]></category>

		<category><![CDATA[tweets]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/2008/11/09/twitter-updates-for-2008-11-09/</guid>
		<description>James wonders why we celebrate a terrorism event on Nov 5th&amp;#8230; (02/11/2008 09:25:52)
James should really have a shower and brush his hair&amp;#8230; meh! (02/11/2008 09:27:00)
James has been busy moving his computer desk to start clearing the spare bedroom for the arrival of baby! (02/11/2008 16:41:11)
James wonders why his ports ain&amp;#8217;t forwarded. (03/11/2008 09:07:33)
James is 19 [...]</description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>James wonders why we celebrate a terrorism event on Nov 5th&#8230; <span style="italic;">(02/11/2008 09:25:52)</span></li>
<li>James should really have a shower and brush his hair&#8230; meh! <span style="italic;">(02/11/2008 09:27:00)</span></li>
<li>James has been busy moving his computer desk to start clearing the spare bedroom for the arrival of baby! <span style="italic;">(02/11/2008 16:41:11)</span></li>
<li>James wonders why his ports ain&#8217;t forwarded. <span style="italic;">(03/11/2008 09:07:33)</span></li>
<li>James is 19 weeks today. <span style="italic;">(03/11/2008 09:21:05)</span></li>
<li>James is going to fall asleep in a minute&#8230; <span style="italic;">(03/11/2008 15:56:40)</span></li>
<li>James is getting all the pub quiz answers wrong. <span style="italic;">(03/11/2008 21:42:57)</span></li>
<li>James has ALL the Munchkin Booty! <span style="italic;">(04/11/2008 09:20:17)</span></li>
<li>James thinks Selenium IDE is fun&#8230; <span style="italic;">(04/11/2008 14:49:02)</span></li>
<li>James is off for dinners now, wooties. <span style="italic;">(04/11/2008 17:34:36)</span></li>
<li>James wants to know if anyone wants Damnation tickets, contact me ASAP! <span style="italic;">(04/11/2008 21:23:57)</span></li>
<li>James isn&#8217;t going to Damnation any more. <span style="italic;">(04/11/2008 22:06:37)</span></li>
<li>James is getting on with the reporting malarkey. <span style="italic;">(05/11/2008 09:07:11)</span></li>
<li>James is going to start writing the first of the 4 big queries&#8230; argh. <span style="italic;">(05/11/2008 15:16:16)</span></li>
<li>James has done the dishes, clothes, vacuuming and had dinner, all the same night! Now for a shower&#8230; <span style="italic;">(05/11/2008 20:52:19)</span></li>
<li>James wants to check out Intrepid Ibex. <span style="italic;">(06/11/2008 09:12:37)</span></li>
<li>James is getting organised early for Christmas this year! <span style="italic;">(06/11/2008 12:59:40)</span></li>
<li>James wishes money grew on trees. <span style="italic;">(06/11/2008 20:54:13)</span></li>
<li>James is going to Stoke tonight - long drive ftl. <span style="italic;">(07/11/2008 09:55:26)</span></li>
<li>James is arrived in Stoke very tired. Off to bed! <span style="italic;">(07/11/2008 23:33:16)</span></li>
<li>James thinks the X Factor result was rubbish. Neither should&#8217;ve been in the bottom two. <span style="italic;">(08/11/2008 22:21:00)</span></li>
</ul>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=c9vz2x5R"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=CXulGhgm"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=CXulGhgm" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=dz4Vw4Ry"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=2OiSNe0I"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=2OiSNe0I" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=1gpu2B2i"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=1gpu2B2i" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=OwGtHhio"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=8Pj6X0Jx"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/BgYLh_MLK4o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/09/twitter-updates-for-2008-11-09/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/09/twitter-updates-for-2008-11-09/</feedburner:origLink></item>
		<item>
		<title>Twitter Updates for 2008-11-02</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/AMRRr8HgGmY/</link>
		<comments>http://www.asgrim.com/2008/11/02/twitter-updates-for-2008-11-02/#comments</comments>
		<pubDate>Sun, 02 Nov 2008 23:59:59 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Weekly Twitter Digests]]></category>

		<category><![CDATA[tweets]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/2008/11/02/twitter-updates-for-2008-11-02/</guid>
		<description>James hopes Sii has done/is doing well in his run! (26/10/2008 13:14:23)
James is 18 weeks today. (27/10/2008 09:31:52)
James is impressed how well Protected is doing this morning&amp;#8230; 1000% CTA! (27/10/2008 11:24:05)
James doesn&amp;#8217;t think Hannah would make a good programmer. (27/10/2008 12:43:11)
James is in lyric writing mode&amp;#8230; words. (27/10/2008 23:34:23)
James has a burning tummy. (28/10/2008 09:54:14)
James [...]</description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>James hopes Sii has done/is doing well in his run! <span style="italic;">(26/10/2008 13:14:23)</span></li>
<li>James is 18 weeks today. <span style="italic;">(27/10/2008 09:31:52)</span></li>
<li>James is impressed how well Protected is doing this morning&#8230; 1000% CTA! <span style="italic;">(27/10/2008 11:24:05)</span></li>
<li>James doesn&#8217;t think Hannah would make a good programmer. <span style="italic;">(27/10/2008 12:43:11)</span></li>
<li>James is in lyric writing mode&#8230; words. <span style="italic;">(27/10/2008 23:34:23)</span></li>
<li>James has a burning tummy. <span style="italic;">(28/10/2008 09:54:14)</span></li>
<li>James is kicking some CSV ass. <span style="italic;">(28/10/2008 11:01:37)</span></li>
<li>James is going to do some kick ass sonic booming. <span style="italic;">(28/10/2008 17:35:44)</span></li>
<li>James is confused about the clumps of snow on Leafy Lane&#8230; <span style="italic;">(29/10/2008 09:06:43)</span></li>
<li>James wants Ezkaton, the new Behemoth EP! <span style="italic;">(29/10/2008 09:14:43)</span></li>
<li>James doesn&#8217;t think his computer is running normally. <span style="italic;">(29/10/2008 11:21:22)</span></li>
<li>James wonders what the PHP developers were thinking (or drinking&#8230;) <span style="italic;">(29/10/2008 16:05:37)</span></li>
<li>James hopes Chris will be able to get into his house! <span style="italic;">(29/10/2008 17:03:21)</span></li>
<li>James is about to watch Saw V, woot! <span style="italic;">(29/10/2008 20:22:12)</span></li>
<li>James enjoyed Saw V, it was quite pleasant really. <span style="italic;">(30/10/2008 09:03:25)</span></li>
<li>James doesn&#8217;t know what to get Hannah for Yuletide. <span style="italic;">(30/10/2008 18:29:35)</span></li>
<li>James is happy it&#8217;s the Friday day. <span style="italic;">(31/10/2008 09:18:38)</span></li>
<li>James is going to look after poorly Hannah tonight. <span style="italic;">(31/10/2008 18:11:34)</span></li>
<li>James doesn&#8217;t like the assistant manager in the Orange shop in Pompey. <span style="italic;">(01/11/2008 15:09:51)</span></li>
<li>James is babysitting his nephew&#8230; Practicing already! <span style="italic;">(01/11/2008 18:51:43)</span></li>
</ul>
<div class="feedflare">
<a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Wbe0T6qI"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=41" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=85rsOFmm"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=85rsOFmm" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=wojrqitP"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=52" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=cd4tHpA9"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=cd4tHpA9" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=x3NArgsJ"><img src="http://feedproxy.google.com/~f/asgrimthemighty?i=x3NArgsJ" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=z8w51Ioo"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=43" border="0"></img></a> <a href="http://feedproxy.google.com/~f/asgrimthemighty?a=Iw4koeOk"><img src="http://feedproxy.google.com/~f/asgrimthemighty?d=54" border="0"></img></a>
</div><img src="http://feedproxy.google.com/~r/asgrimthemighty/~4/AMRRr8HgGmY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.asgrim.com/2008/11/02/twitter-updates-for-2008-11-02/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.asgrim.com/2008/11/02/twitter-updates-for-2008-11-02/</feedburner:origLink></item>
		<item>
		<title>Namespaces in PHP</title>
		<link>http://feedproxy.google.com/~r/asgrimthemighty/~3/RzAJi74hIYI/</link>
		<comments>http://www.asgrim.com/2008/10/29/namespaces-in-php/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 15:53:10 +0000</pubDate>
		<dc:creator>James</dc:creator>
		
		<category><![CDATA[Web@Home]]></category>

		<category><![CDATA[Web@Work]]></category>

		<category><![CDATA[classes]]></category>

		<category><![CDATA[namespace]]></category>

		<category><![CDATA[namespaces]]></category>

		<category><![CDATA[oop]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[php5]]></category>

		<category><![CDATA[seperator]]></category>

		<guid isPermaLink="false">http://www.asgrim.com/?p=960</guid>
		<description>As this message states, the new seperator for namespaces in PHP will be a backslash (\). I&amp;#8217;ve had a brief skim over the IRC log the message mentions, and the conversation is indeed interesting. Personally, having been converted to a full OOP PHP programmer, I would&amp;#8217;ve voted for namespaces only in classes (as classes are [...]</description>
			<content:encoded><![CDATA[<p>As <a href="http://news.php.net/php.internals/41374">this message</a> states, the new seperator for namespaces in PHP will be a backslash (\). I&#8217;ve had a brief skim over the IRC log the message mentions, and the conversation is indeed interesting. Personally, having been converted to a full OOP PHP programmer, I would&#8217;ve voted for namespaces only in classes (as classes are all I ever use nowadays&#8230;).</p>
<p>Evidently there are too many problems using the <a href="http://www.asgrim.com/2008/04/17/paamayim-nekudotayim/">Paamayim Nekudotayim</a> due to scope, and static classes and whatnot, but I don&#8217;t understand why when <em>real</em> programming languages such as C++ manage it fine. I have to agree with &#8220;dmitry&#8221;, I think using a backslash is ugly, and double colon is much cleaner.</p>
<p>What does this mean for the PHP community? Well anyone currently using namespaces will have to fix their code, and anyone not using namespaces will have to get used to using the backslash separator. Of course this change is going to ruffle a fair few feathers - people will wonder what on earth possessed them to use the backslash instead of double colon when backslashes are so ugly, and double colon is so&#8230; well&#8230; standard I suppose.</p>
<p>As <a href="http://developers.slashdot.org/comments.pl?sid=1008291&amp;cid=25518825">this Slashdot post</a> shows:</p>
<ul>
<li>Perl</li>
</ul>

<div class="wp_syntax"><div class="code"><pre class="perl perl" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">use</span> My<span style="color: #339933;">::</span><span style="color: #006600;">CPAN</span><span style="color: #339933;">::</span><span style="color: #006600;">Module</span> <span style="color: #000066;">qw</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$instance</span> <span style="color: #339933;">=</span> My<span style="color: #339933;">::</span><span style="color: #006600;">CPAN</span><span style="color: #339933;">::</span><span style="color: #006600;">Module</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">new</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;junk&quot;</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<ul>
<li>C#</li>
</ul>

<div class="wp_syntax"><div class="code"><pre class="csharp csharp" style="font-family:monospace;"><span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Listbox</span> box <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Listbox</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
<span style="color: #008080; font-style: italic;">// or</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Windows.Controls</span>;
ListBox box <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> ListBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;</pre></div></div>

<ul>
<li>C++</li>
</ul>

<div class="wp_syntax"><div class="code"><pre class="cpp cpp" style="font-family:monospace;">ABC<span style="color: #008080;">::</span><span style="color: #007788;">bar</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>;
<span style="color: #666666;">// or</span>
<span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> ABC;
bar<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>;</pre></div></div>

<ul>
<li>The New PHP</li>
</ul>

<div class="wp_syntax"><div class="code"><pre class="php php" style="font-family:monospace;"><span style="color: #000088;">$object_instance</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> My\PEAR\Module<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;myvar&quot;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #666666; font-style: italic;">// or</span>
using My\Pear;
<span style="color: #000088;">$object_instance</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Module<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;myvar&quot;</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>I doubt people will stop using PHP though. I expect people will either <em>not</em> use namespaces (explicitly anyway - technically they&#8217;d just be writing in the global namespace), or get used to it. But then, one must think - what if there is a big backlash against this cha