<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">

<channel>
	<title>Planet Linode</title>
	<link>http://planet.linode.com/</link>
	<language>en</language>
	<description>Planet Linode - http://planet.linode.com/</description>

<item>
	<title>Mmm, Tasty!: The Great Falafel-off!</title>
	<guid>http://www.mmmtasty.ca/?p=100</guid>
	<link>http://www.mmmtasty.ca/2008/07/04/the-great-falafel-off/</link>
	<description>&lt;p&gt;Recently I wrote an &lt;a href=&quot;http://www.foodtv.ca/BLOG/blogs/shopping/archive/2008/06/13/guest-blogger-the-falafel-face-off.aspx&quot;&gt;article for foodtv.ca&lt;/a&gt; about falafel here in Toronto.  I thought I&amp;#8217;d post something here as well, especially since we&amp;#8217;ve been back to both of these places since the article was published.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m a big fan of falafel.  Growing up in the Maritimes, I wasn&amp;#8217;t really exposed to it until I moved to Ottawa; the small community I grew up in didn&amp;#8217;t have much of a Middle Eastern population.  But once I had my first falafel, I had to have more!&lt;/p&gt;
&lt;p&gt;A good falafel sandwich to me is really simple: lightly spiced falafel balls that are freshly made, good pita, a bit of lettuce and tomato, and tahini sauce.  A bit of pickled turnip is a nice addition, but not necessary. Other toppings? No way. This isn&amp;#8217;t a Subway sandwich, it&amp;#8217;s a falafel!&lt;/p&gt;
&lt;p&gt;The Annex area of Toronto has a lot of falafel and shawarma shops.  I chose to visit two: Ghazale and Laila.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;Ghazale's falafel sandwich by nyxie, on Flickr&quot; href=&quot;http://www.flickr.com/photos/nyxie/2539271345/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2301/2539271345_bf407e8d9c_m.jpg&quot; alt=&quot;Ghazale's falafel sandwich&quot; hspace=&quot;5&quot; width=&quot;240&quot; height=&quot;180&quot; align=&quot;left&quot; /&gt;&lt;/a&gt;The smell from Ghazale is enough to make you salivate, and it tends to waft down the street at all hours of the day.  Here their falafel isn&amp;#8217;t freshly made to order - it&amp;#8217;s reheated in the microwave.  However, the rest of their sandwich is pretty solid - good pita, nice sauce, and no weird toppings.  They also have some great side dishes to go with your sandwich, should you want a little something.  Rich and I tried their lima beans, which are pretty good. Service here is fine, if a bit haphazard - with the store being so small, it can be difficult to tell who is in line for ordering, who has already ordered, and who is just waiting for a friend to finish up.  A little assertiveness usually solves that problem nicely.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;Laila's falafel sandwich by nyxie, on Flickr&quot; href=&quot;http://www.flickr.com/photos/nyxie/2539271203/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3105/2539271203_682ab546a3_m.jpg&quot; alt=&quot;Laila's falafel sandwich&quot; width=&quot;240&quot; height=&quot;180&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;The falafel at Laila is better than that at Ghazale - it&amp;#8217;s made to order and has a lovely spiciness to it.  It comes piping hot from the fryer with the usual toppings, plus you can request a sprinkle of their hot seasoning mix.  There are less sides to choose from at Laila - here it&amp;#8217;s mostly about the sandwiches.  Another nice bonus is the available seating with tables for about 30 people or so available at the back.  And the service?  It&amp;#8217;s been great on one visit and just ok on another.  Nothing to make me not want to go back, but as with most service jobs, things change depending on who is working the counter.  Our last visit was a bit disorganized, with people getting their food out-of-turn and some orders being given to the wrong people. It seemed like perhaps they were understaffed, or there was a new person working that evening.&lt;/p&gt;
&lt;p&gt;We&amp;#8217;ll actually continue to go to both places, depending on our mood.  However, I&amp;#8217;m looking forward to trying some other falafel places in the city!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.hyperadvantage.com/laila&quot; target=&quot;_blank&quot;&gt;Laila&lt;/a&gt;: 553 Bloor St. W, Toronto, ON, (416) 588-0199&lt;br /&gt;
&lt;a href=&quot;http://www.ghazale.ca/&quot; target=&quot;_blank&quot;&gt;Ghazale&lt;/a&gt;: 504 Bloor St. W, Toronto, ON, (416) 537-4417&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 21:39:40 +0000</pubDate>
</item>
<item>
	<title>In Photos: Electronic waste in the countryside</title>
	<guid>http://inphotos.org/?p=2494</guid>
	<link>http://inphotos.org/electronic-waste-in-the-countryside/</link>
	<description>&lt;div align=&quot;center&quot;&gt;&lt;img src=&quot;http://inphotos.org/wp-content/uploads/2008/07/electronic-waste-in-the-countryside.jpg&quot; alt=&quot;Electronic waste in the countryside&quot; title=&quot;Electronic waste in the countryside&quot; width=&quot;471&quot; height=&quot;725&quot; class=&quot;alignnone size-full wp-image-2495&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Last February we spent a weekend in Bantry where I made a couple of very nice shots when I &lt;a href=&quot;http://inphotos.org/the-rolling-hills-of-bantry/&quot;&gt;drove into the hills&lt;/a&gt; surrounding the town. The area was so nice that I wandered up the road on foot a few yards for a better shot of this lone tree. I was disgusted to see the beige boxes of a PC and monitor lying half hidden in the tall grass of the bog.&lt;/p&gt;
&lt;p&gt;Perhaps I should have climbed down and retrieved them but Adam was asleep in the car and we were miles from anywhere. I didn&amp;#8217;t want to risk slipping and hurting myself. It&amp;#8217;s such a shame those electronics weren&amp;#8217;t recycled at the local dump. I wonder what Gardai would find if they looked at the drive in that PC. I wonder if they&amp;#8217;d care?&lt;/p&gt;
&lt;p&gt;Tomorrow - AJ tried booking Robodock tickets for himself &lt;a href=&quot;http://twitter.com/ajmckee/statuses/850279233&quot;&gt;but could only book for the 12 noon show&lt;/a&gt;. I thought we could pay at the entrance but obviously it&amp;#8217;s popular and booked up. Maybe the bad weather will keep people away but I should be there before 3pm! Keep an eye on &lt;a href=&quot;http://twitter.com/donncha/&quot;&gt;my Twitter account&lt;/a&gt; for updates!&lt;/p&gt;
&lt;p&gt;Must pack WordPress stickers and badges, stickers and badges, stickers and badges&amp;#8230;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://inphotos.org/?voyeur=1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Related Posts&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/rushing-through-countryside/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Rushing through countryside&quot;&gt;Rushing through countryside&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/this-is-poisoning-my-son/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: This is poisoning my son&quot;&gt;This is poisoning my son&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/a-view-on-an-alcatraz-street/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: A view on an Alcatraz Street&quot;&gt;A view on an Alcatraz Street&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;
	Tags: &lt;a href=&quot;http://inphotos.org/tag/bantry/&quot; title=&quot;Bantry&quot; rel=&quot;tag&quot;&gt;Bantry&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/beige-box/&quot; title=&quot;beige box&quot; rel=&quot;tag&quot;&gt;beige box&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/bog/&quot; title=&quot;bog&quot; rel=&quot;tag&quot;&gt;bog&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/canon-10-22/&quot; title=&quot;Canon 10-22&quot; rel=&quot;tag&quot;&gt;Canon 10-22&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/canon-20d/&quot; title=&quot;Canon 20D&quot; rel=&quot;tag&quot;&gt;Canon 20D&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork/&quot; title=&quot;Cork&quot; rel=&quot;tag&quot;&gt;Cork&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork-photos/&quot; title=&quot;Cork Photos&quot; rel=&quot;tag&quot;&gt;Cork Photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/electronic-waste/&quot; title=&quot;electronic waste&quot; rel=&quot;tag&quot;&gt;electronic waste&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/ewaste/&quot; title=&quot;ewaste&quot; rel=&quot;tag&quot;&gt;ewaste&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/grass/&quot; title=&quot;grass&quot; rel=&quot;tag&quot;&gt;grass&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/ireland/&quot; title=&quot;Ireland&quot; rel=&quot;tag&quot;&gt;Ireland&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irish-photos/&quot; title=&quot;Irish photos&quot; rel=&quot;tag&quot;&gt;Irish photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irishblogs/&quot; title=&quot;irishblogs&quot; rel=&quot;tag&quot;&gt;irishblogs&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/nature/&quot; title=&quot;Nature&quot; rel=&quot;tag&quot;&gt;Nature&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/photos/&quot; title=&quot;Photos&quot; rel=&quot;tag&quot;&gt;Photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/tree/&quot; title=&quot;tree&quot; rel=&quot;tag&quot;&gt;tree&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/twitter/&quot; title=&quot;Twitter&quot; rel=&quot;tag&quot;&gt;Twitter&lt;/a&gt;&lt;br /&gt;</description>
	<pubDate>Fri, 04 Jul 2008 20:38:16 +0000</pubDate>
</item>
<item>
	<title>Simon Rumble: Blank Reg</title>
	<guid>http://www.rumble.net/blog/Blank_Reg</guid>
	<link>http://www.rumble.net/blog/index.cgi/weird/Blank_Reg.html</link>
	<description>&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.maxheadroom.com/mh_episode_16.html&quot;&gt;&lt;img src=&quot;http://rumble.smugmug.com/photos/325129932_dZbch-O.jpg&quot; alt=&quot;Blank Reg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I love the fact that the &lt;a href=&quot;http://www.abc.net.au/news/stories/2008/07/04/2294630.htm&quot;&gt;Secretary
of the New South Wales Council for Civil Liberties is named Stephen
&lt;i&gt;Blanks&lt;/i&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It just goes to show that Max Headroom really was a documentary
showing the world &lt;a href=&quot;http://www.maxheadroom.com/mh_episode_16.html&quot;&gt;twenty minutes
into the fu-fu-future&lt;/a&gt;.&lt;/p&gt;&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.rumble.net/contact/&quot;&gt;Contact me&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 17:12:12 +0000</pubDate>
</item>
<item>
	<title>Caffeinated: Coffee, Donuts, and JavaScript</title>
	<guid>http://www.anothercaffeinatedday.com/blog/default/penquin/?permalink=Coffee-Donuts-and-JavaScript.html</guid>
	<link>http://www.anothercaffeinatedday.com/blog/default/penquin/?permalink=Coffee-Donuts-and-JavaScript.html</link>
	<description>&lt;p&gt;The Fourth of July. A US holiday.&lt;/p&gt;
&lt;p&gt;I'm having a donut, some coffee, and exercising some of my JavaScript acumen today sipping on some coffee. The YUI library docs at hand, the&lt;a href=&quot;http://www.stripesframework.org/&quot;&gt; Stripes&lt;/a&gt; JAR on disk, webapp loaded, and thinking about bagels.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Bagels? You're having a donut!,&amp;#8221; one might query.&lt;/p&gt;
&lt;p&gt;My job is such that I have to evaluate tools for improving existing applications. Some quiet time on a holiday let's me do just that. I'm building a bagel club prototype to demo some of the advanced features of the YUI, the Stripes MVC framework, JavaScript, and the &lt;a href=&quot;http://directwebremoting.org/dwr&quot;&gt;DWR&lt;/a&gt; for talking to the backend.&lt;/p&gt;
&lt;p&gt;Normally, I might devote the day to thinking about Warhammer Fantasy Roleplay, the campaign, &amp;amp;tc. I'll do that tonight. I'll probably, finally, tackle that annoying IE 6/7 display bug in&lt;a href=&quot;http://www.anothercaffeinatedday.com/resources/default/inns.html?source=acd&quot;&gt; Inns of the Empire&lt;/a&gt;. Finally.  ~o)&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 14:57:10 +0000</pubDate>
</item>
<item>
	<title>Gowtham: Importing Comments From flickr.com Into Pixelpost</title>
	<guid>http://sgowtham.net/blog/?p=316</guid>
	<link>http://sgowtham.net/blog/2008/07/04/importing-comments-from-flickrcom-into-pixelpost/</link>
	<description>&lt;p&gt;Following my previous post, about &lt;a href=&quot;http://sgowtham.net/blog/2008/07/01/importing-comments-from-flickrcom/&quot; target=&quot;_blank&quot;&gt;importing comments from flickr.com&lt;/a&gt; to my home-made &lt;a href=&quot;http://sgowtham.net/showcase/&quot; target=&quot;_blank&quot;&gt;photoblog&lt;/a&gt;, buddy &lt;a href=&quot;http://flickr.com/photos/aragirn/&quot; target=&quot;_blank&quot;&gt;Kyle&lt;/a&gt; thought it would be useful to have a similar API which can import comments from &lt;a href=&quot;http://flickr.com/&quot; target=&quot;_blank&quot;&gt;flickr.com&lt;/a&gt; into a photoblog powered by &lt;a href=&quot;http://pixelpost.org/&quot; target=&quot;_blank&quot;&gt;Pixelpost&lt;/a&gt;. Although posting the same pictures on two different platforms - once in a personal photoblog and once in &lt;em&gt;flickr.com&lt;/em&gt; - can seem painstakingly time-consuming, it does have its advantages. For one, the latter is a multi-user platform with users ranging from novice/beginners to advanced professionals. As such, there is a better chance for attracting useful comments. As easy as it might seem to manually enter comments from &lt;em&gt;flickr.com&lt;/em&gt; to  photoblog when there are only few comments, it can become quite tedious and even more time consuming with time. To that effect, I did some Google! search to find an XML/RSS parser, modified it to meet Pixelpost-imposed requirements. The procedure/edits follow some MUST DO things for it all to work in a seamless fashion:&lt;/p&gt;
&lt;p&gt;&lt;br clear=&quot;all&quot; /&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;ol&gt;
&lt;li&gt;The image names in Pixelpost database MUST BE UNIQUE. If you are wondering how to accomplish that, you may refer to one of my &lt;a href=&quot;http://sgowtham.net/blog/2008/03/28/mac-address-for-cameras/&quot; target=&quot;_blank&quot; class=&quot;underline&quot;&gt;&lt;font color=&quot;#ff0000&quot;&gt;previous posts&lt;/font&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Back up the MySQL database used for Pixelpost - if something goes wrong, you will have something to revert back to. Step by step instructions for doing so are &lt;a href=&quot;http://sgowtham.net/blog/2008/04/04/backing-up-and-restoring-mysql-databases/&quot; target=&quot;_blank&quot; class=&quot;underline&quot;&gt;&lt;font color=&quot;#ff0000&quot;&gt;here&lt;/font&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;When posting images in &lt;em&gt;flickr.com&lt;/em&gt;, make sure the title for that post is NOTHING BUT the filename, EXCEPT the extension (jpg or gif or png or something else).&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br clear=&quot;all&quot; /&gt;&lt;/p&gt;
&lt;h3 class=&quot;blog&quot;&gt;XML/RSS Parser with PHP&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;http://flickr.com/&quot; target=&quot;_blank&quot;&gt;flickr.com&lt;/a&gt; generates an RSS feed for comments that others (or I) make on my photos. This RSS feed contains all the required information - name, date-time, comment, title of the image, etc. The way I designed my photoblog, the image_name is the unique identifier and when I upload the images to &lt;em&gt;flickr.com&lt;/em&gt;, I keep the image name as part of the title. The following script - &lt;b&gt;flickr2showcase.php&lt;/b&gt;, not originally written by me but parts of it heavily modified, does exactly what I want - extract the information from RSS feed and arrange it in a manner that it can be incorporated into my photoblog (one may refer to the &lt;a href=&quot;http://www.sitepoint.com/article/php-xml-parsing-rss-1-0&quot; target=&quot;_blank&quot;&gt;original script &amp;amp; its documentation&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;br clear=&quot;all&quot; /&gt;&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;php&quot;&gt;&lt;span&gt;#! /usr/bin/php&lt;/span&gt;
&lt;span&gt;&amp;lt;?php&lt;/span&gt;
&lt;span&gt;# Connect to the database&lt;/span&gt;
&lt;span&gt;$host&lt;/span&gt;     &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;localhost&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;$dbuser&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;MYSQL_PIXELPOST_USERID&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;$dbpasswd&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;MYSQL_PIXELPOST_PASSWD&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;$database&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;MYSQL_PIXELPOST_DB&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;$connect&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_connect&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$host&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$dbuser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$dbpasswd&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; or &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;mysql_error&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;mysql_select_db&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$database&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;$connect&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; or &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;mysql_error&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;class&lt;/span&gt; FlickrRSSParser &lt;span&gt;&amp;#123;&lt;/span&gt;
&amp;nbsp;
  &lt;span&gt;# In Flickr's RSS file, all the information needed is contained in the &amp;lt;item&amp;gt; &lt;/span&gt;
  &lt;span&gt;# tags in the document. So the first global variable defined will be $insideitem, &lt;/span&gt;
  &lt;span&gt;# which will be set to true when entering an &amp;lt;item&amp;gt; tag and false when exiting one.&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$insideitem&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;false&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$tag&lt;/span&gt;         &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$title&lt;/span&gt;       &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$description&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$link&lt;/span&gt;        &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
  &lt;span&gt;var&lt;/span&gt; &lt;span&gt;$pubdate&lt;/span&gt;     &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
  &lt;span&gt;# This function will be called by the XML parser whenever an opening tag is &lt;/span&gt;
  &lt;span&gt;# encountered&lt;/span&gt;
  &lt;span&gt;# $parser will be passed a reference to the XML parser that is being used to &lt;/span&gt;
  &lt;span&gt;# parse the document&lt;/span&gt;
  &lt;span&gt;# $tagName is the ALL-UPPERCASE (the PHP manual calls this 'case-folded')&lt;/span&gt;
  &lt;span&gt;# version of the name of the opening tag that triggered the event&lt;/span&gt;
  &lt;span&gt;# $attrs is an associative array of the attributes that are present in the tag&lt;/span&gt;
  &lt;span&gt;# that triggered the event&lt;/span&gt;
  &lt;span&gt;function&lt;/span&gt; startElement&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$tagName&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$attrs&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
    &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;insideitem&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
      &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;tag&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$tagName&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
    &lt;span&gt;&amp;#125;&lt;/span&gt; &lt;span&gt;elseif&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$tagName&lt;/span&gt; &lt;span&gt;==&lt;/span&gt; &lt;span&gt;&amp;quot;ITEM&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
      &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;insideitem&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;true&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
    &lt;span&gt;&amp;#125;&lt;/span&gt;
  &lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
  &lt;span&gt;# $parser will be passed a reference to the XML parser that is being used to&lt;/span&gt;
  &lt;span&gt;# parse the document&lt;/span&gt;
  &lt;span&gt;# $tagName is the case-folded name of the closing tag that triggered the event&lt;/span&gt;
  &lt;span&gt;function&lt;/span&gt; endElement&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$tagName&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
    &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$tagName&lt;/span&gt; &lt;span&gt;==&lt;/span&gt; &lt;span&gt;&amp;quot;ITEM&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# Image name: flickr.com displays the title as 'Comment on dsc_100-1234'&lt;/span&gt;
      &lt;span&gt;# The filename is the 3rd array element&lt;/span&gt;
      &lt;span&gt;$title&lt;/span&gt;        &lt;span&gt;=&lt;/span&gt; &lt;span&gt;htmlspecialchars&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;trim&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$title&lt;/span&gt;        &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot; &amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$title&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$filename&lt;/span&gt;     &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$title&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# Date/Time the comment was made (yyyy-mm-dd hh:mm:ss format)&lt;/span&gt;
      &lt;span&gt;$pubdate&lt;/span&gt;      &lt;span&gt;=&lt;/span&gt; &lt;span&gt;htmlspecialchars&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;trim&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;pubdate&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$pubdate&lt;/span&gt;      &lt;span&gt;=&lt;/span&gt; &lt;span&gt;strtotime&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$pubdate&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$pubdate&lt;/span&gt;      &lt;span&gt;=&lt;/span&gt; &lt;span&gt;date&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;Y-m-d H:i:s&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$pubdate&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;$paragraphs&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;htmlspecialchars&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;trim&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;description&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$paragraphs&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;lt;/p&amp;amp;gt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$paragraphs&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# The description contains the link to comment-author's flickr profile and &lt;/span&gt;
      &lt;span&gt;# comment-author's name (first &amp;lt;p&amp;gt;&amp;lt;/p&amp;gt; section)&lt;/span&gt;
      &lt;span&gt;$paragraph0&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$paragraphs&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$authorurl&lt;/span&gt;    &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$paragraph0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$author_url&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$authorurl&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;$authorname0&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;gt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$paragraph0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$authorname1&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$authorname0&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$authorname2&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;lt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$authorname1&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$author_name&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$authorname2&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# The description also contains the comment-text (second &amp;lt;p&amp;gt;&amp;lt;/p&amp;gt; section)&lt;/span&gt;
      &lt;span&gt;# Basic substitutions are done, via ereg_replace(), to get the appropriate part&lt;/span&gt;
      &lt;span&gt;# mysql_real_escape_string() is used to make sure comment_text is in MySQL friendly fashion&lt;/span&gt;
      &lt;span&gt;$paragraph1&lt;/span&gt;   &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$paragraphs&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$commenttext&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;explode&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;lt;p&amp;amp;gt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$paragraph1&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$comment_text&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$commenttext&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$comment_text&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;ereg_replace&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;&amp;amp;lt;br /&amp;amp;gt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;lt;br&amp;gt;&lt;span&gt;\r&lt;/span&gt;&lt;span&gt;\n&lt;/span&gt;&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$comment_text&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$comment_text&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_real_escape_string&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$comment_text&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# The description also contains a link to image-thumbnail (second &amp;lt;p&amp;gt;&amp;lt;/p&amp;gt; section)&lt;/span&gt;
      &lt;span&gt;# but it's not required in this process - as such, it's ignored&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# flickr.com's IP address&lt;/span&gt;
      &lt;span&gt;$flickr_ip&lt;/span&gt;    &lt;span&gt;=&lt;/span&gt; &lt;span&gt;gethostbyname&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'www.flickr.com'&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# Table structure for table `pixelpost_comments`&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# CREATE TABLE IF NOT EXISTS `pixelpost_comments` (&lt;/span&gt;
      &lt;span&gt;#   `id` int(11) NOT NULL auto_increment,&lt;/span&gt;
      &lt;span&gt;#   `parent_id` int(11) NOT NULL default '0',&lt;/span&gt;
      &lt;span&gt;#   `datetime` datetime NOT NULL default '0000-00-00 00:00:00',&lt;/span&gt;
      &lt;span&gt;#   `ip` varchar(20) NOT NULL default '',&lt;/span&gt;
      &lt;span&gt;#   `message` text NOT NULL,&lt;/span&gt;
      &lt;span&gt;#   `name` varchar(30) default NULL,&lt;/span&gt;
      &lt;span&gt;#   `url` varchar(70) default NULL,&lt;/span&gt;
      &lt;span&gt;#   `email` varchar(100) default NULL,&lt;/span&gt;
      &lt;span&gt;#   `publish` char(3) NOT NULL default 'yes',&lt;/span&gt;
      &lt;span&gt;#   `spaminess` float default NULL,&lt;/span&gt;
      &lt;span&gt;#   `signature` varchar(55) default NULL,&lt;/span&gt;
      &lt;span&gt;#   PRIMARY KEY  (`id`),&lt;/span&gt;
      &lt;span&gt;#   KEY `parent_id` (`parent_id`)&lt;/span&gt;
      &lt;span&gt;# ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# First, check if the flickr-image is in PIXELPOST database &lt;/span&gt;
      &lt;span&gt;# If exists, then get the corresponding POST ID (PARENT ID)&lt;/span&gt;
      &lt;span&gt;$sql_q0&lt;/span&gt;       &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;SELECT id, image FROM `MYSQL_DB`.`pixelpost_pixelpost` &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$sql_q0&lt;/span&gt;      &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;&amp;quot;WHERE image='$filename.jpg' ORDER BY id DESC LIMIT 1 &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;$result0&lt;/span&gt;      &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_query&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$sql_q0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
      &lt;span&gt;# Proceed further, to make an entry into comments database, iff the&lt;/span&gt;
      &lt;span&gt;# above query was successful&lt;/span&gt;
      &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;!&lt;/span&gt;&lt;span&gt;$result0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
        &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'Invalid query: '&lt;/span&gt; &lt;span&gt;.&lt;/span&gt; &lt;span&gt;mysql_error&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;&amp;#125;&lt;/span&gt; &lt;span&gt;else&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
&amp;nbsp;
        &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$myrow&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_fetch_array&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$result0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
          &lt;span&gt;do&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
            &lt;span&gt;$parent_id&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;$myrow&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;'id'&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
          &lt;span&gt;&amp;#125;&lt;/span&gt; &lt;span&gt;while&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$myrow&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_fetch_array&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$result0&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
        &lt;span&gt;# Enter into the comments_table in database&lt;/span&gt;
        &lt;span&gt;# INSERT IGNORE makes sure that duplicate entries, when exist, &lt;/span&gt;
        &lt;span&gt;# are ignored during insertion&lt;/span&gt;
        &lt;span&gt;$sql_q1&lt;/span&gt;       &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;INSERT IGNORE INTO `MYSQL_DB`.`pixelpost_comments` &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$sql_q1&lt;/span&gt;      &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;&amp;quot;VALUES ('', '$parent_id', '$pubdate', '$flickr_ip', &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$sql_q1&lt;/span&gt;      &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;&amp;quot;'$comment_text', '$author_name', '$author_url', &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$sql_q1&lt;/span&gt;      &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;&amp;quot;'flickr@your-domain.com', 'yes', '', ''); &amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$result1&lt;/span&gt;      &lt;span&gt;=&lt;/span&gt; &lt;span&gt;mysql_query&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$sql_q1&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
        &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;!&lt;/span&gt;&lt;span&gt;$result1&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
          &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'Invalid query: '&lt;/span&gt; &lt;span&gt;.&lt;/span&gt; &lt;span&gt;mysql_error&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;title&lt;/span&gt;       &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;description&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;link&lt;/span&gt;        &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;pubdate&lt;/span&gt;     &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;insideitem&lt;/span&gt;  &lt;span&gt;=&lt;/span&gt; &lt;span&gt;false&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;&amp;#125;&lt;/span&gt;
    &lt;span&gt;&amp;#125;&lt;/span&gt;
  &lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
  &lt;span&gt;# $parser will be passed a reference to the XML parser that is being used to&lt;/span&gt;
  &lt;span&gt;# parse the document&lt;/span&gt;
  &lt;span&gt;# $data is a string of text appearing between XML tags in the document. &lt;/span&gt;
  &lt;span&gt;# The text between two tags will not necessarily trigger a single event. &lt;/span&gt;
  &lt;span&gt;# Blocks of text spread over multiple lines will cause one event per line, &lt;/span&gt;
  &lt;span&gt;# with each event being passed the $data for that line.&lt;/span&gt;
  &lt;span&gt;function&lt;/span&gt; characterData&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
    &lt;span&gt;if&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;insideitem&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
      &lt;span&gt;switch&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;tag&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
        &lt;span&gt;case&lt;/span&gt; &lt;span&gt;&amp;quot;TITLE&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;title&lt;/span&gt; &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;break&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;case&lt;/span&gt; &lt;span&gt;&amp;quot;DESCRIPTION&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;description&lt;/span&gt; &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;break&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;case&lt;/span&gt; &lt;span&gt;&amp;quot;PUBDATE&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;pubdate&lt;/span&gt; &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;break&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;case&lt;/span&gt; &lt;span&gt;&amp;quot;LINK&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;
        &lt;span&gt;$this&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;link&lt;/span&gt; &lt;span&gt;.=&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
        &lt;span&gt;break&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
      &lt;span&gt;&amp;#125;&lt;/span&gt;
    &lt;span&gt;&amp;#125;&lt;/span&gt;
  &lt;span&gt;&amp;#125;&lt;/span&gt;
&lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# Create an XML parser&lt;/span&gt;
&lt;span&gt;# Just as one must create a database connection in PHP to interact with a database, &lt;/span&gt;
&lt;span&gt;# one must create an XML parser to read in an XML file. In this case, a reference to &lt;/span&gt;
&lt;span&gt;# the parser is stored in $xml_parser.&lt;/span&gt;
&lt;span&gt;$xml_parser&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;xml_parser_create&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;$rss_parser&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;new&lt;/span&gt; FlickrRSSParser&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;xml_set_object&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;,&amp;amp;&lt;/span&gt;&lt;span&gt;$rss_parser&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# This function specifies the functions that an XML parser should &lt;/span&gt;
&lt;span&gt;# use to process the events generated opening and closing tags. &lt;/span&gt;
&lt;span&gt;# In this case, the parser is the one stored in our $xml_parser variable, &lt;/span&gt;
&lt;span&gt;# while the functions are called startElement() and endElement()&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;xml_set_element_handler&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;&amp;quot;startElement&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;&amp;quot;endElement&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# This function specifies the function that the XML parser should use &lt;/span&gt;
&lt;span&gt;# to process character data appearing between tags in an XML document. &lt;/span&gt;
&lt;span&gt;# The function chosen to process character data is called characterData()&lt;/span&gt;
&lt;span&gt;xml_set_character_data_handler&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;&amp;quot;characterData&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# Flickr's RSS Feed Comments URL must be entered here&lt;/span&gt;
&lt;span&gt;$rss&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&amp;quot;FLICKR_RSS_FEED_FOR_COMMENTS&amp;quot;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# Open the specified URL for reading&lt;/span&gt;
&lt;span&gt;$fp&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;fopen&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$rss&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;&amp;quot;r&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;
  or &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;Error reading RSS data.&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;while&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$data&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;fread&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$fp&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;4096&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;#123;&lt;/span&gt;
  &lt;span&gt;# This function sends all or part of an XML document to the parser for it &lt;/span&gt;
  &lt;span&gt;# to process. The endOfDocument parameter should be set to true if the &lt;/span&gt;
  &lt;span&gt;# data marks the end of of XML document, or false if more of the document &lt;/span&gt;
  &lt;span&gt;# will follow in a subsequent call to xml_parse(). This allows the parser to &lt;/span&gt;
  &lt;span&gt;# correctly catch unclosed tags at the end of the document and so forth. &lt;/span&gt;
  &lt;span&gt;# In this case, the parser is once again $xml_parser. The $data variable &lt;/span&gt;
  &lt;span&gt;# (up to 4KB in size) retrieved from the file with fread() is passed as the &lt;/span&gt;
  &lt;span&gt;# data to be processed, while the feof() is used to determine whether &lt;/span&gt;
  &lt;span&gt;# PHP has reached the end of the XML file or not, thus providing the &lt;/span&gt;
  &lt;span&gt;# required endOfDocument parameter. If an error occurs in the parsing of &lt;/span&gt;
  &lt;span&gt;# the document, the error message is printed out along with the line of the &lt;/span&gt;
  &lt;span&gt;# file at which it occurs with xml_error_string, xml_get_error_code() and &lt;/span&gt;
  &lt;span&gt;# xml_get_current_line_number()&lt;/span&gt;
  &lt;span&gt;xml_parse&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;$data&lt;/span&gt;&lt;span&gt;,&lt;/span&gt; &lt;span&gt;feof&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$fp&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;
    or &lt;span&gt;die&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;sprintf&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;&amp;quot;XML error: %s at line %d&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;
      &lt;span&gt;xml_error_string&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;xml_get_error_code&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;
      &lt;span&gt;xml_get_current_line_number&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&lt;span&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;fclose&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$fp&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;# Although all memory resources are freed at the end of a PHP script, &lt;/span&gt;
&lt;span&gt;# one may wish to free up the memory used by the XML parser if the &lt;/span&gt;
&lt;span&gt;# script will perform other potentially memory-intensive tasks after it &lt;/span&gt;
&lt;span&gt;# parses the XML data. This function destroys the specified XML parser, &lt;/span&gt;
&lt;span&gt;# thus freeing up resources and memory it may have allocated for parsing.&lt;/span&gt;
&lt;span&gt;xml_parser_free&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;$xml_parser&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;?&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear=&quot;all&quot; /&gt;&lt;br /&gt;
To make sure that one doesn&amp;#8217;t miss any comments, this above script may be run via a cron-job, twice a day or so. I no longer use Pixelpost (except on a test server) and as such, cannot demonstrate it - but if someone who uses this can send me links, I will most certainly update this post with those links. As always, if you find bugs/errors, do post them as comments and I will work on them.&lt;/p&gt;
&lt;p&gt;&lt;br clear=&quot;all&quot; /&gt;&lt;/p&gt;
&lt;h3 class=&quot;blog&quot;&gt;Disclaimer&lt;/h3&gt;
&lt;p&gt;The aforementioned instructions/steps worked for me in my &lt;a href=&quot;http://linode.com/&quot; target=&quot;_blank&quot;&gt;linode&lt;/a&gt; account running CentOS 4.0. It may very well work for you on Red Hat-like distributions, on linode or elsewhere. Please note that if you decide to use these instructions on your machine, you are doing so entirely at your very own discretion and that neither this site, &lt;a href=&quot;http://sgowtham.net/&quot; target=&quot;_blank&quot;&gt;sgowtham.net&lt;/a&gt;, nor its author is responsible for any/all damage - intellectual or otherwise.&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 14:21:48 +0000</pubDate>
</item>
<item>
	<title>All things GatorKram: Happy 4th.</title>
	<guid>http://www.gatorkram.com/blog/?p=114</guid>
	<link>http://www.gatorkram.com/blog/?p=114</link>
	<description>&lt;p&gt;Happy 4th of July.. I wonder, is it more popular to say &amp;#8220;Happy July 4th&amp;#8221;&lt;/p&gt;
&lt;p&gt;or &amp;#8220;Happy 4th of July&amp;#8221;&amp;#8230; Hmmm&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 14:13:24 +0000</pubDate>
</item>
<item>
	<title>Simon Rumble: Good beer, bad chicken</title>
	<guid>http://www.rumble.net/blog/Good_beer_Bad_chicken</guid>
	<link>http://www.rumble.net/blog/index.cgi/food/Good_beer_Bad_chicken.html</link>
	<description>&lt;p&gt;A few weeks ago I got an email from the &lt;a href=&quot;http://www.maltshovel.com.au/&quot;&gt;Malt Shovel Brewery&lt;/a&gt; about a
beer and food tasting at their brew pub on King Street Wharf.  Best
thing, of course, was the price: free.  I signed myself and Holly up
immediately.&lt;/p&gt;
&lt;p&gt;The evening started off with a Golden Ale, always a lovely drop,
and a bit of a talk from Chuck Hahn.  Golden was paired with some
pretty good jumbo deep-fried prawns.  A good combo, the fruity hops
going well with the seafood.  Next up was Amber Ale paired with lamb
cutlets.  I'm not so sure about this combo really being a match, but I
like both amber ale and lamb.&lt;/p&gt;
&lt;p&gt;The next combo was a revelation.  I think the James Squire porter
is one of the best beers made in Australia.  It's pretty much
flawless, getting the critical balance between sweet and sour just
right for the porter style.  The combination was a cheesecake.  I'm
not normally that keen on cheesecakes, but a bite followed by a slurp
of porter was an amazing taste sensation.  The sourness of the porter
cuts through the (normally cloying) richness of the cheesecake.  A
brilliant combination, which I'll be serving at my next dinner party I
think.&lt;/p&gt;
&lt;p&gt;Finally came the latest seasonal brew, a Pepperberry Winter Ale.
Bush foods are something brewers in Australia are trying to
incorporate, with varying degrees of success.  The Barons &lt;a href=&quot;http://www.baronsbrewing.com/beers/notes-Australia/brand-witbier.php&quot;&gt;Lemon
Myrtle Witbier&lt;/a&gt; is vile, tasting more like Toilet Duck or Strongbow
Lemon than a wheat beer.&lt;/p&gt;
&lt;p&gt;The pepperberry is more succesful, keeping the exotic seasoning as
a subtle texture to the flavour instead of overpowering the beer.
It's a fairly standard winter ale, dark, fairly sweet, heavy (5.2% I
think) and the pepperberry gives a warm spiciness to it.  The aroma is
something slightly aniseed, with a similar slight flavour running
through the taste.  It's got a very long, lingering flavour that
changes as you savour it.  Well worth checking out, but it's a limited
seasonal brew so get in quick.&lt;/p&gt;
&lt;p&gt;I asked one of the brewers when they'd be making another wheat
beer.  Previously they've done what they called a Colonial Wheat Beer,
which wasn't as tasty as I'd hoped but pretty good.  I'm more into the
spiced wheat beers, Hoegaarden being the most well-known of the
variety.  The only Australian brewer getting it right is the &lt;a href=&quot;http://www.beerstore.com.au/detail.asp?beerID=650&quot;&gt;Snowy
Mountains Brewery's Charlottes Hefeweizen&lt;/a&gt;.  Malt Shovel's Summer
brew is apparently going to be a lager, like Australia needs more of
those, but hopefully they'll have another crack at wheat.&lt;/p&gt;
&lt;p&gt;The beer event was actually pretty quick, moving through the beer
and food at a rapid pace.  Holly and I decided to wander into town and
find some dinner, and we've been looking for a change to try the &lt;a href=&quot;http://www.rumble.net/blog/index.cgi/food/Korean_Fried_Chicken.html&quot;&gt;Korean
Fried Chicken&lt;/a&gt; I saw reviewed recently.&lt;/p&gt;
&lt;p&gt;Sadly Dashi Korean seems to have closed.  We wandered all the way
up and down the short laneway without finding it, though there's a
not-yet-opened restaurant with workers in it, and I suspect that might
be where Dashi was.&lt;/p&gt;
&lt;p&gt;We ended up wandering around the corner onto Liverpool Street where
we'd seen KoreanFC advertised to check it out.  The place is a real
rabbit warren, the downstairs area packed with (mostly) Koreans, so we
were shown upstairs to a kind of covered-in verandah.  The decor is,
well, dodgy.  I suspect the council would not approve.&lt;/p&gt;
&lt;p&gt;Anyway we ordered some of the sauced fried chicken, hoping it would
be as good as the stuff we've had in London.  Unfortunately not in
this case.&lt;/p&gt;
&lt;p&gt;The batter was overly thick, the chicken a bit dried out and the
sauce was synthetic-tasting, without the chunky bits of onion and
capsicum.  Altogether not very nice, and quite disappointing.  Korean
food always comes with little side dishes of pickles and the like, and
these ones were pretty ordinary too.  A simply vinegared radish was
somewhat refreshing after the greasy food, but the kimchi was very
ordinary and the cold clear noodles bland.&lt;/p&gt;
&lt;p&gt;We'll just have to keep looking for the perfect KoreanFC here in
Sydney!&lt;/p&gt;&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.rumble.net/contact/&quot;&gt;Contact me&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 14:09:09 +0000</pubDate>
</item>
<item>
	<title>Holy Shmoly: Back to the Eighties</title>
	<guid>http://ocaoimh.ie/?p=89493795</guid>
	<link>http://feeds.feedburner.com/~r/HolyShmoly/~3/326519316/</link>
	<description>&lt;p&gt;Well, the Irish economy is tanking and is heading towards recession. Last time things were this bad was in the Eighties so here&amp;#8217;s a few memories from that decade. After yesterday&amp;#8217;s rather technical post, I need a nice squeaky throw away nostalgic one today.&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/The_Fall_Guy&quot;&gt;The Fall Guy&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span id=&quot;more-89493795&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/The_Greatest_American_Hero&quot;&gt;Greatest American Hero&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Magnum,_P.I.&quot;&gt;Magnum P.I.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/MacGyver&quot;&gt;MacGyver&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Automan&quot;&gt;Automan&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Hart_to_Hart&quot;&gt;Hart to Hart&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Dallas_(TV_series)&quot;&gt;Dallas&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Misfits_of_Science&quot;&gt;Misfits of Science&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;And for my Irish visitors..&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/The_Den_(television)&quot;&gt;Dempsey&amp;#8217;s Den&lt;/a&gt; with Ian Dempsey and Zig and Zag&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Wanderly_Wagon&quot;&gt;Wanderly Wagon&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://en.wikipedia.org/wiki/Bosco&quot;&gt;Bosco&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;Helloooo Viacom!&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://ocaoimh.ie/?voyeur=1&quot; /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Related Posts&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2002/11/25/way-back-when-inte/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Way back when - interview with &amp;#8230;&quot;&gt;Way back when - interview with &amp;#8230;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2003/08/26/new-york-new-york/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: New York, New York..&quot;&gt;New York, New York..&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2005/05/22/im-back-im-back/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: I&amp;#8217;m Back, I&amp;#8217;m Back!&quot;&gt;I&amp;#8217;m Back, I&amp;#8217;m Back!&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=TRca0J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=TRca0J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=QdwbLj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=QdwbLj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=EU21sj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=EU21sj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=dURL5j&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=dURL5j&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/HolyShmoly/~4/326519316&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;Well, the Irish economy is tanking and is heading towards recession. Last time things were this bad was in the Eighties so here&amp;amp;#8217;s a few memories from that decade. After yesterday&amp;amp;#8217;s rather technical post, I need a nice squeaky throw away nostalgic one today. The Fall Guy Greatest American Hero Magnum P.I. MacGyver Automan Hart to Hart Dallas Misfits of Science And for my [...]</description>
	<pubDate>Fri, 04 Jul 2008 09:45:26 +0000</pubDate>
</item>
<item>
	<title>Bryan Forbes: Twitter Updates for 2008-07-03</title>
	<guid>http://www.reigndropsfall.net/2008/07/03/twitter-updates-for-2008-07-03/</guid>
	<link>http://www.reigndropsfall.net/2008/07/03/twitter-updates-for-2008-07-03/</link>
	<description>&lt;ul class=&quot;aktt_tweet_digest&quot;&gt;
&lt;li&gt;Have to go get a tetanus shot&amp;#8230; not looking forward to that &lt;img src=&quot;http://www.reigndropsfall.net/wp-includes/images/smilies/icon_sad.gif&quot; alt=&quot;:(&quot; class=&quot;wp-smiley&quot; /&gt; &lt;a href=&quot;http://twitter.com/BryanForbes/statuses/849546117&quot;&gt;#&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;@jamietie: Interesting&amp;#8230; is this for a story or something? &lt;a href=&quot;http://twitter.com/BryanForbes/statuses/849584511&quot;&gt;#&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;aktt_credit&quot;&gt;Powered by &lt;a href=&quot;http://alexking.org/projects/wordpress&quot;&gt;Twitter Tools&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 05:59:59 +0000</pubDate>
</item>
<item>
	<title>Sean's Software Blog: Links for 2008-07-03 [del.icio.us]</title>
	<guid>http://del.icio.us/SeanOC#2008-07-03</guid>
	<link>http://feeds.feedburner.com/~r/SeansSoftwareBlog/~3/326371958/SeanOC</link>
	<description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://sites.google.com/site/io/building-scalable-web-applications-with-google-app-engine&quot;&gt;Building Scalable Web Applications with Google App Engine (Google I/O Session Videos and Slides)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/SeansSoftwareBlog/~4/326371958&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 04 Jul 2008 05:00:00 +0000</pubDate>
</item>
<item>
	<title>Candice Eisner, RMT: Ice vs Heat - Which do you use?</title>
	<guid>http://www.candicermt.ca/2008/07/03/ice-vs-heat-which-do-you-use/</guid>
	<link>http://www.candicermt.ca/2008/07/03/ice-vs-heat-which-do-you-use/</link>
	<description>&lt;p&gt;This is a pretty common question I get from my clients.  Here&amp;#8217;s a simple chart to help you remember when and how to use heat and ice therapy treatments.  &lt;/p&gt;
&lt;table border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;2&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;b&gt;Ice&lt;/b&gt;
  &lt;/td&gt;
&lt;td&gt;
  &lt;b&gt;Heat&lt;/b&gt;
  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
  &lt;b&gt;When to use?&lt;/b&gt;
  &lt;/td&gt;
&lt;td&gt;
&lt;p&gt; In the first few hours and days after an injury, such as an ankle sprain.  Also should be used after an activity  that irritates an old injury (eg &amp;#8211; shin splits).&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Use  before an activity that irritates an old injury that is not currently in ‘flare up’ (eg &amp;#8211; muscle strain).  Also useful for relaxing tight muscles and as stress relief.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;&lt;b&gt;How to use?&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;  Ice packs, ice cubes, and bags of frozen vegetables are all good methods. &lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Heating pads, hot towels, hot baths and showers are all good methods.  &lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;&lt;b&gt;For How Long?&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;  15-20 minutes or until numb. More ice  does not mean more relief &amp;#8211; do not exceed 20 minutes.&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;  10-20 minutes or as is comfortable for you. More than 20 minutes is not necessary.  Do not use a heating pad while sleeping, as you risk  burning yourself.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;When using ice: Make sure you protect your skin with a tea towel, to reduce risk of frostbite.&lt;/p&gt;
&lt;p&gt;When using heat: You may also need a towel to protect your skin, depending on how hot the heat source is.  Heat applications should always be comfortable, not scalding. &lt;/p&gt;
&lt;p&gt;As always, if you have any questions, send me an email or just comment on this post.&lt;/p&gt;</description>
	<pubDate>Fri, 04 Jul 2008 02:46:23 +0000</pubDate>
</item>
<item>
	<title>Ryan Tucker: Dear God: Why have you smiled upon Scotland with such great food?</title>
	<guid>http://blog.hoopycat.com/177@http://blog.hoopycat.com/</guid>
	<link>http://blog.hoopycat.com/index.php/2008/07/03/dear-god-why-have-you-smiled-upon-scotla</link>
	<description>&lt;p&gt;Dude.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;In the west of Scotland, in the towns and villages surrounding Glasgow, there is a delicacy available in some of the more discerning fast-food outlets. It&amp;#8217;s called the Munchy Box (sometimes just Munch Box) and it&amp;#8217;s a sight to behold. The one I bought for this article is a regular-sized one, in a 10&amp;#8243; pizza box for about a fiver, but they can come in 12&amp;#8243; or beyond for eight quid and up.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;center&gt;&lt;a href=&quot;http://blog.23x.net/5/what-is-a-munchy-box.html&quot;&gt;&lt;img src=&quot;http://pugwash.cat5.org/articles/munchy/images/munchy-1920-3.jpg&quot; alt=&quot;MOAR&quot; title=&quot;MOAR&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;

&lt;p&gt;From &quot;&lt;a href=&quot;http://blog.23x.net/5/what-is-a-munchy-box.html&quot;&gt;What is a Munchy Box?&lt;/a&gt;&quot;, a description of an absolutely delicious-looking entree that may, very well, perhaps be better than Rochester's own &lt;a href=&quot;http://rocwiki.org/Garbage_Plates&quot;&gt;Garbage Plate&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Unrelatedly: I leave for Des Moines on Sunday at 7am!  Roughly.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://blog.hoopycat.com/index.php/2008/07/03/dear-god-why-have-you-smiled-upon-scotla&quot;&gt;Original post&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 03 Jul 2008 23:24:31 +0000</pubDate>
</item>
<item>
	<title>In Photos: The writing’s on the wall for Heineken</title>
	<guid>http://inphotos.org/?p=2492</guid>
	<link>http://inphotos.org/the-writings-on-the-wall-for-heineken/</link>
	<description>&lt;div align=&quot;center&quot;&gt;&lt;img src=&quot;http://inphotos.org/wp-content/uploads/2008/07/the-writings-on-the-wall-for-heineken.jpg&quot; alt=&quot;The writing's on the wall for Heineken&quot; title=&quot;The writing's on the wall for Heineken&quot; width=&quot;471&quot; height=&quot;725&quot; class=&quot;alignnone size-full wp-image-2493&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Heineken logo silhouette on the ground outside a cafe in Kinsale on a very bright sunny day some time back.&lt;/p&gt;
&lt;p&gt;If you&amp;#8217;re wondering, the image above mirrored, otherwise the logo would be backwards!&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://inphotos.org/?voyeur=1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Related Posts&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/seaside-wall-and-rocks/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Seaside Wall and Rocks&quot;&gt;Seaside Wall and Rocks&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/which-way-to-radio-kerry/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Which way to Radio Kerry?&quot;&gt;Which way to Radio Kerry?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/the-grumpy-lepruachan/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: The Grumpy Lepruachan&quot;&gt;The Grumpy Lepruachan&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;
	Tags: &lt;a href=&quot;http://inphotos.org/tag/brick/&quot; title=&quot;brick&quot; rel=&quot;tag&quot;&gt;brick&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/canon-20d/&quot; title=&quot;Canon 20D&quot; rel=&quot;tag&quot;&gt;Canon 20D&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork/&quot; title=&quot;Cork&quot; rel=&quot;tag&quot;&gt;Cork&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork-photos/&quot; title=&quot;Cork Photos&quot; rel=&quot;tag&quot;&gt;Cork Photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/ground/&quot; title=&quot;ground&quot; rel=&quot;tag&quot;&gt;ground&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/heineken/&quot; title=&quot;Heineken&quot; rel=&quot;tag&quot;&gt;Heineken&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/ireland/&quot; title=&quot;Ireland&quot; rel=&quot;tag&quot;&gt;Ireland&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irish-photos/&quot; title=&quot;Irish photos&quot; rel=&quot;tag&quot;&gt;Irish photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irishblogs/&quot; title=&quot;irishblogs&quot; rel=&quot;tag&quot;&gt;irishblogs&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/kinsale/&quot; title=&quot;Kinsale&quot; rel=&quot;tag&quot;&gt;Kinsale&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/red/&quot; title=&quot;red&quot; rel=&quot;tag&quot;&gt;red&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/shadows/&quot; title=&quot;shadows&quot; rel=&quot;tag&quot;&gt;shadows&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/sigma-18-200/&quot; title=&quot;Sigma 18-200&quot; rel=&quot;tag&quot;&gt;Sigma 18-200&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/silhouette/&quot; title=&quot;silhouette&quot; rel=&quot;tag&quot;&gt;silhouette&lt;/a&gt;&lt;br /&gt;</description>
	<pubDate>Thu, 03 Jul 2008 16:36:56 +0000</pubDate>
</item>
<item>
	<title>Darxus: [hair] Photos of my haircut</title>
	<guid>http://darxus.livejournal.com/221396.html</guid>
	<link>http://darxus.livejournal.com/221396.html</link>
	<description>&lt;a href=&quot;http://m-c-t.livejournal.com/4233.html&quot;&gt;http://m-c-t.livejournal.com/4233.html&lt;/a&gt;</description>
	<pubDate>Thu, 03 Jul 2008 16:16:34 +0000</pubDate>
</item>
<item>
	<title>Wanderlust Traveler: Zabbix Active Checks Host Configuration</title>
	<guid>tag:blogger.com,1999:blog-7336630389671257817.post-4561103597496923996</guid>
	<link>http://blog.wanderlusttraveler.net/2008/07/zabbix-active-checks-host-configuration.html</link>
	<description>This is something very simple but was not immediately obvious to me. I am setting up a Zabbix server as part of my &lt;a href=&quot;http://www.ksconsulting.us&quot;&gt;consulting&lt;/a&gt; work and have many servers behind firewalls that need to use active checks. (Connect from server behind firewall/nat to the zabbix server, rather than have the zabbix server connect out to the monitored agents.) When you create the host set the name and dns name to the server&amp;#x2019;s name you put into the zabbix_agentd.conf file on the server you want to do active checks on. It will show up as unknown availability but that is erroneous.&lt;br /&gt;&lt;br /&gt;Also, you need to create items with active checks. I recommend cloning a template and copying the items and triggers over. Then do a Mass Update and set all the items to &amp;#x201c;Zabbix Agent (Active)&amp;#x201d;&lt;br /&gt;&lt;br /&gt;I&amp;#x2019;ll expound on this later, but wanted to get the basic info out there for anyone else who sat around wondering if the config was correct before the agents started sending in the info.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=ghz8tJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=ghz8tJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=mj7YxJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=mj7YxJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=T3htuJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=T3htuJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=xVVhhj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=xVVhhj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=dv3exJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=dv3exJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=JRCOCj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=JRCOCj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=AWnjmJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=AWnjmJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=DvcTMJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=DvcTMJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</description>
	<pubDate>Thu, 03 Jul 2008 16:59:31 +0000</pubDate>
</item>
<item>
	<title>Matt Wilson: Don’t spend your termite poison money on insurance against Martian invasions.</title>
	<guid>http://blog.tplus1.com/?p=172</guid>
	<link>http://feeds.feedburner.com/~r/tplus1/wtPt/~3/325861270/</link>
	<description>&lt;p&gt;This post wanders all over the place and I&amp;#8217;m not sure I&amp;#8217;m articulating my thoughts very well.  Comments and criticism are welcome.&lt;/p&gt;
&lt;p&gt;Fannie Mae and Freddie Mac (I don&amp;#8217;t know why these companies have such ridiculous names either) are bound by regulations to hold enough capital (cash dollars) in order to remain solvent across some theoretical worst-case scenarios.  &lt;a href=&quot;http://ofheo.gov&quot;&gt;The regulators&lt;/a&gt; dreamed up some really extreme situations that could likely bankrupt these companies, and insisted that the companies held enough cash to survive.&lt;/p&gt;
&lt;p&gt;When I worked at Fannie Mae in the department that wrestled with the C++ model that calculated our reserve requirements for these 10-year stress tests, we used to joke around about how unlikely these stress tests really were.  We would say that we might as well buy insurance against Martian invasions, or against all the animals teaming up together to attack humanity.&lt;/p&gt;
&lt;p&gt;While Fannie Mae was legally complying with these unrealistic scenarios, the sub-prime crisis was a scenario that they were not prepared for, and it slaughtered them.  The CEO had to step down.  The price fell from around $80 a share when I left in 2001 to $18 today.&lt;/p&gt;
&lt;p&gt;The sub-prime crisis at its core is very mundane.  Lenders got sloppy and investors let their greed entice them to take risks they shouldn&amp;#8217;t have.  That&amp;#8217;s all there is to it.  Local banks lent money to high-risk borrowers, then the banks sold the loan to Fannie Mae, who sold the loans to Wall Street.  Investors preferred the high-return investments over the low-return boring crap.&lt;/p&gt;
&lt;p&gt;No perfect storm was necessary to trigger this.  It was just a whole lot of people getting sloppy and eventually enough straws accumulated to break the camel&amp;#8217;s back.  The same pattern played out in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Tulip_mania&quot;&gt;seventeenth century&lt;/a&gt; and probably a hundred times since then.&lt;/p&gt;
&lt;p&gt;Now I&amp;#8217;m a workaday programmer, and I see the same dynamic in code.  People write elaborate systems to protect against ridiculously unlikely scenarios but then skimp on the boring stuff.  Maybe they get the hard parts done but never make sure their app&amp;#8217;s internals are well documented, easy to maintain, and intuitively designed.&lt;/p&gt;
&lt;p&gt;In my experience, it&amp;#8217;s the mundane bugs, not the diabolically clever hackers, that cause me the most grief.  &lt;/p&gt;
&lt;p&gt;If I write some algorithm that costs O(n&lt;sup&gt;2&lt;/sup&gt;), I will almost immediately start trying to tame it down.  The voices in my brain scream about worst-case costs.  Macho programmers write badass algorithms.  However, I find that the really smart thing to do is to spend a few minutes thinking about the likely use cases.  If I know that for the forseeable future, I&amp;#8217;m never going to run this algorithm with n &gt; 5, then I think the grown-up thing to do is to write a big fat docstring that reminds me later about this risk, and then move on to getting other stuff done.&lt;/p&gt;
&lt;p&gt;The market rewards a &lt;a href=&quot;http://rubyonrails.org&quot;&gt;good-enough and finished solution&lt;/a&gt; more than an &lt;a href=&quot;http://turbogears.org&quot;&gt;potentially amazing but currently unfinished solution&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If Fannie Mae had focused on just making sure that they were vetting the loans better, things wouldn&amp;#8217;t have been so bad.  The theoretical worst case scenarios are not going to happen before the more likely stuff goes wrong.  I worked at Fannie Mae preparing against Martian invaders.  We ignored the termites in the walls, so to speak.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://sharethis.com/item?publisher=4bc7005e-aa8c-421e-a726-24badd341a96&amp;amp;title=Don%26%238217%3Bt+spend+your+termite+poison+money+on+insurance+against+Martian+invasions.&amp;amp;url=http%3A%2F%2Fblog.tplus1.com%2Findex.php%2F2008%2F07%2F03%2Fdont-spend-your-termite-poison-money-on-insurance-against-martian-invasions%2F&quot;&gt;ShareThis&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/tplus1/wtPt?a=WNrxJ0&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/tplus1/wtPt?i=WNrxJ0&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 15:11:37 +0000</pubDate>
</item>
<item>
	<title>Holy Shmoly: More ways to stop spammers and unwanted traffic</title>
	<guid>http://ocaoimh.ie/?p=89493794</guid>
	<link>http://feeds.feedburner.com/~r/HolyShmoly/~3/325710241/</link>
	<description>&lt;p&gt;&lt;strong&gt;Comment spammers&lt;/strong&gt;, trackback spam, stupid bots and AVG linkscanner eating into your bandwidth and server resources? Here&amp;#8217;s how to put a dent in their activities with a few mod_rewrite rules.&lt;/p&gt;
&lt;p&gt;I hate those blogs that send me fake trackbacks and pingbacks. Unfortunately it&amp;#8217;s impossible to stop but this morning I figured out a way of stopping some of them.&lt;/p&gt;
&lt;p&gt;Look through the log files of your web server for the string &amp;#8216; &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&amp;#8216;. Lots of requests there aren&amp;#8217;t there? I found 914 requests yesterday. Those are requests without a USER_AGENT or HTTP_REFERER and almost all of them are suspicious because they weren&amp;#8217;t followed by requests for images, stylesheets. or Javascript files. Unfortunately the WordPress cron server also falls into this category so you need to filter out requests from your own server&amp;#8217;s IP address.&lt;/p&gt;
&lt;p&gt;This morning I checked up on a spam trackback that came in. This one came from 85.177.33.196:&lt;br /&gt;
&lt;blockquote&gt;URL: /xmlrpc.php&lt;br /&gt;
HTTP_RAW_POST_DATA: &amp;lt;?xml version=&amp;#8221;1.0&amp;#8243;?&gt;&lt;br /&gt;
&amp;lt;methodCall&gt;&lt;br /&gt;
&amp;lt;methodName&gt;pingback.ping&amp;lt;/methodName&gt;&lt;br /&gt;
&amp;lt;params&gt;&lt;br /&gt;
&amp;lt;param&gt;&lt;br /&gt;
&amp;lt;value&gt;&amp;lt;string&gt;http://7wins.&amp;nbsp;eu/cbprod/detail_10347/cure+your+tight+foreskin.html&amp;lt;/string&gt;&amp;lt;/value&gt;&lt;br /&gt;
&amp;lt;/param&gt;&lt;br /&gt;
&amp;lt;param&gt;&lt;br /&gt;
&amp;lt;value&gt;&amp;lt;string&gt;http://ocaoimh.ie/2005/03/01/i-am-bored-sites-for-when-youre-bored/all-comments/&amp;lt;/string&gt;&amp;lt;/value&gt;&lt;br /&gt;
&amp;lt;/param&gt;&lt;br /&gt;
&amp;lt;/params&gt;&lt;br /&gt;
&amp;lt;/methodCall&gt;&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;I looked through my log files for that IP address and discovered the following:&lt;br /&gt;
&lt;blockquote&gt;85.177.33.196 - - [03/Jul/2008:06:40:01 +0000] &amp;#8220;GET /2005/02/18/10-more-ways-to-make-money-with-your-digital-cameras/ HTTP/1.0&amp;#8243; 200 36151 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
85.177.33.196 - - [03/Jul/2008:07:04:18 +0000] &amp;#8220;GET /2007/06/07/im-not-the-only-one-to-love-the-alfa-147/ HTTP/1.0&amp;#8243; 200 44967 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
85.177.33.196 - - [03/Jul/2008:08:09:40 +0000] &amp;#8220;GET /2005/03/01/i-am-bored-sites-for-when-youre-bored/all-comments/ HTTP/1.0&amp;#8243; 200 410423 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
85.177.33.196 - - [03/Jul/2008:08:09:44 +0000] &amp;#8220;POST /xmlrpc.php HTTP/1.0&amp;#8243; 200 249 &amp;#8220;-&amp;#8221; &amp;#8220;XML-RPC for PHP 2.2.1&amp;#8243;&lt;br /&gt;
85.177.33.196 - - [03/Jul/2008:09:00:09 +0000] &amp;#8220;GET /2007/10/28/what-time-is-it-wordpress/ HTTP/1.0&amp;#8243; 200 63332 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;So, the spammer grabs &amp;#8220;/2005/03/01/i-am-bored-sites-for-when-youre-bored/all-comments/&amp;#8221; at 8:09am and 4 seconds later sends a trackback spam to the same blog post. Annoying isn&amp;#8217;t it?&lt;/p&gt;
&lt;p&gt;The following mod_rewrite rules will kill those fake GET requests dead.&lt;br /&gt;
&lt;blockquote&gt;# stop requests with no UA or referrer&lt;br /&gt;
RewriteCond %{HTTP_REFERER} ^$&lt;br /&gt;
Rewritecond %{HTTP_USER_AGENT} ^$&lt;br /&gt;
RewriteCond %{REMOTE_ADDR} !^64\.22\.71\.36$&lt;br /&gt;
RewriteRule ^(.*) - [F]&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;Replace &amp;#8220;64\.22\.71\.36&amp;#8243; with the IP address of your own server. If you don&amp;#8217;t know what it is, look through your logs for requests for wp-cron.php, run &lt;code&gt;ifconfig&lt;/code&gt; from the command line, or check with your hosting company.&lt;br /&gt;
Here are a few of the requests already stopped this morning:&lt;br /&gt;
&lt;blockquote&gt;72.21.40.122 - - [03/Jul/2008:09:59:59 +0000] &amp;#8220;GET /2005/04/02/photo-matt-a-response-to-the-noise/ HTTP/1.1&amp;#8243; 403 248 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
216.32.81.66 - - [03/Jul/2008:10:00:11 +0000] &amp;#8220;GET /2006/12/14/bupa-to-leave-irish-market/ HTTP/1.1&amp;#8243; 403 240 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
66.228.208.166 - - [03/Jul/2008:10:03:18 +0000] &amp;#8220;GET /2008/05/23/youre-looking-so-silly-wii-fit HTTP/1.1&amp;#8243; 403 212 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
216.32.81.74 - - [03/Jul/2008:10:04:52 +0000] &amp;#8220;GET /1998/03/22/for-the-next-month-o/ HTTP/1.1&amp;#8243; 403 234 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
69.46.20.87 - - [03/Jul/2008:10:06:06 +0000] &amp;#8220;GET /2006/10/01/killing-off-php/ HTTP/1.1&amp;#8243; 403 229 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;br /&gt;
72.21.58.74 - - [03/Jul/2008:10:07:54 +0000] &amp;#8220;GET /2005/08/12/thunderbird-feeds-and-messages-duplicates/ HTTP/1.1&amp;#8243; 403 255 &amp;#8220;-&amp;#8221; &amp;#8220;-&amp;#8221;&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;Some spam bots are stupid. They don&amp;#8217;t know where your wp-comments-post.php is. That&amp;#8217;s the file your comment form feeds when a comment is made. If your blog is installed in the root, &amp;#8220;/&amp;#8221;, of your domain you can add this one line to stop the 404 requests generated:&lt;br /&gt;
&lt;blockquote&gt;RewriteRule ^(.*)/wp-comments-post.php - [F,L]&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;Trackbacks and pingbacks almost always come from sane looking user agents. They usually have the blog or forum software name to identify them. Look for &amp;#8220;/trackback/&amp;#8221; POSTs in your logs. Notice how 99% of them have browser names in them? Here&amp;#8217;s how to stop them, and this has been &lt;a href=&quot;http://www.tomrafteryit.net/blocking-trackback-spam-using-htaccess/&quot;&gt;documented&lt;/a&gt; for a &lt;em&gt;long&lt;/em&gt; time:&lt;br /&gt;
&lt;blockquote&gt;RewriteCond %{HTTP_USER_AGENT} ^.*(Opera|Mozilla|MSIE).*$ [OR]&lt;br /&gt;
RewriteCond %{HTTP_USER_AGENT} ^$&lt;br /&gt;
RewriteCond %{REQUEST_METHOD} ^POST$&lt;br /&gt;
RewriteRule ^(.*)/trackback/ - [F,L]&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve been using that chunk of code for ages. It works exceptionally well. This was prompted by a deluge of 40,000 spam trackbacks this site received in one day a few months ago. &lt;/p&gt;
&lt;p&gt;If you use my &lt;a href=&quot;http://ocaoimh.ie/cookies-for-comments/&quot;&gt;Cookies for Comments&lt;/a&gt; plugin. Check your browser for the cookie it leaves and use the following code to block almost all of your comment spam:&lt;br /&gt;
&lt;blockquote&gt;RewriteCond %{HTTP_COOKIE} !^.*put_cookie_value_here.*$&lt;br /&gt;
RewriteRule ^wp-comments-post.php - [F,L]&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;That will block the spammers even before they hit any PHP script. Your server will breeze through the worst spam attempts. It blocked 2308 comment spam attempts yesterday. Unfortunately it also stops the occasional human visitor leaving a comment but I think it&amp;#8217;s worth it.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Do something different. That&amp;#8217;s what you have to do. Place a hurdle before the spammers and they&amp;#8217;ll fall. On that note, I shouldn&amp;#8217;t really be blogging all this, but almost all these ideas can be found elsewhere already and the spammers still haven&amp;#8217;t adapted.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unwanted traffic?&lt;/strong&gt; What&amp;#8217;s that? Surely all visitors are good? Nope, unfortunately not. Robert &lt;a href=&quot;http://blog.sweetnam.eu/2008/06/28/avg-antivirus-sending-me-lots-of-unwanted-traffic-and-how-i-dealt-with-it/&quot;&gt;alerted me&lt;/a&gt; to the fact that AVG anti-virus now includes an AJAX powered browser plugin called &amp;#8220;Linkscanner&amp;#8221; that scans all the links on search engine result pages for viruses and malicious code. Unfortunately that generates a huge number of requests for pages that are never even seen by the visitor. I counted over 7,000 hits yesterday.&lt;/p&gt;
&lt;p&gt;Thankfully Padraig Brady &lt;a href=&quot;http://www.pixelbeat.org/docs/web/avg_linkscanner.html&quot;&gt;has a solution&lt;/a&gt;. I hope he doesn&amp;#8217;t mind if I reprint his mod_rewrite rules here (unfortunately WordPress changes the &amp;#8221; character so you&amp;#8217;ll have to change them back, or grab the code from Padraig&amp;#8217;s page.)&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;#Here we assume certain MSIE 6.0 agents are from linkscanner&lt;br /&gt;
#redirect these requests back to avg in the hope they&amp;#8217;ll see their silliness&lt;br /&gt;
Rewritecond %{HTTP_USER_AGENT} &amp;#8220;.*MSIE 6.0; Windows NT 5.1; SV1.$&amp;#8221; [OR]&lt;br /&gt;
Rewritecond %{HTTP_USER_AGENT} &amp;#8220;.*MSIE 6.0; Windows NT 5.1;1813.$&amp;#8221;&lt;br /&gt;
RewriteCond %{HTTP_REFERER} ^$&lt;br /&gt;
RewriteCond %{HTTP:Accept-Encoding} ^$&lt;br /&gt;
RewriteRule ^.* http://www.avg.com/?LinkScannerSucks [R=307,L]&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&quot;http://ocaoimh.ie/?voyeur=1&quot; /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Related Posts&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2008/03/06/please-sir-can-i-have-more/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Please sir, can I have more?&quot;&gt;Please sir, can I have more?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2002/11/25/kernel-traffic-192/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Kernel Traffic #192 For 18 Nov &amp;#8230;&quot;&gt;Kernel Traffic #192 For 18 Nov &amp;#8230;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://ocaoimh.ie/2002/12/11/learning-by-shipping/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Learning by Shipping - this re &amp;#8230;&quot;&gt;Learning by Shipping - this re &amp;#8230;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=Ph0EsJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=Ph0EsJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=GYrOBj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=GYrOBj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=JAiGnj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=JAiGnj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/HolyShmoly?a=zO8Q6j&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/HolyShmoly?i=zO8Q6j&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/HolyShmoly/~4/325710241&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 03 Jul 2008 11:18:45 +0000</pubDate>
</item>
<item>
	<title>Caffeinated: 8 days and a wake up</title>
	<guid>http://www.anothercaffeinatedday.com/blog/default/macbloc/?permalink=8-days-and-a-wake-up.html</guid>
	<link>http://www.anothercaffeinatedday.com/blog/default/macbloc/?permalink=8-days-and-a-wake-up.html</link>
	<description>&lt;p&gt;iPhone.&lt;/p&gt;
&lt;p&gt;Some might call me a chump. Others might call me smart for holding out and not jumping in, waters untested.&lt;/p&gt;
&lt;p&gt;I like to think I'm firmly planted in the latter group.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 11:03:08 +0000</pubDate>
</item>
<item>
	<title>Simon Rumble: Dear King Pig</title>
	<guid>http://www.rumble.net/blog/Right_to_protest</guid>
	<link>http://www.rumble.net/blog/index.cgi/politix/Right_to_protest.html</link>
	<description>&lt;p&gt;My mate Don sent a letter to the King Pig and the Special Minister
for World (Catholic) Youth Day in NSW in regards to his freedom to
annoy Catholics.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Dear Minister&lt;/p&gt;
&lt;p&gt;It was my intention to be involved in a peaceful demonstration over
the Pope's supposed World Youth Day on July  I am concerned by reports
in the media, primarily the Sydney Morning Herald, that I will be
breaking the law and risk jail or a fine.&lt;/p&gt;

&lt;p&gt;Could you please clarify that I will not be breaking the law if I:
&lt;ul&gt;&lt;li&gt;assemble at Taylor Square, Darlinghurst at 12pm 19 July with
other like minded citizens.&lt;/li&gt;
&lt;li&gt;wear a T-shift of the English folk/rock band Chumbawumba. The
T-shirt is plain black and says in grey writing &quot;Chumbawumba&quot; on the
back &quot;Atheist&quot; on the front.&lt;/li&gt;
&lt;li&gt;I will be carrying a cardboard placard A2 size. One side will say
&quot;Miranda Devine Sux&quot; and the other side will say &quot;World Peas&quot; with a
picture of some small green vegetables.&lt;/li&gt;
&lt;li&gt;Offer condoms to passed by, in a respectful, polite and peaceful
manner.&lt;/li&gt;
&lt;li&gt;Possibly sing or chant harmless songs - such as one of my old
rugby favourites &quot;Has anybody seen JC&quot; lyrics at &lt;a href=&quot;http://www.guysrugby.com/songs.asp&quot;&gt;http://www.guysrugby.com/songs.asp&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Thank you kindly&lt;/p&gt;
&lt;p&gt;Don McCallum&lt;/p&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Stanmore&lt;/p&gt;&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.rumble.net/contact/&quot;&gt;Contact me&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 10:10:10 +0000</pubDate>
</item>
<item>
	<title>Simon Rumble: Wow, there's still web agencies who think Flash is cool</title>
	<guid>http://www.rumble.net/blog/The_Farm_Digital</guid>
	<link>http://www.rumble.net/blog/index.cgi/geek/The_Farm_Digital.html</link>
	<description>&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.thefarmdigital.com.au/&quot;&gt;&lt;img src=&quot;http://rumble.smugmug.com/photos/324377176_WFPhR-O.png&quot; alt=&quot;The
Farm Digital&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Wow, I can't believe there's still &lt;a href=&quot;http://www.thefarmdigital.com.au/&quot;&gt;web agencies&lt;/a&gt; who do
everything in Flash.  This technique is so effective, the above is
what Google can see of their site.  That's right, the title.&lt;/p&gt;
&lt;p&gt;Supposedly Adobe is working with the search engines to index the
internals of Flash crap.  I can see this ending in tears.  They're
either going to expose internals that were never intended to be
visible (like the kind of people who do Flash know &lt;i&gt;anything&lt;/i&gt;
about security) or the designer will have to explicitely list
keywords, which will end up being as useful as meta keywords.&lt;/p&gt;&lt;p align=&quot;right&quot;&gt;&lt;a href=&quot;http://www.rumble.net/contact/&quot;&gt;Contact me&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 09:59:59 +0000</pubDate>
</item>
<item>
	<title>A Moment of Clarity: Chapter 3 Page 2</title>
	<guid>http://claritycomic.com/2008/07/03/chapter-3-page-02-61cbf1d/</guid>
	<link>http://claritycomic.com/2008/07/03/chapter-3-page-02-61cbf1d/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://claritycomic.com/2008/07/03/chapter-3-page-02-61cbf1d/&quot;&gt;&lt;img src=&quot;http://claritycomic.com/comics/2008-07-03-chapter-3-page-02-61cbf1d.jpeg&quot; border=&quot;0&quot; alt=&quot;Comic&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Last year at SPX I took this picture:&lt;/p&gt;
&lt;p&gt;&lt;img class=&quot;aligncenter&quot; src=&quot;http://www.coswellproductions.com/wordpress/wp-content/cplphotos/48/i/mark_mcmurray_mark_griffin-600x500o.jpg?1215047078&quot; alt=&quot;&quot; width=&quot;571&quot; height=&quot;499&quot; /&gt;&lt;/p&gt;
&lt;p&gt;The guy on the upper left is &lt;a href=&quot;http://mark.mcmurray.de/&quot;&gt;Mark McMurray&lt;/a&gt;, the first person I ever shared a table with at a comic book convention (SPX 2005). The guy whose head he&amp;#8217;s licking is Mark Griffin, who I met the next year at SPX 2006.  I took this picture at SPX 2007. And, about a week before MoCCA 2008, &lt;a href=&quot;http://ourfriendtheatomrecordings.com/karma/index.htm&quot;&gt;Mark Griffin passed away&lt;/a&gt; after a long battle with cancer.  He was working on a comic about it called &lt;a href=&quot;http://ourfriendtheatomrecordings.com/karma/pagelist.html&quot;&gt;Karma Shmarma&lt;/a&gt;, which is now unfinished.&lt;/p&gt;
&lt;p&gt;Mark was a very cool guy.  I only met him a few times at MoCCA and SPX, and now I wish that I had been able to hang out with him more.  He will be missed.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 07:00:00 +0000</pubDate>
</item>
<item>
	<title>Bryan Forbes: Twitter Updates for 2008-07-02</title>
	<guid>http://www.reigndropsfall.net/2008/07/02/twitter-updates-for-2008-07-02/</guid>
	<link>http://www.reigndropsfall.net/2008/07/02/twitter-updates-for-2008-07-02/</link>
	<description>&lt;ul class=&quot;aktt_tweet_digest&quot;&gt;
&lt;li&gt;Making homemade ice cream&amp;#8230; mmmmm &lt;a href=&quot;http://twitter.com/BryanForbes/statuses/848714423&quot;&gt;#&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;aktt_credit&quot;&gt;Powered by &lt;a href=&quot;http://alexking.org/projects/wordpress&quot;&gt;Twitter Tools&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 05:59:59 +0000</pubDate>
</item>
<item>
	<title>Kirby's Photo Review: 802 Crescent, Unit B Movein condition</title>
	<guid>http://pics.omnux.com/c5e7efc434f119e25680a7862dbdef62</guid>
	<link>http://pics.omnux.com/Champaign-802BCrescentMovein20080216</link>
	<description>&lt;a href=&quot;http://pics.omnux.com/Champaign-802BCrescentMovein20080216&quot;&gt;&lt;img src=&quot;http://pics.omnux.com/al/Champaign-802BCrescentMovein20080216/802_B_Crescent_Movein_condition_001.thumb.jpg&quot; width=&quot;113&quot; height=&quot;150&quot; border=&quot;0&quot; border=&quot;0&quot; alt=&quot;&quot; title=&quot;&quot; name=&quot;photo_j&quot; /&gt;&lt;/a&gt;&lt;br /&gt;</description>
	<pubDate>Thu, 03 Jul 2008 02:31:30 +0000</pubDate>
</item>
<item>
	<title>Mary Gardiner: Microblogging</title>
	<guid>http://puzzling.org/logs/thoughts/2008/July/3/microblogging</guid>
	<link>http://puzzling.org/logs/thoughts/2008/July/3/microblogging</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://tau-iota-mu-c.livejournal.com/130832.html&quot;&gt;Tim Connors&lt;/a&gt;
and &lt;a href=&quot;http://blog.andrew.net.au/2008/07/02#microblogging&quot;&gt;Andrew
Pollock&lt;/a&gt; are bothered by microblogging syndicated on &lt;a href=&quot;http://planet.linux.org.au/&quot;&gt;Planet Linux Australia&lt;/a&gt;. This promises to
be an absolute pile-on in the bikeshedding manner, that is, very few people are
competent to comment on blog entries about SQL database underpinnings or
encryption design, but microblogging is exactly the sort of thing everyone has
an opinion on and shortly we'll hear them all. I hope I'm early in the
crush...&lt;/p&gt;

&lt;p&gt;Microblogging itself varies in appeal for me as much as any other kind of
blogging. I guess the highs aren't quite so high: I've never seen a Twitter I
wanted to bookmark. But they're 140 characters, plenty short enough to skim
even if they aren't changing the world. I am not a huge fan of microblogging
that is clearly written for either the writer themselves (unadorned &lt;q&gt;having
dinner&lt;/q&gt; &lt;q&gt;working late&lt;/q&gt; without any attempt to write about it in a such
a way as other people might want to read) or as an alternative to SMSing a
significant other your plans for the evening. But most of it is about the same
quality and style as the random jabs at the world people occasionally insert
into IRC (in fact Andrew Bennetts should have a twitter account, but never
will), so, fine.&lt;/p&gt;

&lt;p&gt;However I too do not generally find people syndicating their microblogging
to their main blog very interesting. Firstly, if I want to read your twitter
feed, I'm already subscribed to it through Twitter, so having it pop up in your
main blog is just two copies of the same thing. If the other microblogging
sites take off enough I'll add people to my feed reader instead. The same is
usually true of del.icio.us aggregations, &lt;a href=&quot;http://pipka.org/blog/category/delicious/&quot;&gt;Pia&lt;/a&gt; and &lt;a href=&quot;http://bethesignal.org/blog/category/delicious/&quot;&gt;Jeff&lt;/a&gt; Waugh being
something of an exception because they provide commentary aimed at readers. I
certainly won't be syndicating &lt;a href=&quot;http://del.icio.us/mary&quot;&gt;my del.icio.us
feed&lt;/a&gt; any time soon, it's entirely aimed at me and if you want to subscribe
that's your lookout.&lt;/p&gt;

&lt;p&gt;For Planets, I suggest the solution is to add a sidebar or two for
microblogging and links provided by Planet authors. This enables feed discovery
and mild entertainment for people who like the microblogging, but means that
people aren't stumbling on 30 character thoughts or unadorned collections of
links when they expected substantive prose. In this model, people syndicating
that stuff to their main blog are required to figure out how to exclude it from
what the Planet aggregates.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Jul 2008 00:10:29 +0000</pubDate>
</item>
<item>
	<title>Martin Barry: Links of the Day: July 03, 2008</title>
	<guid>http://supine.com/weblog/2008/07/03#2008-07-03</guid>
	<link>http://supine.com/weblog/2008/07/03#2008-07-03</link>
	<description>&lt;a href=&quot;http://hurvitz.org/blog/2008/06/linkedin-architecture&quot;&gt;Oren Hurvitzâ€™s Blog - LinkedIn Architecture&lt;/a&gt;&lt;br /&gt;
&quot;At JavaOne 2008, LinkedIn employees presented two sessions about the LinkedIn architecture.&quot;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://lethargy.org/~jesus/archives/122-Scalability-and-concessions.html&quot;&gt;Esoteric Curio - Scalability and concessions&lt;/a&gt;&lt;br /&gt;
Follow up... &quot;I would like to comment on something I see repeated again and again and is likely misinterpreted by young scalability architects.  The statement of what you should expect to lose when you scale up/out.&quot;&lt;br /&gt;
&lt;br /&gt;</description>
	<pubDate>Thu, 03 Jul 2008 00:00:58 +0000</pubDate>
</item>
<item>
	<title>Matt Walker: Remote Control Extender, convert your IR remote to RF.</title>
	<guid>http://mrmatt57.org/?p=60</guid>
	<link>http://feeds.mrmatt57.org/~r/mrmatt57/~3/325302036/</link>
	<description>&lt;p&gt;&lt;img src=&quot;http://static.mrmatt57.org/img/IR_RF_Remote_header.jpg&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Are you sick of playing target practice with your remote controls?&lt;/p&gt;
&lt;p&gt;I tried several &amp;#8220;remote control extenders&amp;#8221;.  Most of them relayed the infrared signal from one room to another.  You still had to point the remote at the sensor and in most cases aim it.  When I stumbled across the &lt;a href=&quot;http://www.amazon.com/gp/product/B000C1Z0HA?ie=UTF8&amp;#038;tag=matwalstecand-20&amp;#038;linkCode=as2&amp;#038;camp=1789&amp;#038;creative=9325&amp;#038;creativeASIN=B000C1Z0HA&quot;&gt;Next Generation Remote Control Extender&lt;/a&gt;&lt;img src=&quot;http://www.assoc-amazon.com/e/ir?t=matwalstecand-20&amp;#038;l=as2&amp;#038;o=1&amp;#038;a=B000C1Z0HA&quot; width=&quot;1&quot; height=&quot;1&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt; I was skeptical.  &amp;#8220;You put the what where?&amp;#8221;  Yes&amp;#8230; you put a Radio Frequency (RF) transmitter in place of one of the batteries in your Infrared (IR) remote.  Don&amp;#8217;t ask me how the thing works, but it transmits the signal to the odd looking receiver in the other room.  At first I thought the receiver was battery powered.  But it comes with an AC Adapter and actually charges the second smaller battery that powers the transmitter.  This way you always have a battery ready to go, brilliant.&lt;/p&gt;
&lt;p&gt;I am currently using Microsoft&amp;#8217;s Media Center &lt;a href=&quot;http://www.amazon.com/gp/product/B00066FIO6?ie=UTF8&amp;#038;tag=matwalstecand-20&amp;#038;linkCode=as2&amp;#038;camp=1789&amp;#038;creative=9325&amp;#038;creativeASIN=B00066FIO6&quot;&gt;Remote Control&lt;/a&gt;&lt;img src=&quot;http://www.assoc-amazon.com/e/ir?t=matwalstecand-20&amp;#038;l=as2&amp;#038;o=1&amp;#038;a=B00066FIO6&quot; width=&quot;1&quot; height=&quot;1&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt; and &lt;a href=&quot;http://www.amazon.com/gp/product/B000AOAAN8?ie=UTF8&amp;#038;tag=matwalstecand-20&amp;#038;linkCode=as2&amp;#038;camp=1789&amp;#038;creative=9325&amp;#038;creativeASIN=B000AOAAN8&quot;&gt;Keyboard&lt;/a&gt;&lt;img src=&quot;http://www.assoc-amazon.com/e/ir?t=matwalstecand-20&amp;#038;l=as2&amp;#038;o=1&amp;#038;a=B000AOAAN8&quot; width=&quot;1&quot; height=&quot;1&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt; with it and that they both work WAY better.  I was on the verge or replacing the keyboard because you really had to point it to have fluid mouse movements.  Now both remotes work on command and flawless in any room in my house!&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td width=&quot;190&quot;&gt;

			    &lt;a href=&quot;http://static.mrmatt57.org/img/IR_RF_Remote1.jpg&quot; class=&quot;highslide&quot;&gt; 
                &lt;img src=&quot;http://static.mrmatt57.org/img/IR_RF_Remote1_thumb.jpg&quot; alt=&quot;Infrared to RF Converter&quot; border=&quot;0&quot; id=&quot;P600&quot; title=&quot;Infrared to RF Converter&quot; /&gt;&lt;/a&gt; 
				

&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;

			    &lt;a href=&quot;http://static.mrmatt57.org/img/IR_RF_Remote2.jpg&quot; class=&quot;highslide&quot;&gt; 
                &lt;img src=&quot;http://static.mrmatt57.org/img/IR_RF_Remote2_thumb.jpg&quot; alt=&quot;Infrared to RF Converter 2&quot; border=&quot;0&quot; id=&quot;P601&quot; title=&quot;Infrared to RF Converter 2&quot; /&gt;&lt;/a&gt; 
				

&lt;/p&gt;
&lt;td valign=&quot;top&quot;&gt;

			    &lt;a href=&quot;http://static.mrmatt57.org/img/IR_RF_Remote3.jpg&quot; class=&quot;highslide&quot;&gt; 
                &lt;img src=&quot;http://static.mrmatt57.org/img/IR_RF_Remote3_thumb.jpg&quot; alt=&quot;Infrared to RF Converter Details&quot; border=&quot;0&quot; id=&quot;P602&quot; title=&quot;Infrared to RF Converter Details&quot; /&gt;&lt;/a&gt; 
				

&lt;/td&gt;


&lt;p&gt;Pros:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Super easy to setup.&lt;/li&gt;
&lt;li&gt;Works like any RF remote, no direct line of sight required, thought walls - up to 100&amp;#8242; away&lt;/li&gt;
&lt;li&gt;433.92 MHz - seems like a good frequency with little or no perceived interference.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cons:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I have heard it doesn&amp;#8217;t work with all remotes, but it has worked with ever one I have tried.&lt;/li&gt;
&lt;li&gt;Battery doesn&amp;#8217;t last long with one battery remotes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Conclusion:&lt;/p&gt;
&lt;p&gt;The technology and engineering behind this device is award winning.  It does exactly what it claims to do, convert almost any IR remote to RF.  I have been using it for about a month with great success!&lt;/p&gt;
&lt;p&gt;Get yours here:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?a=h3lc3J&quot;&gt;&lt;img src=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?i=h3lc3J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?a=N3CUXj&quot;&gt;&lt;img src=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?i=N3CUXj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?a=Rh0KMj&quot;&gt;&lt;img src=&quot;http://feeds.mrmatt57.org/~f/mrmatt57?i=Rh0KMj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</description>
	<pubDate>Wed, 02 Jul 2008 23:40:03 +0000</pubDate>
</item>
<item>
	<title>A Moment of Clarity: ComicPress Manager 0.9 Released!</title>
	<guid>http://claritycomic.com/2008/07/02/comicpress-manager-09-released/</guid>
	<link>http://claritycomic.com/2008/07/02/comicpress-manager-09-released/</link>
	<description>&lt;p&gt;This one was a big one.  Lots of big internal changes that improved performance, safety, and usability.  Among the changes:&lt;/p&gt;
&lt;ul&gt;&lt;span class=&quot;postbody&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;li&gt;Big Bug Fix: the plugin now only loads the editor widget JavaScript while in the ComicPress Manager plugin. This was a problem for folks like myself who put their wp-admin folder behind HTTP authentication. IF you were running an older version of the plugin, this particular upgrade is &lt;span&gt;very important&lt;/span&gt; , as it saves on bandwidth and improves security for your site.&lt;/li&gt;
&lt;li&gt;Now supports moving the WordPress folder to a different location on the server (see &lt;a href=&quot;http://www.lunchboxfunnies.com/forum/viewtopic.php?p=5889#5889&quot; target=&quot;_blank&quot;&gt;http://www.lunchboxfunnies.com/forum/viewtopic.php?p=5889#5889&lt;/a&gt; ). This requires that your comics folders be at in the same directory as the index.php file that you moved out of the wordpress directory.&lt;/li&gt;
&lt;li&gt;Improved config editor with more intuitive choices and more robust file writing (thanks to feedback from &lt;a class=&quot;postlink&quot; href=&quot;http://www.talkshoe.com/talkshoe/web/talkCast.jsp?masterId=16258&amp;amp;cmd=tc&quot; target=&quot;_blank&quot; class=&quot;postlink&quot;&gt;Sunday Funnies podcast #10&lt;/a&gt; )&lt;/li&gt;
&lt;li&gt;Prepare ComicPress Manager for &lt;a class=&quot;postlink&quot; href=&quot;http://codex.wordpress.org/User:Nbachiyski/I18n_for_WordPress_Developers&quot; target=&quot;_blank&quot; class=&quot;postlink&quot;&gt;internationalization&lt;/a&gt; .  If any one wants to offer to help translate CPM into another language, let me know.&lt;/li&gt;
&lt;li&gt;Improved comicpress-config.php write permission detection&lt;/li&gt;
&lt;li&gt;Improved config checks&lt;/li&gt;
&lt;li&gt;The ability to disable config checks for improved performance if you know your site is set up correctly&lt;/li&gt;
&lt;li&gt;The ability to upload any file to replace an existing comic&lt;/li&gt;
&lt;li&gt;Big UI improvements&lt;/li&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://wordpress.org/extend/plugins/comicpress-manager/&quot;&gt;Download the plugin&lt;/a&gt; and give it a span.  I&amp;#8217;ve started tagging the old releases, so if you have a problem, roll back to 0.8 and post a message on &lt;a href=&quot;http://www.lunchboxfunnies.com/forum/viewtopic.php?t=1227&quot;&gt;the thread on the Lunchbox Funnies forum&lt;/a&gt; .  Also, I&amp;#8217;m looking for translators!  If you have time, use the POT file in the plugin archive and send me a translation.&lt;/p&gt;</description>
	<pubDate>Wed, 02 Jul 2008 23:32:10 +0000</pubDate>
</item>
<item>
	<title>Mmm, Tasty!: Wild Thing Cafe</title>
	<guid>http://www.mmmtasty.ca/?p=99</guid>
	<link>http://www.mmmtasty.ca/2008/07/02/wild-thing-cafe/</link>
	<description>&lt;p&gt;&lt;a title=&quot;Cappuccino and biscotti by nyxie, on Flickr&quot; href=&quot;http://www.flickr.com/photos/nyxie/2618924265/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3126/2618924265_85ea76d011_m.jpg&quot; alt=&quot;Cappuccino and biscotti&quot; hspace=&quot;3&quot; width=&quot;240&quot; height=&quot;180&quot; align=&quot;left&quot; /&gt;&lt;/a&gt;Another cafe has opened up in the Annex.  I know, I know, we probably don&amp;#8217;t need another cafe in the Annex, right?  But this one is doing things a little differently, and I think they can make it work.&lt;/p&gt;
&lt;p&gt;Honestly, I would have walked by this Borden Street cafe without giving it much of a second glance.  From the outside it seems pretty unremarkable, with it&amp;#8217;s retro &amp;#8216;Manny&amp;#8217;s Coffee Shop&amp;#8217; Pepsi sign, left over from the previous business. Once inside, however, you&amp;#8217;re greeted with a cute cafe with comfortable seating and a good menu.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;Croissant and Macchiato by nyxie, on Flickr&quot; href=&quot;http://www.flickr.com/photos/nyxie/2618924305/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3098/2618924305_f09a15aeb2_m.jpg&quot; alt=&quot;Croissant and Macchiato&quot; width=&quot;240&quot; height=&quot;180&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;The coffee menu contains all the usual suspects: cappuccino, latte, espresso, mochas, and various iced drinks.  I ordered a macchiato and Rich ordered a cappuccino. I was very pleased to find the owner asking how I wanted my macchiato: with just a hint of foam, or more milky.  Asking for just a hint of foam turned up exactly what I would expect in a good macchiato: nice espresso, good crema, and a hint of foam.  Delicious.  My croissant was nothing special, but it was buttery and got my pastry craving under control.  Rich&amp;#8217;s biscotti was good, full of fruit and nuts.&lt;/p&gt;
&lt;p&gt;Wild Thing is also offering homemade gelato, in a variety of interesting flavours  such as pineapple and basil, mayan chocolate, and vodka and grapefruit.  They also offer gelato with espresso, an Italian dessert known as an affogato.&lt;/p&gt;
&lt;p&gt;Lunches here also look promising: a panini served with a side salad for $6.50.  I&amp;#8217;ll be back to try one of those soon.&lt;/p&gt;
&lt;p&gt;Has anyone else been here? What did you think?&lt;/p&gt;
&lt;p&gt;Wild Thing: 196 Borden Street (Just off Harbord), &lt;a href=&quot;http://thewildthing.ca/&quot;&gt;http://thewildthing.ca/&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 02 Jul 2008 23:14:41 +0000</pubDate>
</item>
<item>
	<title>In Photos: Kinsale at Night</title>
	<guid>http://inphotos.org/?p=2490</guid>
	<link>http://inphotos.org/kinsale-at-night/</link>
	<description>&lt;div align=&quot;center&quot;&gt;&lt;img src=&quot;http://inphotos.org/wp-content/uploads/2008/07/kinsale-at-night.jpg&quot; alt=&quot;&quot; title=&quot;Kinsale at night&quot; class=&quot;alignnone size-full wp-image-2491&quot; /&gt;&lt;/div&gt;
&lt;p&gt;The quiet, residential part of Kinsale as photographed from the busy touristy part across the harbour! This was a long exposure shot that came out quite nicely but it did show up the dead pixels on my sensor again. Good thing I don&amp;#8217;t have time to shoot many of these types of photos nowadays.&lt;/p&gt;
&lt;p&gt;The fight against comment spammers never ends. This blog is listed on a few &amp;#8220;do follow&amp;#8221; listings and I caught someone this morning &lt;a href=&quot;http://inphotos.org/begging/#comment-204959&quot;&gt;leaving a comment&lt;/a&gt; after they came here from a &amp;#8220;site:inphotos.org&amp;#8221; Google search. The comment is &lt;a href=&quot;http://alexking.org/projects/wordpress&quot;&gt;delinked&lt;/a&gt; but even if I hadn&amp;#8217;t, his url still wouldn&amp;#8217;t have shown because I only show it after a certain number of comments have been made. It&amp;#8217;s my thank you to the regular commenters here. The pagerank you get from that link isn&amp;#8217;t diluted by the spammers.&lt;/p&gt;
&lt;p&gt;PS. &lt;a href=&quot;http://www.iced-coffee.com/&quot;&gt;Phil O&amp;#8217;Kane&lt;/a&gt; will be in Cork next weekend from Friday to Sunday. I&amp;#8217;ll be meeting him at Robodock at 3pm and hopefully before but maybe we can get a small photomeet together at some stage on Saturday or Sunday?&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://inphotos.org/?voyeur=1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Related Posts&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/skyhawk/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Skyhawk&quot;&gt;Skyhawk&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/me-and-justin/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Me and Justin&quot;&gt;Me and Justin&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://inphotos.org/paul-street-by-night/&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link: Paul Street by night&quot;&gt;Paul Street by night&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;
	Tags: &lt;a href=&quot;http://inphotos.org/tag/birds/&quot; title=&quot;Birds&quot; rel=&quot;tag&quot;&gt;Birds&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/boats/&quot; title=&quot;boats&quot; rel=&quot;tag&quot;&gt;boats&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/canon-20d/&quot; title=&quot;Canon 20D&quot; rel=&quot;tag&quot;&gt;Canon 20D&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork/&quot; title=&quot;Cork&quot; rel=&quot;tag&quot;&gt;Cork&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/cork-photos/&quot; title=&quot;Cork Photos&quot; rel=&quot;tag&quot;&gt;Cork Photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/harbour/&quot; title=&quot;harbour&quot; rel=&quot;tag&quot;&gt;harbour&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/ireland/&quot; title=&quot;Ireland&quot; rel=&quot;tag&quot;&gt;Ireland&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irish-photos/&quot; title=&quot;Irish photos&quot; rel=&quot;tag&quot;&gt;Irish photos&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/irishblogs/&quot; title=&quot;irishblogs&quot; rel=&quot;tag&quot;&gt;irishblogs&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/kinsale/&quot; title=&quot;Kinsale&quot; rel=&quot;tag&quot;&gt;Kinsale&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/lights/&quot; title=&quot;Lights&quot; rel=&quot;tag&quot;&gt;Lights&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/long-exposure/&quot; title=&quot;Long Exposure&quot; rel=&quot;tag&quot;&gt;Long Exposure&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/night/&quot; title=&quot;Night&quot; rel=&quot;tag&quot;&gt;Night&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/sea/&quot; title=&quot;Sea&quot; rel=&quot;tag&quot;&gt;Sea&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/sigma-18-200/&quot; title=&quot;Sigma 18-200&quot; rel=&quot;tag&quot;&gt;Sigma 18-200&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/swans/&quot; title=&quot;swans&quot; rel=&quot;tag&quot;&gt;swans&lt;/a&gt;, &lt;a href=&quot;http://inphotos.org/tag/water/&quot; title=&quot;Water&quot; rel=&quot;tag&quot;&gt;Water&lt;/a&gt;&lt;br /&gt;</description>
	<pubDate>Wed, 02 Jul 2008 19:38:30 +0000</pubDate>
</item>
<item>
	<title>Wanderlust Traveler: Over 8 million firefox 3 downloads!</title>
	<guid>tag:blogger.com,1999:blog-7336630389671257817.post-6821364261206288935</guid>
	<link>http://blog.wanderlusttraveler.net/2008/07/over-8-million-firefox-3-downloads.html</link>
	<description>&lt;img src=&quot;http://www.ksphotography.us/blog/Picture1.D5T3tISEAUh7.jpg&quot; alt=&quot;Picture1.D5T3tISEAUh7.jpg&quot; width=&quot;741&quot; height=&quot;565&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks to all who participated and to the Mozilla Devs!&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=PlkLeJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=PlkLeJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=qXJKvJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=qXJKvJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=Bw8CDJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=Bw8CDJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=huJJ1j&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=huJJ1j&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=R8uv6J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=R8uv6J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=iNC8Fj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=iNC8Fj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=kdfaEJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=kdfaEJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?a=cfhSHJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WanderlustTraveler?i=cfhSHJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</description>
	<pubDate>Wed, 02 Jul 2008 19:52:24 +0000</pubDate>
</item>
<item>
	<title>Caffeinated: Back from the edge</title>
	<guid>http://www.anothercaffeinatedday.com/blog/default/?permalink=Back-from-the-edge.html</guid>
	<link>http://www.anothercaffeinatedday.com/blog/default/?permalink=Back-from-the-edge.html</link>
	<description>&lt;p&gt;I've been on vacation with the wife and child.&lt;/p&gt;
&lt;p&gt;Three days in Virginia, USA. Specifically, Williamsburg. Precisely, two days in the parks of Anheuser-Busch's &lt;a href=&quot;http://www.buschgardens.com/BGW/default.aspx&quot;&gt;Busch Gardens Europe&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Pictured, for your enjoyment, is my new favorite thrill ride, &lt;a href=&quot;http://www.griffoncoaster.com/&quot;&gt;The Griffon&lt;/a&gt;. Damn. 205 feet. 90 degree drop. The pitch line, &amp;#8220;...the only way down... is straight down!,&amp;#8221; could not be more apropos.&lt;/p&gt;
&lt;p&gt;After the Griffon, everything in the park is &lt;em&gt;weak&lt;/em&gt;. I could spend the day on this thing.&lt;/p&gt;
meta-photo-album-thumbnail=griffonThumb.jpg
meta-photo-album=griffon2008.png</description>
	<pubDate>Wed, 02 Jul 2008 16:05:09 +0000</pubDate>
</item>
<item>
	<title>Bryan Liles: Subverting Rails Reserved Words</title>
	<guid>tag:smartic.us,2008-07-02:15931</guid>
	<link>http://smartic.us/2008/7/2/subverting-rails-reserved-words</link>
	<description>&lt;p&gt;I’ve been thinking about &lt;a href=&quot;http://cheat.errtheblog.com/s/rails_reserved_words/&quot;&gt;Rails reserved words&lt;/a&gt; lately, and I’ve come up with a solution that works in theory.  Before I share my solution, let me help you understand where my frustration comes from.&lt;/p&gt;


	&lt;p&gt;ActiveRecord makes database access pretty darn simple.  With two lines of code, you can be connected to a database and slurping data.  A while back, I was making a template system, and unsurprisingly, I had a ActiveRecord class named Template, and a controller named TemplatesController.&lt;/p&gt;


	&lt;p&gt;As soon as I did this, I started running into errors:&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://idisk.mac.com/osesm/Public/Pictures/Skitch/Action_Controller__Exception_caught-20080702-064151.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;What is happening here is that Rails is requiring an instance variable named @template, and I’ve stomped all over it by creating my own.&lt;/p&gt;


	&lt;p&gt;Here is another example of an error that had me boggled for way longer than it should have:&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://idisk.mac.com/osesm/Public/Pictures/Skitch/Action_Controller__Exception_caught-20080702-064419.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;This happens be it looks like Rails is depending on another instance variable.&lt;/p&gt;


	&lt;p&gt;My solution for instance variables simple.  In Views, Rails will set an instance variable with a not so common name.  I’m leaning towards &lt;code&gt;__variable_name__&lt;/code&gt; or even &lt;code&gt;__rails_instance_hash[:key]__&lt;/code&gt;.  This way, there isn’t any confusion when it comes to instance variable names.&lt;/p&gt;


	&lt;p&gt;Another space where there are conflicts are in ActiveRecord models.  You can’t have a text field called errors.&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://idisk.mac.com/osesm/Public/Pictures/Skitch/bryan%40dmac__tmp_template_test-20080702-065201.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;Rails assumes the errors method of your ActiveRecord object to be an instance of ActiveRecord::Errors.&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://idisk.mac.com/osesm/Public/Pictures/Skitch/bryan%40dmac__tmp_template_test-20080702-065302.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;In my opinion, this doesn’t make the most since.  I believe we could apply the double underscores here as well.  Instead of &lt;strong&gt;&lt;code&gt;#errors&lt;/code&gt;&lt;/strong&gt;, it would be &lt;strong&gt;&lt;code&gt;#__errors__&lt;/code&gt;&lt;/strong&gt;.  You should be able to have any attribute name as long as it is legal for the underlying database.  Rails should not be polluting your model namespace.&lt;/p&gt;


	&lt;p&gt;One problem with these changes is Rails has been like this for a few years now.  Old code would break, so these types of changes would have to be introduced in a major release.  The benefit of these changes could be huge.  Lessening the chance that your code will tramp over Rails internals could be a great thing.&lt;/p&gt;</description>
	<pubDate>Wed, 02 Jul 2008 11:02:36 +0000</pubDate>
</item>
<item>
	<title>Virtual Strategy Magazine: Top 10 Free Tools That Should Be In Every VMware Administrator’s Toolkit</title>
	<guid>http://www.virtual-strategy.com/Features/Top-10-Free-Tools-That-Should-Be-In-Every-VMware-Administrators-Toolkit.html</guid>
	<link>http://www.virtual-strategy.com/Features/Top-10-Free-Tools-That-Should-Be-In-Every-VMware-Administrators-Toolkit.html</link>
	<pubDate>Wed, 02 Jul 2008 08:42:55 +0000</pubDate>
</item>
<item>
	<title>Bryan Forbes: Twitter Updates for 2008-07-01</title>
	<guid>http://www.reigndropsfall.net/2008/07/01/twitter-updates-for-2008-07-01/</guid>
	<link>http://www.reigndropsfall.net/2008/07/01/twitter-updates-for-2008-07-01/</link>
	<description>&lt;ul class=&quot;aktt_tweet_digest&quot;&gt;
&lt;li&gt;Testing tweet (http://live.gnome.org/Tweet)&amp;#8230; very very nice &lt;a href=&quot;http://twitter.com/BryanForbes/statuses/847952974&quot;&gt;#&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;aktt_credit&quot;&gt;Powered by &lt;a href=&quot;http://alexking.org/projects/wordpress&quot;&gt;Twitter Tools&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Wed, 02 Jul 2008 05:59:59 +0000</pubDate>
</item>
<item>
	<title>Martin Barry: Links of the Day: July 02, 2008</title>
	<guid>http://supine.com/weblog/2008/07/02#2008-07-02</guid>
	<link>http://supine.com/weblog/2008/07/02#2008-07-02</link>
	<description>&lt;a href=&quot;http://www.nil.com/ipcorner/OSPFDefaultMysteries/&quot;&gt;The OSPF Default Mysteries&lt;/a&gt;&lt;br /&gt;
&quot;In this article, youâ€™ll see how the Open Shortest Path First (OSPF) protocol uses default routes and how various OSPF-generated default routes interact in typical network scenarios.&quot;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.uic.edu/htbin/cgiwrap/bin/ojs/index.php/fm/rt/printerFriendly/2125/1972&quot;&gt;Key differences between Web 1.0 and Web 2.0&lt;/a&gt;&lt;br /&gt;
&quot;Web 2.0 is a buzzword introduced in 2003â€“04 which is commonly used to encompass various novel phenomena on the World Wide Web. Although largely a marketing term...&quot;&lt;br /&gt;
&lt;br /&gt;</description>
	<pubDate>Wed, 02 Jul 2008 00:00:56 +0000</pubDate>
</item>
<item>
	<title>RubyInside: Ruby and Rails Jobs for July 2008</title>
	<guid>http://www.rubyinside.com/ruby-rails-jobs-july-2008-939.html</guid>
	<link>http://feeds.feedburner.com/~r/RubyInside/~3/324370909/ruby-rails-jobs-july-2008-939.html</link>
	<description>&lt;p&gt;&lt;img src=&quot;http://www.rubyinside.com/wp-content/uploads/2008/07/jobsjobsjobsjobs.jpg&quot; width=&quot;296&quot; height=&quot;188&quot; alt=&quot;jobsjobsjobsjobs.gif&quot; /&gt;&lt;br /&gt;
&lt;small&gt;(Remix of an original &lt;a href=&quot;http://creativecommons.org/licenses/by/2.0/deed.en&quot;&gt;CC 2.0&lt;/a&gt; licensed &lt;a href=&quot;http://flickr.com/photos/joi/522695099/&quot;&gt;work&lt;/a&gt; by Joichi Ito.)&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;From the &lt;a href=&quot;http://jobs.rubyinside.com/&quot;&gt;Ruby Inside job board&lt;/a&gt; (&lt;em&gt;costs $99 for a 60 day listing - and you get featured on Ruby Inside like this&lt;/em&gt;) come a few new opportunities:&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;&lt;a href=&quot;http://ruby.jobamatic.com/a/jbb/job-details/21720&quot;&gt;&lt;strong&gt;Senior Java Developer with Ruby&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(Vonage, New Jersey) -&lt;/strong&gt; Vonage, the well known VoIP company, are looking for a software developer with both Java and Ruby experience. They offer a fun, casual and relaxed environment, a $100/month food credit, dry cleaning and laundry service, medical, dental and vision plans, as well as stock options. In return, you should have both strong knowledge and experience of both Java and Ruby. I suspect not a lot of people will meet the requirements for this job, but it could be extremely rewarding for someone who does!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://ruby.jobamatic.com/a/jbb/job-details/23863&quot;&gt;&lt;strong&gt;Incredible Systems/Network Administrator Required!&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(San Francisco, CA) -&lt;/strong&gt; Rapleaf, a fast growing SF-based startup in the personal information / privacy space, are looking for a systems and network administrator to manage their Linux (CentOS based, primarily) servers, backup systems, and other network requirements. You will need to be a hot-shot at systems administration and be ready to learn (or already know how) to scale Rails applications (and yes, Rails &lt;em&gt;can&lt;/em&gt; scale!)&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://ruby.jobamatic.com/a/jbb/job-details/23220&quot;&gt;&lt;strong&gt;Atlanta-based Experience Ruby on Rails Developer / Designer&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(Buford, GA) -&lt;/strong&gt; A small start-up in Atlanta is looking for an experienced software developer to help develop the next generation of their software. They seek a senior level developer with strong Ruby and Rails skills.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://jobs.rubyinside.com/a/jbb/job-details/21459&quot;&gt;&lt;strong&gt;Rails and JavaScript Developer&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(Pyromedia Studios, California) -&lt;/strong&gt; Pyromedia Studios are looking for a Ruby on Rails developer with JavaScript experience, preferably with experience with social networking and general Web design. Initially it&amp;#8217;d start as a 4 - 6 month contract but could turn into full-time employment, if desired. It seems as if off-site might be okay, but &lt;a href=&quot;http://jobs.rubyinside.com/a/jbb/job-details/21459&quot;&gt;contact them&lt;/a&gt; for details.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;If you or your company have openings for Ruby and/or Rails developers, consider checking out the Ruby Inside job board. Your job not only gets featured in the sidebar of every Ruby Inside page, but also summarized in posts like this. You could even leave a comment on this post if you want.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: There are even more jobs over at&lt;/em&gt; &lt;a href=&quot;http://jobs.rubynow.com/&quot;&gt;&lt;em&gt;RubyNow&amp;#8217;s jobs section&lt;/em&gt;&lt;/a&gt; &lt;em&gt;and on the&lt;/em&gt; &lt;a href=&quot;http://jobs.37signals.com/&quot;&gt;&lt;em&gt;37signals Job Board&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/RubyInside?a=gyCOBo&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/RubyInside?i=gyCOBo&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/RubyInside?a=WAcwpJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/RubyInside?i=WAcwpJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/RubyInside?a=clcLUj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/RubyInside?i=clcLUj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/RubyInside?a=NdjoBj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/RubyInside?i=NdjoBj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/RubyInside/~4/324370909&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 01 Jul 2008 21:48:31 +0000</pubDate>
</item>
<item>
	<title>Richard Harman: Happy hatch-day rikrose!</title>
	<guid>http://warewolf.livejournal.com/556377.html</guid>
	<link>http://warewolf.livejournal.com/556377.html</link>
	<description>Either your birthday needs to be a few days later, or blackhat &amp;amp; defcon need to be a few days earlier.  *grin*</description>
	<pubDate>Tue, 01 Jul 2008 21:23:34 +0000</pubDate>
</item>
<item>
	<title>Richard Harman: Need help finding tcpreplay-ish hardware solution</title>
	<guid>http://warewolf.livejournal.com/556219.html</guid>
	<link>http://warewolf.livejournal.com/556219.html</link>
	<description>I need (for work) an application similar to Niksun's NetDetector, or NetScout's nGenius Infinistream.  Searching google I  havn't been able to find products other than those two.  &lt;br /&gt;&lt;br /&gt;Basically something that just dumps stuff off the wire to disk, and then lets you search what it's saved.  Spiffy UI is useful, but the capability to dump a tcpdump .pcap file out of it is an absolute must.&lt;br /&gt;&lt;br /&gt;Any of you out there have any suggestions?  I'm look'in at you, &lt;span class=&quot;ljuser&quot;&gt;&lt;a href=&quot;http://thewronghands.livejournal.com/profile&quot;&gt;&lt;img src=&quot;http://p-stat.livejournal.com/img/userinfo.gif&quot; alt=&quot;[info]&quot; width=&quot;17&quot; height=&quot;17&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://thewronghands.livejournal.com/&quot;&gt;&lt;b&gt;thewronghands&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; :)</description>
	<pubDate>Tue, 01 Jul 2008 21:21:48 +0000</pubDate>
</item>
<item>
	<title>RubyInside: Rails Camp UK in August 2008: Wanna Hack Near London For A Weekend?</title>
	<guid>http://www.rubyinside.com/rails-camp-uk-2008-announcement-937.html</guid>
	<link>http://feeds.feedburner.com/~r/RubyInside/~3/324314146/rails-camp-uk-2008-announcement-937.html</link>
	<description>&lt;p&gt;&lt;img src=&quot;http://www.rubyinside.com/wp-content/uploads/2008/07/railscampuk.jpg&quot; width=&quot;339&quot; height=&quot;117&quot; alt=&quot;railscampuk.png&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: This item &lt;a href=&quot;http://www.railsinside.com/events/29-rails-camp-uk-august-2008.html&quot;&gt;has also been posted&lt;/a&gt; on Rails Inside. I don&amp;#8217;t tend to make it a habit of crossposting items, but as Rails Inside is still very new, I am sure many Ruby Inside readers will want to know about it. Beware, however, you will need to subscribe to Rails Inside to get the skinny on new Rails events in the long te