<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Thomas David Wright</title>
	<atom:link href="http://tdwright.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://tdwright.co.uk</link>
	<description>The life and works of Thomas David Wright</description>
	<pubDate>Sat, 23 Aug 2008 17:49:25 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>How to draw anything (in 1 step)</title>
		<link>http://tdwright.co.uk/2008/08/how-to-draw-anything-in-1-step/</link>
		<comments>http://tdwright.co.uk/2008/08/how-to-draw-anything-in-1-step/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 17:49:25 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Crumbs of the internet]]></category>

		<category><![CDATA[aviary]]></category>

		<category><![CDATA[dogs]]></category>

		<category><![CDATA[drawing]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=455</guid>
		<description><![CDATA[OK, haven&#8217;t posted in a while, but I laughed at this and Aviary have some great apps&#8230;
How to draw anything (in 1 step)

]]></description>
			<content:encoded><![CDATA[<p>OK, haven&#8217;t posted in a while, but I laughed at this and Aviary have some great apps&#8230;</p>
<p><a href="http://a.viary.com/bizblog/posts/how-to-draw-anything-in-1-step">How to draw anything (in 1 step)</a></p>
<p style="text-align:left;"><img class="size-medium wp-image-456" title="Draw Anything" src="http://tdwright.co.uk/wp-content/uploads/2008/08/drawanything08-300x199.jpg" alt="A dog in front of the earth" width="300" height="199" /></p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/how-to-draw-anything-in-1-step/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Free our Bills!</title>
		<link>http://tdwright.co.uk/2008/08/free-our-bills/</link>
		<comments>http://tdwright.co.uk/2008/08/free-our-bills/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 12:33:30 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Blitherings]]></category>

		<category><![CDATA[free our bills]]></category>

		<category><![CDATA[petetion]]></category>

		<category><![CDATA[politics]]></category>

		<category><![CDATA[theyworkforyou]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=446</guid>
		<description><![CDATA[
Thought I&#8217;d share another (vaguely) political whatsit with you today.
Theyworkforyou.com is a great resource for engaging with your local MP (or MEP, MSP etc&#8230;), seeing how they vote and how they compare with other MPs.
They&#8217;ve got a really interesting campaign on at the moment: Free our Bills!
Basically the idea is that UK parliament don&#8217;t publish [...]]]></description>
			<content:encoded><![CDATA[<p style="float:right"><a href="http://www.theyworkforyou.com/freeourbills" target="_blank"><img class="size-medium wp-image-450" title="Free our bills" src="http://tdwright.co.uk/wp-content/uploads/2008/08/bill3.jpg" alt="A duck-billed-platypus escaping somewhere" width="168" height="134" /></a></p>
<p>Thought I&#8217;d share another (vaguely) political whatsit with you today.</p>
<p>Theyworkforyou.com is a great resource for engaging with your local MP (or MEP, MSP etc&#8230;), seeing how they vote and how they compare with other MPs.</p>
<p>They&#8217;ve got a really interesting campaign on at the moment: <a href="http://www.theyworkforyou.com/freeourbills" target="_blank">Free our Bills!</a></p>
<p>Basically the idea is that UK parliament don&#8217;t publish the bills on which they vote in any sort of electronic format. This makes any sort of meaningful distribution absolutely impossible, which is ridiculous in this age of the internet. In addition to making distribution easier, theyworkforyou also have loads of other greta ideas for uses for the data - think email alerts and annotated explanations for a start!</p>
<p>If you need further selling on the idea, let me just say &#8216;XML&#8217; and &#8216;open source&#8217;. Oh, and take a look at the site to see other interesting stuff.</p>
<p>Go sign the petition,</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/free-our-bills/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tell Simon Burgess your views</title>
		<link>http://tdwright.co.uk/2008/08/tell-simon-burgess-your-views/</link>
		<comments>http://tdwright.co.uk/2008/08/tell-simon-burgess-your-views/#comments</comments>
		<pubDate>Mon, 11 Aug 2008 14:51:13 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Blitherings]]></category>

		<category><![CDATA[labour]]></category>

		<category><![CDATA[letter]]></category>

		<category><![CDATA[NHS]]></category>

		<category><![CDATA[politics]]></category>

		<category><![CDATA[simon burgess]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=443</guid>
		<description><![CDATA[Today I received a letter from Simon Burgess of Brighton Kemptown and Peacehaven Labour abour &#8220;Our NHS&#8221;:

Click for a bigger (readable) version.
To which I felt compelled to reply:
Dear Simon Burgess,
I&#8217;m am writing to express my most sincere disappointment with your
latest mailing: &#8220;Our NHS - the next 60 years&#8221;.
Like its police-focused predecessor, your letter is the [...]]]></description>
			<content:encoded><![CDATA[<p>Today I received a letter from Simon Burgess of Brighton Kemptown and Peacehaven Labour abour &#8220;Our NHS&#8221;:</p>
<p style="text-align:center; font-size:x-small;"><a href="http://tdwright.co.uk/wp-content/uploads/2008/08/simonburgessletterweb.png"><img class="size-medium wp-image-444" title="Our NHS - 60 years later" src="http://tdwright.co.uk/wp-content/uploads/2008/08/simonburgessletterweb-218x300.png" alt="A scan of the letter sent to me (5 times) by Simon Burgess" width="218" height="300" /></a><br />
Click for a bigger (readable) version.</p>
<p>To which I felt compelled to reply:</p>
<blockquote><p>Dear Simon Burgess,<br />
I&#8217;m am writing to express my most sincere disappointment with your<br />
latest mailing: &#8220;Our NHS - the next 60 years&#8221;.<br />
Like its police-focused predecessor, your letter is the worst kind of<br />
unsubstantiated spin disguised as consultation. Sentences such as &#8220;I<br />
care passionately about the NHS.&#8221; are so empty that they serve only to<br />
warn the reader about the rest of the drivel in your letter and, in my<br />
case, almost caused me to stop reading altogether.<br />
I eventually managed to force myself to continue reading your missive,<br />
but my persistence was only rewarded with my worst fears&#8230; Not only was<br />
there an unholy abundance of partisan political rhetoric (seemingly a<br />
desperate attempt to prevent me from voting Tory), but a distinct lack<br />
of quantifiable facts, targets or solutions.<br />
As a long-time Labour supported myself, your campaign methods sadden me.<br />
It symbolises the fall of Labour from an advocate of socialism and<br />
equality to a shiny marketing firm intent only on ensuring its own<br />
survival. The New Labour of 2008 seems to treat the general public as<br />
some sort of moronic cattle placable by positive, yet empty, sentiments<br />
and promises. Please have some faith in the voter; give us facts and<br />
plans so that we can make informed decisions as to our parliamentary<br />
representation.<br />
Moreover, the name-calling and emotive language aimed at the<br />
conservatives is also highly galling - I, for one, am quite capable of<br />
not voting Tory, without the goading, thank you all the same&#8230; Your<br />
attempts to rubbish the opposition come across as a childish, futile,<br />
and wholly pathetic effort to salvage some of the good-feeling Labour<br />
has managed to destroy in recent years.<br />
My final quarrel is with the mailings themselves. My household received<br />
no less than five of your letters this morning. Whilst I might question<br />
the need for such mailings in the first instance, I would be prepared to<br />
concede that you hold them in high esteem as vehicles for your<br />
self-promotion - and that&#8217;s OK. No, the aspect I cannot forgive is the<br />
sheer scale of waste. Would not just one letter to my house have<br />
sufficed? Or otherwise, could you not have simply put the five<br />
(identical) letters into one envelope? Is this really a responsible way<br />
to spend party funds? Furthermore, what of the environment? Not only<br />
have you wasted five sheets of paper and five envelopes, but you made it<br />
needlessly difficult to recycle the envelopes because of your use of the<br />
type with plastic windows.<br />
My criticisms are not intended to cause personal offence - it is a sad<br />
fact that the problem lies not with you, but with the modern ethos of<br />
the party. I feel sure now that I cannot vote Labour again until these<br />
fundamental issues are resolved.<br />
I sign off then, as a disillusioned red, with perhaps too much time on<br />
his hands.<br />
Wishing you the best of luck in your campaign,<br />
Tom Wright<br />
PS *insert meaningless catchphrase here*</p></blockquote>
<p>In the name of good sport, I will happily post his response here too.</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/tell-simon-burgess-your-views/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introuducing ScribeSense</title>
		<link>http://tdwright.co.uk/2008/08/introuducing-scribesense/</link>
		<comments>http://tdwright.co.uk/2008/08/introuducing-scribesense/#comments</comments>
		<pubDate>Sat, 09 Aug 2008 20:28:22 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Code]]></category>

		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[documentary]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[scribesense]]></category>

		<category><![CDATA[transcription]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=429</guid>
		<description><![CDATA[Some of you may know that I&#8217;m making a documentary this summer, but what very few people knew was that the documentary is just another excuse for me to be incredibly geeky. Ladies and gentlemen, boys and girls, please give a warm welcome to:
ScribeSense - Video transcription without the trauma
Basically, ScribeSense is a tool for [...]]]></description>
			<content:encoded><![CDATA[<p>Some of you may know that I&#8217;m making a documentary this summer, but what very few people knew was that the documentary is just another excuse for me to be incredibly geeky. Ladies and gentlemen, boys and girls, please give a warm welcome to:</p>
<p style="text-align: center;"><strong><a href="http://tdwright.co.uk/geek/scribesense-video-transcription-without-the-trauma/" target="_blank">ScribeSense - Video transcription without the trauma</a></strong></p>
<p>Basically, ScribeSense is a tool for annotating (transcribing) video without resorting to burning lots of DVDs. You&#8217;ll probably only ever find this useful if you&#8217;re doing some kind of film production, but if you are I hope it becomes an invaluable friend.</p>
<p>I generally end this sort of thing with a snippet, and I&#8217;m not gonna let y&#8217;all down today:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript actionscript" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> cuepoint<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
	<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">inputbox</span>.<span style="color: #0066CC;">text</span>.<span style="color: #006600;">length</span><span style="color: #66cc66;">&amp;</span>gt;<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">var</span> itemlabel:<span style="color: #0066CC;">String</span> = <span style="color: #ff0000;">&quot;[&quot;</span> + sec2tc<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">secbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot;]<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span>+ snip_txt<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">inputbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>edit_item_index.<span style="color: #0066CC;">text</span>.<span style="color: #006600;">length</span><span style="color: #66cc66;">&amp;</span>gt;0<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
			<span style="color: #000000; font-weight: bold;">var</span> editIndex = <span style="color: #0066CC;">Number</span><span style="color: #66cc66;">&#40;</span>edit_item_index.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#41;</span>;
			logDP.<span style="color: #006600;">replaceItemAt</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span>label:itemlabel,timestamp:<span style="color: #0066CC;">Number</span><span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">secbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#41;</span>, <span style="color: #0066CC;">data</span>:<span style="color: #0066CC;">this</span>.<span style="color: #006600;">inputbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#125;</span>,editIndex<span style="color: #66cc66;">&#41;</span>;
			edit_item_index.<span style="color: #0066CC;">text</span> = <span style="color: #ff0000;">&quot;&quot;</span>;
		<span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
			logDP.<span style="color: #006600;">addItem</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span>label:itemlabel,timestamp:<span style="color: #0066CC;">Number</span><span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">secbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#41;</span>, <span style="color: #0066CC;">data</span>:<span style="color: #0066CC;">this</span>.<span style="color: #006600;">inputbox</span>.<span style="color: #0066CC;">text</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
		logDP.<span style="color: #0066CC;">sortOn</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;timestamp&quot;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">this</span>.<span style="color: #006600;">inputbox</span>.<span style="color: #0066CC;">text</span> = <span style="color: #ff0000;">&quot;&quot;</span>;
	<span style="color: #0066CC;">this</span>.<span style="color: #006600;">secbox</span>.<span style="color: #0066CC;">text</span> = timecode<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #0066CC;">this</span>.<span style="color: #006600;">tcbox</span>.<span style="color: #0066CC;">text</span> = sec2tc<span style="color: #66cc66;">&#40;</span>timecode<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p>The whole thing is a veritable mixing pot of actionscript, PHP and javascript with lashings of XML holding it all together. Producing it made me insanely happy.</p>
<p>Feedback would be appreciated (if you have any) through the usual channels.</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/introuducing-scribesense/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wonka: A Recut Trailer</title>
		<link>http://tdwright.co.uk/2008/08/wonka-a-recut-trailer/</link>
		<comments>http://tdwright.co.uk/2008/08/wonka-a-recut-trailer/#comments</comments>
		<pubDate>Thu, 07 Aug 2008 23:29:17 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Crumbs of the internet]]></category>

		<category><![CDATA[charlie]]></category>

		<category><![CDATA[drugs]]></category>

		<category><![CDATA[video]]></category>

		<category><![CDATA[wonka]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=427</guid>
		<description><![CDATA[This needs no introduction&#8230;

Nor does it need a conclusion.
I hope you enjoyed it,
Tom x
]]></description>
			<content:encoded><![CDATA[<p>This needs no introduction&#8230;</p>
<p style="text-align:center"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="wmode" value="transparent" /><param name="src" value="http://www.youtube.com/v/pAoqOCQlb0E&#038;rel=0&#038;color1=11645361&#038;color2=13619151&#038;fs=1" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://www.youtube.com/v/pAoqOCQlb0E&#038;rel=0&#038;color1=11645361&#038;color2=13619151&#038;fs=1" wmode="transparent"></embed></object></p>
<p>Nor does it need a conclusion.</p>
<p>I hope you enjoyed it,</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/wonka-a-recut-trailer/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Toilet roll update + pushy ice-cream vending</title>
		<link>http://tdwright.co.uk/2008/08/toilet-roll-update-pushy-ice-cream-vending/</link>
		<comments>http://tdwright.co.uk/2008/08/toilet-roll-update-pushy-ice-cream-vending/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 07:00:04 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Blitherings]]></category>

		<category><![CDATA[ice cream]]></category>

		<category><![CDATA[loo roll]]></category>

		<category><![CDATA[mothercare]]></category>

		<category><![CDATA[photos]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=418</guid>
		<description><![CDATA[Right kids, as you may have guessed from the title, todays post is a double-bill&#8230;
First up: You remember I posted a while ago about the correct alignment of toilet roll? Remember how important we discovered it was to have the free-end hanging over, rather than under? Well the other day at work, I saw this:

I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p>Right kids, as you may have guessed from the title, todays post is a double-bill&#8230;</p>
<p><em>First up:</em> You remember I posted a while ago about the <a href="http://tdwright.co.uk/2008/07/science-demonstrates-the-correct-orientation-of-toilet-roll/" target="_blank">correct alignment of toilet roll</a>? Remember how important we discovered it was to have the free-end hanging over, rather than under? Well the other day at work, I saw this:</p>
<p style="text-align:center"><a href="http://tdwright.co.uk/wp-content/uploads/2008/08/sp_a0101.jpg"><img title="sp_a0101" src="http://tdwright.co.uk/wp-content/uploads/2008/08/sp_a0101-300x225.jpg" alt="Toilet roll sign" width="300" height="225" /></a></p>
<p>I&#8217;m just glad to see that there are companies in the UK that take toilet-roll safety &amp; wastage seriously. I&#8217;m really quite chuffed to be able to say I work for them. Go Mothercare!</p>
<p><em>Next:</em> When I was last in Leicestershire, I snapped this on my phone and forgot about it:</p>
<p style="text-align:center"><a href="http://tdwright.co.uk/wp-content/uploads/2008/08/sp_a0099.jpg"><img class="size-medium wp-image-422" title="sp_a0099" src="http://tdwright.co.uk/wp-content/uploads/2008/08/sp_a0099-300x225.jpg" alt="Quicker sales mean bigger profits" width="300" height="225" /></a></p>
<p>That&#8217;s right, the sign says: &#8220;Quicker Sales mean Bigger Profits - stock the UK Impulse top 6 sellers&#8221;.</p>
<p>A little bit of me died that day&#8230; Before that I had subconsciously believed in the innocence of ice-cream sales - surely no-one would want to sell pure pleasure for cold profit? Don&#8217;t they just want me to be happy?</p>
<p>Bet you&#8217;re glad I hit you with the good news first,</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/toilet-roll-update-pushy-ice-cream-vending/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MD5 in PHP works exactly as it should (don&#8217;t believe the hype!)</title>
		<link>http://tdwright.co.uk/2008/08/md5-in-php-works-exactly-as-it-should-dont-believe-the-hype/</link>
		<comments>http://tdwright.co.uk/2008/08/md5-in-php-works-exactly-as-it-should-dont-believe-the-hype/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 13:15:52 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Code]]></category>

		<category><![CDATA[md5]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[rumours]]></category>

		<category><![CDATA[utf]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=413</guid>
		<description><![CDATA[Hey guys,
I&#8217;m afraid today I have to confess to an almighty amount of stupidity, but first - please allow me to set the record straight so that nobody ever makes that mistake again:
The PHP MD5 function produces the same hashes as any other MD5 function written in any other language ever devised.
Please don&#8217;t pay any [...]]]></description>
			<content:encoded><![CDATA[<p>Hey guys,</p>
<p>I&#8217;m afraid today I have to confess to an almighty amount of stupidity, but first - please allow me to set the record straight so that nobody ever makes that mistake again:</p>
<p style="text-align: center;"><span style="font-size: medium;">The PHP MD5 function produces the same hashes as any other MD5 function written in any other language ever devised.</span></p>
<p style="text-align: left;">Please don&#8217;t pay any heed whatsoever to the <a href="http://ok-cool.com/posts/read/125-php-md5-not-the-same-as-net-md5/" target="_blank">whisperings</a> that <a href="http://www.kirupa.com/forum/showpost.php?p=2326895&amp;postcount=10" target="_blank">abound</a> the wonderful interweb. Hmmm&#8230; Maybe &#8216;abound&#8217; isn&#8217;t the right word, which is exactly what should have sent the rumour-alarm clanging away in my head. Truth is, there are a small spattering of references to this problem, but often people (like me) work out that it was a problem with their own code that they attributed to the &#8216;encoding problem&#8217; because it&#8217;s easier to &#8216;<strong>blame their tools</strong>&#8216;.</p>
<p style="text-align: left;">As was pointed out to me:</p>
<blockquote><p>md5 always takes the argument as a bit vector rather than a string of letters, i.e. no encoding matters. If your script is written in ISO-8559-15 and you passed an embedded string literal to md5(), the result is the hash of a ISO-8859-15 string</p></blockquote>
<p>Y&#8217;know what? It&#8217;s true! When I did a bit more debugging I found that I was inserting invisible whitespace into the string I tried hashing. Whitespace is as visible as any other character to the MD5 function - the hash of &#8216; hashtext&#8217; (notice the leading space) will therefore be different to the hash of &#8216;hashtext&#8217;. <strong>Nothing to do with utf7 or utf8!</strong></p>
<p>And guess what? It&#8217;s not just me&#8230; On experts exchange<sup>1</sup> I found a <a href="http://64.233.169.104/search?q=cache:Uko1A44_MvEJ:www.experts-exchange.com/Programming/Languages/Java/Q_23005651.html+md5+php+encoding&amp;hl=en&amp;ct=clnk&amp;cd=10&amp;gl=uk&amp;client=firefox-a" target="_blank">user with a similar problem in Java</a>. He later explains that in his case a string wasn&#8217;t being lowecased prior to hashing:</p>
<blockquote><p>Hello. Have got access to the php code now and can see that the php programmer did not actually follow the specification (did not make all chars to lowercase bfore md5&#8230;) Sorry to have bothereed u with this, was extremely painfull to sort out the bug when I could not see the php code.</p></blockquote>
<p>But this sort of response is never publicised in the same way. These answers, these non-problems, are always buried as apologetic admissions of bad development practice. I want to put an end to this, and by publishing this post I hope to nip this slowly spreading rumour in the bud.</p>
<p>Go forth and spread the good news - The PHP MD5 is not dead. Long live (urm) the PHP MD5 function!</p>
<p>Tom x</p>
<div id="notes"><hr/>
<p style="font-size:small;"><i>Footnotes:</i></p><ol class="footnotes"><li id="footnote_0_413" class="footnote">See here to <a href="http://www.clazh.com/how-to-access-experts-exchange-and-bypass-without-registering/" target="_blank">access without a login</a> </li></ol><hr/></div>]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/08/md5-in-php-works-exactly-as-it-should-dont-believe-the-hype/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The marvellous masturbation metaphor generator!</title>
		<link>http://tdwright.co.uk/2008/07/the-marvellous-masturbation-metaphor-generator/</link>
		<comments>http://tdwright.co.uk/2008/07/the-marvellous-masturbation-metaphor-generator/#comments</comments>
		<pubDate>Mon, 28 Jul 2008 13:15:57 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Crumbs of the internet]]></category>

		<category><![CDATA[b3ta]]></category>

		<category><![CDATA[generator]]></category>

		<category><![CDATA[mastubation]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=404</guid>
		<description><![CDATA[Ladies and gentlemen, boys and girls, it is with great pleasure that I post the next link&#8230; Please put your sticky hands together for the one, the only, the marvellous masturbation metaphor generator!
I found this little gem on the b3ta links board, so many thanks to flatfrog for making and sharing this wonderful device. All [...]]]></description>
			<content:encoded><![CDATA[<p>Ladies and gentlemen, boys and girls, it is with great pleasure that I post the next link&#8230; Please put your sticky hands together for the one, the only, <a href="http://tdwright.co.uk/wp-content/uploads/2008/07/bashthebishop.swf">the marvellous masturbation metaphor generator</a>!</p>
<p>I found this little gem on the <a href="http://b3ta.com/links/The_marvellous_masturbation_metaphor_generator" target="_blank">b3ta links board</a>, so many thanks to <a href="http://b3ta.com/users/profile.php?id=47536" target="_blank">flatfrog</a> for making and sharing this wonderful device. All hail flatfrog!</p>
<p>Feel free to post any that tickle you in the comments.</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/07/the-marvellous-masturbation-metaphor-generator/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zeitgeist the movie</title>
		<link>http://tdwright.co.uk/2008/07/zeitgeist-the-movie/</link>
		<comments>http://tdwright.co.uk/2008/07/zeitgeist-the-movie/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 20:37:52 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Blitherings]]></category>

		<category><![CDATA[new world order]]></category>

		<category><![CDATA[politics]]></category>

		<category><![CDATA[video]]></category>

		<category><![CDATA[zeitgeist]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=399</guid>
		<description><![CDATA[
Zeitgeist the movie
I ask you when you watch this, please look past the gaudy Americanisms and watch it all the way through. Please forgive the smultz and overstressed points. They can&#8217;t help it, it&#8217;s what they&#8217;re used to.
At the same time, watch it with a mind critical of the facts. I was aware of a [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align:center; font-size:x-small;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="wmode" value="transparent" /><param name="src" value="http://video.google.com/googleplayer.swf?docid=-594683847743189197&amp;hl=en&amp;fs=true" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://video.google.com/googleplayer.swf?docid=-594683847743189197&amp;hl=en&amp;fs=true" wmode="transparent"></embed></object><br />
<a href="http://www.zeitgeistmovie.com/" target="_blank">Zeitgeist the movie</a></p>
<p>I ask you when you watch this, please look past the gaudy Americanisms and watch it all the way through. Please forgive the smultz and overstressed points. They can&#8217;t help it, it&#8217;s what they&#8217;re used to.</p>
<p>At the same time, watch it with a mind critical of the facts. I was aware of a lot of the stuff they mention before, yet much of it I&#8217;d heard ascribed to other causes or entities. It&#8217;s really hard to ascertain exactly what is fact, what is being covered up by the-powers-that-be and what is nothing more than the overactive imagination of conspiracy theorists.</p>
<p>All that aside, Zeitgeist is the culmination of a broad swathe of (the growing) alternate view of the world and is by no means a lone voice. Many of the points raised are self-evident and many more are neither denied or disputed.</p>
<p>The last point I&#8217;d like to make is that, regardless of how much of the movie you&#8217;ll walk away believing, by the end of it you&#8217;ll at least be thinking about the world in a much more critical way. And that can&#8217;t be a bad thing.</p>
<p>Tom x</p>
<p>PS Nods to Freddie for mentioning this when I last saw him.</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/07/zeitgeist-the-movie/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Robots will eat your (elderly) loved ones!</title>
		<link>http://tdwright.co.uk/2008/07/robots-will-eat-your-elderly-loved-ones/</link>
		<comments>http://tdwright.co.uk/2008/07/robots-will-eat-your-elderly-loved-ones/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 19:16:49 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
		
		<category><![CDATA[Crumbs of the internet]]></category>

		<category><![CDATA[elderly]]></category>

		<category><![CDATA[evil]]></category>

		<category><![CDATA[robot]]></category>

		<category><![CDATA[Robot domination]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://tdwright.co.uk/?p=395</guid>
		<description><![CDATA[Thanks to Curious Cat for warning me of the latest tactic of the evil robot insurgency - penetration of the homes of our elderly relatives. Disgusting isn&#8217;t it?

Sure, they look pretty useful, but what&#8217;s in it for them? We know the robot scum better than that! Whilst neither Curious Cat nor myself can offer an [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to <a href="http://engineering.curiouscatblog.net/2008/07/22/awesome-robot-ubot-5/" target="_blank">Curious Cat</a> for warning me of the latest tactic of the evil robot insurgency - penetration of the homes of our elderly relatives. Disgusting isn&#8217;t it?</p>
<p style="text-align:center;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="wmode" value="transparent" /><param name="src" value="http://www.youtube.com/v/koc6xhPM420&amp;hl=en&amp;fs=1" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://www.youtube.com/v/koc6xhPM420&amp;hl=en&amp;fs=1" wmode="transparent"></embed></object></p>
<p>Sure, they look pretty useful, but what&#8217;s in it for them? We know the robot scum better than that! Whilst neither Curious Cat nor myself can offer an explanation, I&#8217;ll hazard a couple of guesses&#8230; Maybe they&#8217;re going to hypnotize the growing ranks of the elderly and use their (copious) free time to build more nefarious machines! Or maybe they&#8217;ll wait until grandma&#8217;s asleep and use their mind-harvesters to gain the wisdom that only age can bring&#8230;</p>
<p>Whatever they&#8217;ve got planned, you can bet your meaty buns it won&#8217;t be nice. Take my advice, keep your elderly relatives locked away. Perhaps under the stairs.</p>
<p>Be safe,</p>
<p>Tom x</p>
]]></content:encoded>
			<wfw:commentRss>http://tdwright.co.uk/2008/07/robots-will-eat-your-elderly-loved-ones/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
