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

<channel>
	<title>idefex.net</title>
	<atom:link href="http://idefex.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://idefex.net</link>
	<description>Almost an obsession</description>
	<lastBuildDate>Wed, 14 Jul 2010 22:12:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Old Spice</title>
		<link>http://idefex.net/2010/07/old-spice/</link>
		<comments>http://idefex.net/2010/07/old-spice/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 21:36:10 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://idefex.net/?p=207</guid>
		<description><![CDATA[Old spice has been doing most excellent viral adverts of late, replying to Tweets, Facebook and Youtube comments, and questions posted on Reddit. One of these resulted in this post to Reddit, and then through excellent collaborative work between myself, Chriswastaken and isevenx, http://oldspicevoicemail.com/ had been up, tweeted by @OldSpice and then down due to [...]]]></description>
			<content:encoded><![CDATA[<p>Old spice has been doing most excellent <a href="http://www.youtube.com/oldspice">viral adverts</a> of late, replying to Tweets, Facebook and Youtube comments, and questions posted on Reddit. One of these resulted in <a href="http://www.reddit.com/r/reddit.com/comments/cpkpu/old_spice_man_records_voicemail_message_for/">this post</a> to Reddit, and then through excellent collaborative work between myself, <a href="http://chriswastaken.com/">Chriswastaken</a> and <a href="http://www.reddit.com/user/isevenx">isevenx</a>, <a href="http://oldspicevoicemail.com/">http://oldspicevoicemail.com/</a> had been up, tweeted by <a href="https://twitter.com/OldSpice/status/18548796345">@OldSpice</a> and then down due to being flooded by requests in under three hours.</p>
<p>Not bad for an evening&#8217;s work, and I now feel closer to the great Isaiah Mustafa, even if he hasn&#8217;t replied to me directly in a video.</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2010/07/old-spice/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>A Brief Respite</title>
		<link>http://idefex.net/2009/12/a-brief-respite/</link>
		<comments>http://idefex.net/2009/12/a-brief-respite/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 20:32:14 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://idefex.net/?p=203</guid>
		<description><![CDATA[So it&#8217;s the Christmas holiday &#8211; unfortunately, it&#8217;s the shortest holiday that I&#8217;ve had for years: a scant two weeks. The Ph.D. is certainly going, though not necessarily where I originally thought it was. That&#8217;s not anything out of the ordinary though, so I&#8217;m not going to dwell on it. The work I&#8217;ve done so [...]]]></description>
			<content:encoded><![CDATA[<p>So it&#8217;s the Christmas holiday &#8211; unfortunately, it&#8217;s the shortest holiday that I&#8217;ve had for years: a scant two weeks. The Ph.D. is certainly going, though not necessarily where I originally thought it was. That&#8217;s not anything out of the ordinary though, so I&#8217;m not going to dwell on it.</p>
<p>The work I&#8217;ve done so far doesn&#8217;t really lend itself to being discussed succinctly, but it&#8217;s been pretty satisfying so far &#8211; I&#8217;ve come up with a particular procedure that was needed, which is quantitative whereas the procedure that it&#8217;ll end up replacing was only qualitative. I have a depressingly large list of things to do that I only ever seem to make modest headway on &#8211; but again, based on what I&#8217;ve seen of other people, this is fairly standard.</p>
<p>One of the most surprising things so far for me are the supervisions that I&#8217;m giving. The first few at the start of term did not go as well as I wanted them to: I wasn&#8217;t explaining things as lucidly as I knew they could be; I didn&#8217;t really feel like a supervisor in the supervisions. Then, one week, I found myself looking forward to it, and then after the fact I realised that I actually enjoyed it. I&#8217;m not sure what the difference was &#8211; whether I just got more comfortable with a novel situation, or something actually changed, I&#8217;m not sure. Either way, it&#8217;s excellent money for something that I now quite enjoy. Here&#8217;s hoping it continues.</p>
<p>I&#8217;d be lying if I said that everything went according to plan this term, but that&#8217;s life, really. What isn&#8217;t a lie is that, in spite of such things, I&#8217;ve still enjoyed myself immensely. I&#8217;m enjoying the differences between Clare and Churchill and, mystifyingly, I seem to have found more time to do social things, despite the fact that I&#8217;m (ostensibly) working more. I&#8217;ve made a relatively satisfying collection of new friends, though notably most of them are only doing M.Phils, which means that come next year, there will be a considerable exodus.</p>
<p>Still, that&#8217;s future Alex&#8217;s problem. I hear that guy is awesome, though, so I reckon he can probably deal with it.</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/12/a-brief-respite/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ph.D.s: AWESOME!</title>
		<link>http://idefex.net/2009/09/ph-d-s-awesome/</link>
		<comments>http://idefex.net/2009/09/ph-d-s-awesome/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 22:28:20 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=195</guid>
		<description><![CDATA[Well, if there was previously any doubt that I should be doing a Ph.D., that has been easily assuaged by my week in St Andrews at the STFC Summer School. The people there were all about to start Ph.D.s too, and they are exactly the right sort of people from my point of view. We [...]]]></description>
			<content:encoded><![CDATA[<p>Well, if there was previously any doubt that I should be doing a Ph.D., that has been easily assuaged by my week in St Andrews at the STFC Summer School. The people there were all about to start Ph.D.s too, and they are exactly the right sort of people from my point of view. We had a whale of a time, and I think the group of about ten or so that I ended up in were all pretty sad that we were saying goodbye at the end of it for the time being.</p>
<p>Five lectures a day got a little tough to pay attention in towards the end of any given day, especially as most people were cruising along on less sleep than usual (or just skipping the odd judiciously chosen lecture entirely to catch up on sleep). Many were interesting, but a couple did drag on a little long; I suspect this was because the lectures frequently went to a full hour, but as undergraduates we&#8217;ve been conditioned to pay attention for 50 minutes, and then no more.</p>
<p>But really, it wasn&#8217;t about the lectures, it was about meeting new people. Indeed, we were told a couple of times to forget all the physics we&#8217;d been told, as it was likely to be irrelevant or otherwise shown to be somehow mistaken in a few years, and we should concentrate on networking. I went in with this intention, but we relatively quickly settled down into a group of about ten, as mentioned above, and modestly began calling ourselves &#8216;Team Awesome&#8217;. Lunchtimes and pre-dinnertimes were spent with a mixture of exploring St Andrews and playing party games, including &#8216;Godel Eats Currency&#8217;, the Cereal Box game and Pictionary.</p>
<p>Much of our evenings were spent inside the Raisin which was &#8211; purely coincidentally &#8211; the nearest pub to our accommodation. Pool tables, a jukebox and cheap drinks &#8211; what was not to like? The answer to this rhetorical question would be every other group in the pub&#8217;s taste in music. We rectified this on the final night, where we essentially hijacked the jukebox (and a pool table) purely for our own entertainment. That said, we didn&#8217;t spend all our time there. The second evening in St Andrews we went to the beach for what was nominally a bonfire, but should have really been called a campfire to reduce expectations. A bunch of us lay down on some conveniently flat rocks and stared at the sky. As we were all people about to start Astrophysics Ph.Ds, this was a common source of interest &#8211; and I was comprehensively schooled by a number of people on the contents of the sky, which was a novel experience.</p>
<p>On the Tuesday evening most people in our group went to see Inglorious Basterds, but I spent some time exploring the nooks and crannies of St Andrews with a couple of other people who weren&#8217;t keen on sitting in a dark room not talking to anyone. We trundled around for a few hours, and found quite a few small alleyways which warranted exploring, much to our delight. Equally delightful was an ice cream shop open at eight in the evening with more flavours available than you could possibly imagine. I managed to convince someone that, being in Scotland, they needed to try the Iron Bru flavour, but they regretted this soon after when they couldn&#8217;t finish the scoop!</p>
<p>A Ceilidh was held on the Wednesday, which was, as always, awesome fun. They allowed you to hire kilts, but I opted out of such frivolities and opted to bring my dinner jacket instead. As it transpired, I was one of the few guys there in black tie; other than the kilts, there were maybe two other guys there in proper attire &#8211; despite the fact that the kilts were present should have indicated otherwise. Still, if you&#8217;re overdressed you feel silly, but if you&#8217;re underdressed you look silly, so I was erring on the side of caution at least. </p>
<p>I think it&#8217;s a little difficult to pin down exactly what made the week such a great experience. The few things that I&#8217;ve written above don&#8217;t really convey just how much I enjoyed it, but I don&#8217;t know how to fill in what&#8217;s missing from the descriptions. I think part of it was that we had such a large common interest that conversation was easy despite our relative ignorance of each other. Of course, the fact that we got to make such incredibly nerdy astrophysics jokes that would have fallen flat elsewhere, but were met by guffaws of laughter there must have helped.</p>
<p>Team Awesome is hoping for a fairly compete reunion in a couple of weeks, when two members share the same birthday in Liverpool, which should be good fun one way or another. Beyond that, the word on the street is I actually have to start doing some work in order to claim I&#8217;m doing a Ph.D&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/09/ph-d-s-awesome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Co(mic)incidence</title>
		<link>http://idefex.net/2009/08/comicincidence/</link>
		<comments>http://idefex.net/2009/08/comicincidence/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 07:27:57 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Project]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=189</guid>
		<description><![CDATA[So, bizarrely, in two days I&#8217;ve been mentioned on the front page of two webcomics. The first is Dinosaur Comics which I wrote this mashup for, which Ryan North graciously linked. It seems to have been one of the more popular things I&#8217;ve done; I&#8217;ve enjoyed reading people&#8217;s thoughts on it over the course of [...]]]></description>
			<content:encoded><![CDATA[<p>So, bizarrely, in two days I&#8217;ve been mentioned on the front page of two webcomics. The first is <a href="http://www.qwantz.com/index.php?comic=1532">Dinosaur Comics</a> which I wrote this <a href="http://www.idefex.net/projects/qwantztwitter">mashup</a> for, which Ryan North graciously linked. It seems to have been one of the more popular things I&#8217;ve done; I&#8217;ve enjoyed reading people&#8217;s thoughts on it over the course of the last few days &#8211; I think my favourite was someone who announced that it was now going to be their Twitter client of choice.  Someone also saw sufficient worth in it to submit it to <a href="http://www.reddit.com/r/funny/comments/9bgqv/dinosaur_comics_twitter_sweet/">Reddit</a>, where it did by far the best of anything I&#8217;ve made. It didn&#8217;t make the front page, but 26 points is a personal record. Unfortunately, it wasn&#8217;t my idea, so I can&#8217;t really take credit for <a href="http://cakebomb.co.uk/bing/?p=400">Chris Bingham&#8217;s masterstroke</a>. I was just glad I was able to give the idea the realisation it deserved. I should also say gracious thanks to my <a href="http://www.puffinhost.com">hosters</a>, who don&#8217;t seem to have blinked after the image generating script got inlined on the front page of a site that gets 70k+ page views a day. Given that they host me for free, that&#8217;s pretty impressive stuff.</p>
<p>The second webcomic is <a href="http://www.reallifecomics.com/archive/090818.html">Real Life Comics</a>. The author, Greg Dean, is having people submit scripts each day this week for how to continue the week-long (and non-canon) adventure. Today, he deemed my script the best. I&#8217;ve been reading his comic for over six years now (I think), and to see my name at the bottom of the comic is more than a little bizarre. I&#8217;m half tempted to buy a print. Of course, I now have even more of an interest in how this storyline turns out!</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/08/comicincidence/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>In the summertime when the weather is high&#8230;</title>
		<link>http://idefex.net/2009/07/in-the-summertime-when-the-weather-is-high/</link>
		<comments>http://idefex.net/2009/07/in-the-summertime-when-the-weather-is-high/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 09:02:40 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Project]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=170</guid>
		<description><![CDATA[Well into the summer now (half-way, if we count from the end of exams) and having a real whale of a time. It&#8217;s my last &#8216;long&#8217; holiday for a long, long time, so coming in I consciously decided that I wanted to try and make the most of it. The month that I&#8217;ve been at [...]]]></description>
			<content:encoded><![CDATA[<p>Well into the summer now (half-way, if we count from the end of exams) and having a real whale of a time. It&#8217;s my last &#8216;long&#8217; holiday for a long, <em>long</em> time, so coming in I consciously decided that I wanted to try and make the most of it. The month that I&#8217;ve been at home so far compares surprisingly well to the month leading up to graduation.</p>
<p>A long-term goal of mine had been to build an arcade stick for a games console. It took around ten days of near-solid work, but it&#8217;s finally done and is a joy to use. <img class="alignleft" src="http://farm3.static.flickr.com/2596/3728695045_b73e420382.jpg?v=1247834175" border="1px" alt="Arcade Stick" width="250px" />It&#8217;s already getting a lot of use in Street Fighter IV (and I&#8217;ve only received a single piece of abuse on Live so far, which is less than I was expecting), and come Wednesday it&#8217;ll be getting a lot of love through the medium of Marvel vs. Capcom 2. The electronics was, ironically, the easy bit, despite the fact I was soldering to an existing PCB and setting up two 25 pin harnesses. It was all done in under three days and worked correctly first time. Cutting six pieces of wood out of a floorboard, drilling a few holes, and screwing them together? Took the remainder of the time. I hate working with wood. I&#8217;m very happy with how it turned out, though &#8211; certainly at the lowest point I wouldn&#8217;t have expected it to turn out this good. It ended up costing around the same as buying a Madcatz Street Fighter IV SE stick, but is at least future-proof &#8211; I can build other breakaway project boxes that will let it work on other consoles, if I am struck by the urge. </p>
<p>Much to my delight, there are enough people around without jobs just yet (mostly people who took a gap year and so have only just graduated along with me), so there&#8217;s more than enough support for fun times. Notable mentions so far are a black-tie dinner party, sailing on Ben&#8217;s boat (where we saw seals), the beach, and going out having dressed up in owl material (oooooooo indeed).</p>
<p>I also trekked into London with some excellent co-conspirators who were game enough to see Derren Brown&#8217;s Enigma show. We&#8217;re asked to &#8216;keep the mysteries mysterious, and the surprises surprising&#8217;, so in that spirit I won&#8217;t delve into too much detail. However, speaking loosely, I think I can safely say that we were all extremely impressed. We managed to deduce how some of the effects were done to our satisfaction, though many still eluded us. I believe I know loosely how the final effect was done (at least, I have a method that I would use if demanded to reproduce it at gunpoint), and I had a particular song stuck in my head for a couple of days after the show. What the most shocking thing about the show was just how impressive Derren putting people into a dissociative state is; there was one girl he kept putting under and pulling back, and she just went completely limp instantly, each time.</p>
<p>I&#8217;m conscious of the fact that compared to a lot of people I know, I&#8217;m not doing anything too extravagant with my prolonged time off. Phil&#8217;s off trekking South America, and I know a few other people who are travelling to similar extents. While doing something along those lines would be fun, I&#8217;m not pining for it to any great extent. I&#8217;m away for a week towards the end of next month, but it&#8217;s primarily Ph.D. related rather than outright fun &#8211; though I&#8217;m anticipating some of that as well; after all, all work and no play&#8230;</p>
<p>For a competition I wrote a program to &#8216;solve&#8217; any Countdown numbers game (assuming a solution exists). The source is <a href="http://idefex.net/countdown/countdown.pl">here</a>, though it is very slow (a couple of minutes to exhaustively search a tree). Poking around the internet after I wrote it shows that there are <a href="http://www.cs.nott.ac.uk/~gmh/countdown.pdf">much faster</a> implementations of what is essentially the same algorithm, just with more shortcuts taken and a stricter adherence to the rules (it transpires that intermediate fractions are not allowed in Countdown, so by checking a % b before dividing you can save yourself a lot of time). It took me most of the day, but only because I don&#8217;t use Perl on a regular basis; I was initially unfamiliar with how it displays numbers and truncates their representations when asked to display them if there are a sufficient number of 0s after the decimal point. Frustrating, but good to know.</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/07/in-the-summertime-when-the-weather-is-high/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curtain Call</title>
		<link>http://idefex.net/2009/07/curtain-call/</link>
		<comments>http://idefex.net/2009/07/curtain-call/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 15:19:34 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=123</guid>
		<description><![CDATA[So I now have fancy letters after my name as something to show for the last four year&#8217;s hard work and a lot of money. Even better, I have a Ph.D. lined up doing something that I&#8217;m sure I&#8217;m really going to enjoy. But as a consequence, I&#8217;m also losing a lot. Sure, I&#8217;m going [...]]]></description>
			<content:encoded><![CDATA[<p>So I now have fancy letters after my name as something to show for the last four year&#8217;s hard work and a lot of money. Even better, I have a Ph.D. lined up doing something that I&#8217;m sure I&#8217;m really going to enjoy. But as a consequence, I&#8217;m also losing a lot. Sure, I&#8217;m going back to Cambridge for the Ph.D. but there&#8217;s going to be a lot missing from Cambridge.</p>
<p>I&#8217;ve switched colleges, and while the change is something I wanted, it would have been easier to just stick with Churchill. There&#8217;d be fewer unknowns for three months from now, which would be comforting. While objectively I&#8217;m sure Clare is going to be great, my gut is unconvinced. Coupled with the fact that a lot of people I&#8217;ve become attached to over the last four years are going to be absent, I&#8217;m very much heading into the unknown again as I was <a href="http://www.idefex.net/2005/10/cambridge10/">four years ago</a>. I managed well enough then, though, and fell into company that I&#8217;ve treasured since, so I should be able to cope.</p>
<p>This wasn&#8217;t intended to be terribly sentimental. I&#8217;ve already done that either in person or via email (to my shame) with those that I wanted to. <a href="http://www.flickr.com/photos/area/sets/72157620679112958/s">A lot of photos</a> were taken after the end of exams, some of which were <a href="http://www.flickr.com/photos/area/3670505829/in/set-72157620679112958/">rather apt</a> and there are still more to be circulated. It was the first and only post-exams / May Week period that I&#8217;ve had without performing with the <a href="http://firetroupe.org/">Fire Troupe</a> at balls, I really enjoyed myself. Without the regimen of sleeping during the day, get up, rehearse, perform, sleep again, I&#8217;ve had plenty of time for fun &#8211; garden parties, 5-a-side football tournaments, musicals&#8230; all the trappings. And what fun it was too. I definitely have no regrets about doing it.</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/07/curtain-call/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Compression</title>
		<link>http://idefex.net/2009/05/twitter-compression/</link>
		<comments>http://idefex.net/2009/05/twitter-compression/#comments</comments>
		<pubDate>Sun, 10 May 2009 10:15:20 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Project]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=111</guid>
		<description><![CDATA[Take one arbitrary limitation (Twitter only lets you send 140 characters). Note that Twitter allows you to use UTF-8 characters. Add a course in information theory. Roast under the heat of procrastination for several hours until juicy. In english: I wondered just how much information you could send in a single tweet, and decided to [...]]]></description>
			<content:encoded><![CDATA[<p>Take one arbitrary limitation (Twitter only lets you send 140 characters). Note that Twitter allows you to use UTF-8 characters. Add a course in information theory. Roast under the heat of procrastination for several hours until juicy.  </p>
<p>In english: I wondered just how much information you could send in a single tweet, and decided to find out.</p>
<p>Armed with the knowledge from an Information Theory course given by the singular <a href="http://www.inference.phy.cam.ac.uk/mackay/">David MacKay</a>, I decided to see.  So, it&#8217;s common knowledge that Arithmetic Coding is the best way to compress information, getting you to within a couple of bits of the Shannon Limit so long as you have an accurate modelling system. The &#8216;best&#8217; bit of the compression comes from having suitably subtle and ingenious models of the text that you&#8217;re encoding; without such a model, you&#8217;re probably not going to see the benefits of Arithmetic Coding. However, I&#8217;m always up for a challenge &#8211; especially one set by someone with an Erdos Number of two. </p>
<p>Admittedly, I&#8217;d attempted to make an arithmetic encoder for a homework, which I almost achieved. However, I cheated by using the arbitrary precision maths module in PHP which would break after a suitably long string. As I presented it to him, I felt a pang of shame even before I explained&#8230; so reinvigorated with the fire of project procrastination, I thought I&#8217;d try and get one working properly.  Admittedly, my first instinct was to just find one written in PHP, to get onto the meat of this project. But there didn&#8217;t seem to be one on the internet &#8211; until now! And it really does work properly, much to my amazement. Technically, it&#8217;s a range encoder, but the two are mathematically identical. As an added bonus, a range encoder isn&#8217;t protected by IBM patents, whereas an arithmetic coder is.  </p>
<p>So, how do we transmit our bitstream over <a href="http://twitter.com">Twitter</a>? Happily, Twitter supports UTF-8 characters, which can occupy up to four bytes each. For a four byte character, 21 are under control of the user. If we were to use just uppercase characters and space, for English this corresponds to about four bits per character we wish to send &#8211; so we could send up to 700 characters in such a case! We like punctuation though, so this means we can send fewer total characters, but it&#8217;s probably worth it.  And so began my trial with Unicode.</p>
<ol>
<li>First attempt: split the binary string into 21 bit blocks, pad the last one and send the corresponding UTF-8 characters. Unfortunately, not all 21 bit long binary strings map to valid characters &#8211; those above 0x10ffff are invalid. So drop down to 20 bits per UTF-8 character, and have the first bit as 0 &#8211; we&#8217;re now definitely going to map onto a valid unicode character, right?</li>
<li>Turns out, no. The points 0xD800 to 0xDFFF are <a href="http://en.wikipedia.org/wiki/UTF-16">UTF-16</a> surrogate pairs. So look for these, and if we would be trying to send one of these, send a three byte character instead (which will only be 16 bytes, but still a bargain).</li>
<li>Unicode has canonical decompositions &#8211; so the character á is canonically identical to the characters representing a´ in sequence, for example. These are defined to be identical, and no application should function differently when presented by one sequence or the other. So now check to see that a character we are trying to send is fully decomposed &#8211; if not, drop to a three byte character if we were four, and a two byte character if we were three. I&#8217;m not convinced that there&#8217;s a PHP library that does a complete job of this anywhere, so this is currently only a &#8216;probably&#8217; step of the process &#8211; if a message fails to send, it&#8217;s probably failed here.</li>
<li>Line Feed / Carriage Return. Different OSes introduce the other &#8211; or not &#8211; after seeing one. So if the character we&#8217;re trying to send is actually in the bottom 128 of characters, only take seven bits. Set the 32s bit to 1, so we&#8217;re not using the awkward part of the ASCII table.</li>
</ol>
<p>I then set about trying to send some information over twitter. <a href="http://twitter.com/area/status/1728233100">The first test</a> worked well. I decided to push it to the limit, however, and encoded nearly 600 characters as a string of 138 UTF-8 characters. Dropped my clipboard into Tweetie, and was informed that I was over the limit. Perplexed, I did some poking around and found that, in fact, <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/9d9d16d55e2e1e67/4fb990b472f3e812?lnk=gst&amp;q=bytes#4fb990b472f3e812">Twitter isn&#8217;t sure</a> what they mean when they say 140 characters. They think they probably mean bytes, not characters, but there is <a href="http://twitter.com/atebits/status/1286199010">evidence to the contrary.</a> No further updates as yet that I can see, but problems seem to be in at least partly due to how Ruby counts characters. Until this is fixed, however, the amount of information able to be sent using a single tweet is going to be limited, somewhat. They&#8217;re looking into it.</p>
<p>The upshot is that there is now a proof of concept of the <a href="http://idefex.net/compressor/twitter/">compressor</a> up along with <a href="http://idefex.net/compressor/twitter/rangecoder.zip">the source</a>. I&#8217;ve included the UTF-8 libraries with it which are from a couple of sources, but mostly MediaWiki. I based the range encoder on the pseudocode over at <a href="http://en.wikipedia.org/wiki/Range_encoding">the wiki article</a>, changing it to use binary rather than base 10. It&#8217;s entirely for use at your own risk.</p>
<p>Lastly, it would seem that I am not the <a href="http://anirudhsanjeev.org/how-to-send-420-characters-per-twitter-message/">first</a> to have an idea along these lines, and some have even gone much, much <a href="http://www.flickr.com/photos/quasimondo/3518306770/in/photostream/">further</a>. Arguably <a href="http://lukehatcher.com/2009/05/storing-binary-data-in-twitter/">too far</a>. Truly, the internet is a wonderful enabler for people who want to do things simply to see if they can be done. I find it amusing how all of these seem to have sprung up in the last month!</p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/05/twitter-compression/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Procrastination</title>
		<link>http://idefex.net/2009/05/procrastination/</link>
		<comments>http://idefex.net/2009/05/procrastination/#comments</comments>
		<pubDate>Sat, 02 May 2009 14:16:21 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linkdump]]></category>
		<category><![CDATA[arcade]]></category>
		<category><![CDATA[art]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[businesscards]]></category>
		<category><![CDATA[cards]]></category>
		<category><![CDATA[controller]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[inspiration]]></category>
		<category><![CDATA[inspirational]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[joystick]]></category>
		<category><![CDATA[laser]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[meat]]></category>
		<category><![CDATA[motivation]]></category>
		<category><![CDATA[ninja]]></category>
		<category><![CDATA[ninjaropes]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[science]]></category>
		<category><![CDATA[short]]></category>
		<category><![CDATA[silly]]></category>
		<category><![CDATA[svg]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[tinyurl]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[typography]]></category>
		<category><![CDATA[web2.0]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=105</guid>
		<description><![CDATA[Jon Stewart had a pretty great interview last week with Cliff May where they discussed the merits of torture, which was excellent on many levels. What got a lot of traction was Stewart&#8217;s assertion that Truman was a war criminal for using the A-Bomb against Japan; he acknowledged that he could understand the decision at [...]]]></description>
			<content:encoded><![CDATA[<p>Jon Stewart had a pretty great interview last week with <a href="http://blog.indecisionforever.com/2009/04/29/jon-stewarts-extended-interview-with-cliff-may/">Cliff May</a> where they discussed the merits of torture, which was excellent on many levels. What got a lot of traction was Stewart&#8217;s assertion that Truman was a war criminal for using the A-Bomb against Japan; he acknowledged that he could understand the decision at the time, but looking back it was an atrocity and should be considered as such by Americans, who should learn from this particular mistake in the past.  </p>
<p>Seeing a commentator speak in this way was novel, which was why it got the attention it did. Stewart was essentially forced into admitting this to defend his position on torture without resorting to double standards which Cliff May would have surely jumped on. Unfortunately, Stewart has now <a href="http://www.indecisionforever.com/video/index.jhtml?videoId=225918">retracted</a> what he said, saying it was stupid. I don&#8217;t believe that&#8217;s true; it&#8217;s a valid opinion that can be defended (as Stewart himself did to some extent in the original interview). From a (relative) outsider&#8217;s perspective, it seems like he&#8217;s being forced to say it simply because his original statement wasn&#8217;t popular. It&#8217;s unfortunate that Cliff May doesn&#8217;t have a chance to respond, because I think he would have relished the chance to be someone to score a (rare) point against Stewart.</p>
<p>Project deadline is looming, so as a bit of a shortcut for content, a selection of links that I&#8217;ve run across over the last couple of weeks and found worth enough of bookmarking. Not sure if I&#8217;ll do this consistently (it&#8217;s very easy to do), but it&#8217;s a relatively quick way to get a bulkier blog post with genuine content.</p>
<ul>
<li><a href="http://www.slagcoin.com/joystick.html">Slagcoin Joystick Controller page</a> &#8211; I&#8217;ve been fighting the urge to build an arcade stick for the Xbox 360 for a little while now; I can&#8217;t act on it while I&#8217;m at uni, but if the urge is still there when I get home over the summer, this certainly seems like a resource I&#8217;d want to tap.</li>
<li><a href="http://textorizer.whatfettle.com/">Textorizer &#8211; vectorize a picture using text strings</a> &#8211; I don&#8217;t have a reason to use this yet, but it&#8217;s something that I could quite easily suddenly think of the perfect use for out of the blue.</li>
<li><a href="http://www.youtube.com/watch?v=d6wRkzCW5qI">YouTube &#8211; 40 Inspirational Speeches in 2 Minutes</a> &#8211; Sent to me as required watching before exams. Very entertaining.</li>
<li><a href="http://www.evilmadscientist.com/">Making the World a Better Place, One Evil Mad Scientist at a Time</a> &#8211; I&#8217;ve only skimmed it so far, but I&#8217;m already completely sold on this blog. Seems to link to exactly the sort of stuff that I&#8217;d enjoy making. They&#8217;re the source of the electric motor above, but the whole blog is solid gold.</li>
<li><a href="http://www.sarkscape.com/games/iphone/ninja-ropes-extreme/">Ninja Ropes Extreme</a> &#8211; Simple in its gameplay, yet epic in its scope &#8211; Ninja Ropes! I ran across this courtesy of the Dr Horrible Commentary &#8211; The Musical!</li>
<li><a href="http://tinyarro.ws/">Tinyarro.ws &#8211; Shortest URLs on Earth</a> &#8211; Uses Unicode domains and characters to provide absolutely miniscule URLs. Unfortunately, a lot of Twitter (where it&#8217;d see a lot of use) clients don&#8217;t yet support it. And then there&#8217;s the whole debate about URL shorteners in the first place&#8230;</li>
<li><a href="http://www.evilmadscientist.com/article.php/HomopolarMotor">How to make the simplest electric motor</a> &#8211; Definitely making one of these when I get home, if not before.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/05/procrastination/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Technology and TeX</title>
		<link>http://idefex.net/2009/04/technology-and-tex/</link>
		<comments>http://idefex.net/2009/04/technology-and-tex/#comments</comments>
		<pubDate>Tue, 07 Apr 2009 19:48:23 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[iPod]]></category>
		<category><![CDATA[LaTeX]]></category>
		<category><![CDATA[Wii]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=103</guid>
		<description><![CDATA[The Wii can now boot backups off of a hard drive. &#8220;Excellent&#8221;, I thought to myself. &#8220;I have an iPod sitting around, and if I backed up Brawl onto it, I&#8217;d be able to play Brawl without listening to my Wii&#8217;s DVD drive grinding itself away to dust&#8221;. So I set about obtaining the relevant [...]]]></description>
			<content:encoded><![CDATA[<p>The Wii can now boot backups off of a hard drive. &#8220;Excellent&#8221;, I thought to myself. &#8220;I have an iPod sitting around, and if I backed up Brawl onto it, I&#8217;d be able to play Brawl without listening to my Wii&#8217;s DVD drive grinding itself away to dust&#8221;. So I set about obtaining the relevant software, which refuses to format the iPod to the (bespoke) WBFS file system. Nor did the homebrew client that runs on the Wii.</p>
<p>My original suspicion was that it was due to the fact that iPods use SCSI over USB, but I did some reading. It turns out that many iPod hard drives use block sizes of 2048 bytes, compared to 512 bytes used by almost every other hard drive, everywhere, which the wbfs utility assumed. So a quick &#8216;find | xargs grep&#8217;  and a compile later, I was able to format the iPod. Unfortunately, I still can&#8217;t rip from the Wii, so I&#8217;ve been using another hard drive as an intermediary. Because the hard drive in the iPod is relatively slow, loading times are about the same as off the DVD &#8211; but no grinding. Whenever I hear it, I get flashbacks to my Dreamcast and PSO v2, with the ever-increasing loading times.</p>
<p>My Part III project is dragging itself along. It&#8217;s just managed to stagnate over Easter, despite my efforts to the contrary. I really need to get it rolling again. The computational element taking so long to do each run doesn&#8217;t really gel well with my working style, which is to sit down and just do the damned thing, but where I have six hour long enforced gaps, it&#8217;s tricky to find my way back once I&#8217;ve set it going. I have a reasonable draft for the write-up, up to the point where results are necessary, but after that it&#8217;s really just an expanse of blank. I&#8217;m back to university on Sunday, which will perhaps spur me on to action if I&#8217;ve not already managed to get back on the horse. Having to revise minor options for an exam later this month has hardly helped, either.</p>
<p>As part of my writeup procrastination, I found some <a href="http://www.dfcd.net/articles/latex/latex.html">interesting</a> <a href="http://www.ece.ucdavis.edu/~jowens/commonerrors.html">articles</a> about common errors in scientific write-ups. I admit to committing some of them in the past, but I&#8217;m striving to eliminate them now. </p>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/04/technology-and-tex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lightning Strikes Twice</title>
		<link>http://idefex.net/2009/02/lightning-strikes-twice/</link>
		<comments>http://idefex.net/2009/02/lightning-strikes-twice/#comments</comments>
		<pubDate>Fri, 20 Feb 2009 22:37:44 +0000</pubDate>
		<dc:creator>area</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.idefex.net/?p=100</guid>
		<description><![CDATA[Yet another entry during term?!! Killing some time before going out, a quick post on some topics that have been circulating in my mind for the last few days. My week five blues seem to have arrived exactly a week late. This is unsurprising, as lectures didn&#8217;t start for me until week two, so they [...]]]></description>
			<content:encoded><![CDATA[<p>Yet another entry during term?!! Killing some time before going out, a quick post on some topics that have been circulating in my mind for the last few days.</p>
<ul>
<li>My week five blues seem to have arrived exactly a week late. This is unsurprising, as lectures didn&#8217;t start for me until week two, so they could be considered right on schedule. Unfortunately, everyone else has already conquered them, so I&#8217;m wallowing alone, somewhat.</li>
<li>My <a href="http://idefex.net/b3takhan">Khan Machine</a> seems to still be going strong. Two weeks after it was in the <a href="http://b3ta.com">B3ta</a> newsletter, it now has over 3500 graphs drawn, and still seems to be drawing around 50 visitors a day, after getting around 5000 hits in the first 24 hours. Pleasingly, people thought it worth submitting to Digg and Reddit, but it didn&#8217;t hit the front page on either, thankfully &#8211; I am only on free hosting, after all, and I don&#8217;t think their servers would have appreciated it!</li>
<li><a href="http://astrometry.net">Astrometry.net</a> is absolutely staggering, especially when you see it go to work on your own crude <a href="http://www.flickr.com/photos/area/223165024/in/set-72157594248863572/">contributions</a>.</li>
<li>Having signed up for Twitter quite a while ago, I never used it. I&#8217;ve been forcing myself to (slowly) since around Christmas, and while my own contributions are comparatively infrequent, I enjoy those from the people I&#8217;m following. These are mostly celebrities of <a href="http://twitter.com/doctorow">one</a> <a href="http://twitter.com/feliciaday">form</a> or <a href="http://twitter.com/stephenfry">another</a> that I&#8217;m interested in for whatever reason. It&#8217;s bite-sized celebrity gossip, news and banter. I think Twitteriffic is going to be hanging around on my Mac for a while.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://idefex.net/2009/02/lightning-strikes-twice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
