<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>atomicules</title>
 <link href="http://atomicules.co.uk/atom.xml" rel="self"/>
 <link href="http://atomicules.co.uk/"/>
 <updated>2012-05-02T08:01:59-07:00</updated>
 <id>http://atomicules.co.uk/</id>
 <author>
   <name>atomicules</name>
   <email>atomicules@lavabit.com</email>
 </author>

 
 <entry>
   <title>The Obrananapan</title>
   <link href="http://atomicules.co.uk/2012/05/02/obrananapan.html"/>
   <updated>2012-05-02T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/05/02/obrananapan</id>
   <content type="html">
		
				 &lt;p&gt;Apparently, Graeme Obree said that &lt;a href=&quot;http://philsroadbikingblog.blogspot.com/2010/09/meeting-graeme-obree-part-ii.html&quot;&gt;bananas and marzipan&lt;/a&gt; are good foods for cycling. So I thought why not combine the two? And that's precisely what I did: Banana wrapped in marzipan. Awesome.&lt;/p&gt;

&lt;p&gt;(It kind of feels as if this post should have a picture, but it would just be a yellow blob and you can easily imagine that yourself).&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(Also, apologies for all the cycling related posts lately. I have some code related ones on the back burner, but they take significantly more time to get to fruition)&lt;/em&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Marigolds and Carrier Bags</title>
   <link href="http://atomicules.co.uk/2012/04/30/marigolds-and-carrier-bags.html"/>
   <updated>2012-04-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/04/30/marigolds-and-carrier-bags</id>
   <content type="html">
		
				 &lt;p&gt;Marigolds work: Carrier Bags don't.&lt;/p&gt;

&lt;p&gt;Until I can afford to spend £30 on a pair of socks(!) I thought I'd try a carrier bag on my foot inbetween two layers of socks. This didn't really work, although probably did delay things for a bit. Unfortunately I can no longer use my home made waterproof overshoes with my road bike as they catch on the chain ring and front derailleur.&lt;/p&gt;

&lt;p&gt;Using marigolds inbetween two layers of gloves works very well though. Fetching pink colour as well.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Two Broken Spokes...</title>
   <link href="http://atomicules.co.uk/2012/04/22/two-broken-spokes.html"/>
   <updated>2012-04-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/04/22/two-broken-spokes</id>
   <content type="html">
		
				 &lt;p&gt;...should not have caused this much trouble:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cycling home I hear this load &quot;Ping!&quot; and wondered what on earth had happened, but couldn't feel or see anything wrong.&lt;/li&gt;
&lt;li&gt;Then I looked down and noticed my rear wheel wasn't running true and so knew it was a broken spoke. Gutted, but at least I could get home.&lt;/li&gt;
&lt;li&gt;A few miles later another &quot;Ping!&quot; (this must be the sound of the head of the spokes bouncing off the plastic guard at the back of the cassette - I don't have one on my fixed gear so the sound is much more subtle on that). I've never had one go straight after the other like that.&lt;/li&gt;
&lt;li&gt;The wheel began to rub since it was out of true so I used the quick release on the rear brake to open it up and carried on.&lt;/li&gt;
&lt;li&gt;It was still rubbing and was getting worse. That's when I realised the wheel had gone out of true so much it was rubbing on the frame and not just the brakes.&lt;/li&gt;
&lt;li&gt;So there was nothing left for it, but to get off and carry the bike (since the wheel had jammed that much I couldn't wheel it; I think riding it with two broken spokes caused it to go more out of true). Fortunately it was only four miles. And fortunately road bikes don't weigh much!&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;And that should have been the end of it of course. Unless you are me, in which case:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You don't have a &lt;a href=&quot;http://sheldonbrown.com/harris/tools/cassette.html&quot;&gt;cassette tool&lt;/a&gt; (since you weren't anticipating any repairs so soon on this bike) so you can't replace the spokes.&lt;/li&gt;
&lt;li&gt;You don't have any money to get a cassette tool, nor anyone to borrow one off. Which means you need to get another bike up and running.&lt;/li&gt;
&lt;li&gt;Fortunately you have your old fixed gear, but owing to severe lack of maintenance the pedals are completely broken (bearings gone completely and pedals will catch and lock up - not really what you want on a fixed gear).&lt;/li&gt;
&lt;li&gt;But that's not a problem, since you can just swop over the pedals from your new road bike and job's done.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;And that should have been the end of it. Unless you are me, in which case:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The pedals will not budge at all. You of course do not have a proper pedal wrench, but even with what you do have and a hammer they are going no where.&lt;/li&gt;
&lt;li&gt;Reading around, &lt;a href=&quot;http://www.jimlangley.net/wrench/pedalbasics.html&quot;&gt;applying heat&lt;/a&gt; seems to be recommended (since the cranks are aluminium and the pedal axle is steel). So, heat up cranks (coal fires do have their uses), remove pedals and fit new?&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;And that should have been the end of it. Unless you are me, in which case:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The fixed gear, having taken quite a bit of abuse, is not the cleanest of things. In using a crank puller to get the cranks off, so I can stick them in the fire, the threads strip on the cranks - and I'm guessing that's because the threads were that dirty that I didn't screw it in enough.&lt;/li&gt;
&lt;li&gt;Fortunately, after a couple of attempts and an bit more stripping I do manage to get it to engage in a couple of threads and pull the crank off.&lt;/li&gt;
&lt;li&gt;So I stick the crank and pedal in the fire. Heat does NOTHING whatsoever.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I now have two broken bikes and no friggin' idea what to do. And I need my bike to get to work. A bit stressed. But owing to a stroke of genius and luck:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Take cranks off new bike.&lt;/li&gt;
&lt;li&gt;The large chainring pretty much lines up spot on with the rear cog on the fixed gear.&lt;/li&gt;
&lt;li&gt;The 19T cog I got for winter on the fixed gear gives a pretty much perfect ratio (~70 gear inches) with the 50T chainring from the road bike.&lt;/li&gt;
&lt;li&gt;I actually have some spare links to make up the chain to a long enough length.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Phew! All sorted until I can get the road bike running again.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Come On Legs</title>
   <link href="http://atomicules.co.uk/2012/04/11/come-on-legs.html"/>
   <updated>2012-04-11T13:10:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/04/11/come-on-legs</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Come on legs!&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;A rallying call to myself. Cycling for me is an individual thing, but I still both need to give and receive vocal encouragement at times.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>The Little Chainring vs Macho Macho Man</title>
   <link href="http://atomicules.co.uk/2012/04/11/the-little-chainring-vs-mach-macho-man.html"/>
   <updated>2012-04-11T13:05:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/04/11/the-little-chainring-vs-mach-macho-man</id>
   <content type="html">
		
				 &lt;p&gt;With all that time spent cycling fixed gear I just assumed I wouldn't have any need for that &quot;pissy&quot; little chainring when it came to riding a road bike. After all, why use that when I was used to standing up to get up hills, standing and leaning to get through headwinds and even, on occassion, snapping chains through sheer &quot;GRRRrrr&quot;-ness when facing the combination of both - or, indeed, getting off and walking.&lt;/p&gt;

&lt;p&gt;But it turns out I love that little chain ring. I can sit down and spin up hills I had to walk up and I can battle the headwinds by simply spinning merrily away (getting nowhere fast, but hey, faster than before). Fantastic.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>River Ythan Pre Dawn</title>
   <link href="http://atomicules.co.uk/2012/04/01/River-Ythan-Pre-dawn.html"/>
   <updated>2012-04-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/04/01/River-Ythan-Pre-dawn</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-mar-2012-5.jpg&quot; alt=&quot;River Ythan Pre Dawn&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Actually &lt;a href=&quot;https://twitter.com/#!/atomicules/status/184607501403172864&quot;&gt;taken the other morning on the way to work&lt;/a&gt;; I spent my lunch time brushing the dirt off. It wasn't exactly what I was looking for as I was hoping for actual sunrise through the mist and I got neither since it was before dawn and the mist was barely visible. I think I have a very similar photo from this time last year taken on my APS film camera and should I eventually get my films developed it will be interesting to see how it compares.&lt;/p&gt;

&lt;p&gt;All that said, I love this shot and I think it may be the best picture I've ever got on Polaroid (well Fuji).&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Daffodils</title>
   <link href="http://atomicules.co.uk/2012/03/31/Daffodils.html"/>
   <updated>2012-03-31T10:50:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/03/31/Daffodils</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-mar-2012-3.jpg&quot; alt=&quot;Daffodils&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;From last weekend, I think - I lose track of time. There are many more daffodils in bloom now down the track, which would have made for an even prettier picture, but the weather isn't as nice this weekend so I'm glad I got it when I did. Regarding that track: this was taken pretty close to the top of the track and you can just about make out the end of it in the distance. I cleared all of that of ice (big thick slabs) last winter with just a shovel. Just feel like I should point that out as often as I can.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>CMUS and offline scrobbling to Last.fm and Libre.fm</title>
   <link href="http://atomicules.co.uk/2012/03/31/CMUS-and-offline-scrobbling-to-lastfm-and-librefm.html"/>
   <updated>2012-03-31T00:50:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/03/31/CMUS-and-offline-scrobbling-to-lastfm-and-librefm</id>
   <content type="html">
		
				 &lt;p&gt;As &lt;a href=&quot;http://atomicules.co.uk/2012/03/17/To-the-command-line-batman.html&quot;&gt;mentioned here&lt;/a&gt; I've (somewhat) recently moved to using CMUS instead of Rythmbox. Ever since my iPod died completely I'd been relying on a desktop player and offline scrobbling; since I am most likely to listen to music at work, but can't scrobble because our proxy server blocks it. Rhythmbox supports offline scrobbling (hurray!), but is a bit crap about it (boo!): For unknown reasons it doesn't log all tracks and - although it did successfully scrobble them to Last.fm when back on line - when I decided I'd move to Libre.fm (but then reconsidered and kept my last.fm account as well) it was even crappier at scrobbling, logging a different number of tracks for each service and then losing all tracks for Libre.fm during submission!&lt;/p&gt;

&lt;p&gt;I'd checked (before getting carried away with the geek attractiveness of it) and &lt;a href=&quot;http://cmus.sourceforge.net/wiki/doku.php?id=status_display_programs#audio_scrobbling_to_eg_lastfm_or_librefm&quot;&gt;CMUS supported scrobbling&lt;/a&gt; via a few external plugins/scripts and a couple of them also provided offline support. The only one I could get working, however, was &lt;a href=&quot;http://nex.scrapping.cc/post-fm/&quot;&gt;Post.FM&lt;/a&gt;. Well, I say working, but I'd declared it as working after a quick online test. After a week's offline scrobbling, and months of scrobbling downtime (I always think of these things such as moving from Rhythmbox to CMUS and Last.fm to Libre.fm as little weekend tasks, but they always take me MUCH longer), I was full of anticipation for getting going with scrobbling again; however, for whatever reason, it wouldn't scrobble with a big backlog of offline scrobbles. I almost just gave up, but then I figured I'd try to get my head around Perl enough to convert the Post.FM cache to a format that I could use another programme or service to scrobble with, such as the &lt;a href=&quot;http://bugs.foocorp.net/projects/librefm/wiki/LastToLibre&quot;&gt;libreimport.py&lt;/a&gt; tool.&lt;/p&gt;

&lt;p&gt;And that is kind of where I am today:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Using Post.FM (unmodified until I figure out Perl more) to cache offline scrobbles.&lt;/li&gt;
&lt;li&gt;Using a &lt;a href=&quot;https://github.com/atomicules/post-fm&quot;&gt;complementary Perl script&lt;/a&gt; (work in progress) to convert the Perl Storable cache format to a &lt;a href=&quot;http://www.audioscrobbler.net/wiki/Portable_Player_Logging&quot;&gt;scrobble.log format&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Submit scrobbles to Last.fm and Libre.fm via &lt;a href=&quot;http://scroblr.net/&quot;&gt;Scroblr.net&lt;/a&gt; (for the time being. I'd prefer to use a command line tool, but Scroblr is quick and painless so I'm in no rush; my initial plan was to use &lt;code&gt;libreimport.py&lt;/code&gt; and forward scrobbles to Last.fm from Libre.fm, but it didn't work out right and I hit &lt;a href=&quot;http://bugs.foocorp.net/issues/765&quot;&gt;this bug with multiple scrobbles&lt;/a&gt; appearing on Last.fm; hence going and finding Scroblr.net).&lt;/li&gt;
&lt;/ol&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Canter</title>
   <link href="http://atomicules.co.uk/2012/03/20/Canter.html"/>
   <updated>2012-03-20T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/03/20/Canter</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-mar-2012-4.jpg&quot; alt=&quot;Canter&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;It was tricky finding the right place to stand for this one: I wanted to &quot;fill the frame&quot; as much as possible, but also make sure I was well out of the way of her cantering round. And then there was trying to gauge just how much she was going to cut the corner by; the answer: a lot more than I expected!&lt;/p&gt;

&lt;p&gt;(But I still really like this)&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>To the Command Line, Batman!</title>
   <link href="http://atomicules.co.uk/2012/03/17/To-the-command-line-batman.html"/>
   <updated>2012-03-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2012/03/17/To-the-command-line-batman</id>
   <content type="html">
		
				 &lt;p&gt;For reasons that I am unable to properly explain (to myself, let alone others), over the past few months I have been unable to resist the compulsion to investigate and set-up command line &lt;s&gt;mail&lt;/s&gt; clients (in general).&lt;/p&gt;

&lt;p&gt;It probably has something to do with low memory requirements, well a lot to do with that, and that would be my reasoning now, but it wasn't like I actually had that foresight that prompted all this tinkering. But, yeah, at home I have the old Powerbook that is maxed out at 1.25GB RAM and always has at least one other account constantly logged in with Safari, etc, sucking a blackhole's amount of swap space, and at work I live in a virtual machine and so only have 1GB of RAM to play with. So low memory applicationss do make A LOT of sense.&lt;/p&gt;

&lt;p&gt;Oh, and I guess the other obvious thing is command line applications are more likely to be cross platform.&lt;/p&gt;

&lt;p&gt;It started with mail clients...&lt;/p&gt;

&lt;h2&gt;Mail&lt;/h2&gt;

&lt;p&gt;Since I like Vim, I kind of figured out that &lt;a href=&quot;http://en.wikipedia.org/wiki/Alpine_(e-mail_client&quot;&gt;Pine/Alpine/Re-Alpine&lt;/a&gt; were out of the question (although I belatedly understand it is possible to use Vim with them) and that really that only left &lt;a href=&quot;http://www.mutt.org/&quot;&gt;Mutt&lt;/a&gt;, but I just couldn't bring myself to figure it out. &lt;a href=&quot;http://pbrisbin.com/posts/two_accounts_in_mutt&quot;&gt;There's&lt;/a&gt; &lt;a href=&quot;http://fsk141.com/my-fear-of-mutt-and-why-it-was-all-for-null&quot;&gt;plenty&lt;/a&gt; &lt;a href=&quot;http://mutt.blackfish.org.uk/&quot;&gt;of&lt;/a&gt; &lt;a href=&quot;http://thomas.pelletier.im/2010/10/low-memory-mail-client/&quot;&gt;help&lt;/a&gt; &lt;a href=&quot;http://hynek.me/articles/my-mutt-gmail-setup/&quot;&gt;out&lt;/a&gt; &lt;a href=&quot;http://jason.the-graham.com/2011/01/10/email_with_mutt_offlineimap_imapfilter_msmtp_archivemail/&quot;&gt;there&lt;/a&gt;, but the more I read the more tricky is looked. Such was my aversion to knuckling down and figuring Mutt out I managed to find some alternatives:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://sup.rubyforge.org/&quot;&gt;Sup&lt;/a&gt; is written in Ruby, is a breeze to setup, easy to use, but by default assumes that you don't really care about synchronising local and remote sources. Which might work fine for folk who are always on the same machine all the time and who also aren't forced to use webmail occasionally. As far as I can tell, if you use local mbox files, then it is possible to sync, but then there also does not seem to be any mbox equivalent to the excellent &lt;a href=&quot;http://offlineimap.org/&quot;&gt;OfflineIMAP&lt;/a&gt; (which uses maildir). There is a &lt;a href=&quot;http://gitorious.org/sup/mainline/commits/maildir-sync&quot;&gt;maildir sync branch&lt;/a&gt; someone created, but that would require manaully trying to merge and keep in sync with development.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;notmuchmail.org&quot;&gt;Notmuch&lt;/a&gt;, found this as a result of Sup. It's meant to be a re-write of Sup taking the best bits, making them faster and leaving the bad bits, but from my point of view it is almost the opposite. I wanted the mail client (Notmuch isn't one) as Sup has a great UI. There are &lt;a href=&quot;http://notmuchmail.org/frontends/&quot;&gt;some kind of interfaces provided&lt;/a&gt;, but the developers seem to prefer &lt;a href=&quot;http://git.notmuchmail.org/git/notmuch/history/HEAD:/emacs&quot;&gt;emacs&lt;/a&gt; over &lt;a href=&quot;http://git.notmuchmail.org/git/notmuch/history/HEAD:/vim&quot;&gt;vim&lt;/a&gt;. Poop.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.courier-mta.%22rg/cone/bk01-toc.html&quot;&gt;Cone&lt;/a&gt;. Another Pine derivative. I think, well, it must at least be influenced by it, hence its name. Easy to setup, but just was never going to work for me if I couldn't use Vim.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://danielchoi.com/software/vmail.html&quot;&gt;Vmail&lt;/a&gt;, and then I found this. Wow! I don't understand how I missed this one. This is the kind of thing I'd been searching for, for ages. I.e. I want a twitter client in Vim, find TwitVim, I want a mail client in Vim. Nada. I just never found this.
Was very excited about this, but it assumes Gmail (in theory &lt;a href=&quot;https://github.com/danchoi/vmail/wiki&quot;&gt;does other IMAP&lt;/a&gt;, but I couldn't get that to work) which isn't so great as I'm trying to de-googlefy and so have moved one email account away from Gmail. Also, I don't want an online only approach and since it needs to connect to an IMAP server (as far as I can tell) I ended up looking at Offlineimap + Dovecot + Vmail. And I started going down this route and trying to get Dovecot configured and then I just decided THIS IS UTTER INSANITY. Running my own IMAP server locally, just to read my mail that is already on an IMAP server somewhere else? It just doesn't seem right, or easy.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.mutt.org/&quot;&gt;Mutt&lt;/a&gt; And there we are. Right back to the start and the thing I was trying to avoid all along. It is true what it says on the tin: &lt;em&gt;&quot;All mail clients suck, this one just sucks less&quot;&lt;/em&gt;. As to configuration, I'll cover that elsewhere, perhaps, but it's similar to Vim: you just have to suck it up, figure it out and get on with it.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Twitter&lt;/h2&gt;

&lt;p&gt;I've been &lt;a href=&quot;https://twitter.com/#!/atomicules/status/83146601383727104&quot;&gt;using Twitvim for a little awhile now&lt;/a&gt; since it makes a lot of sense if you like Vim, plus its unobtrusive at work. I'm now also using &lt;a href=&quot;www.floodgap.com/software/ttytter/&quot;&gt;TTYtter&lt;/a&gt; (2, currently Beta). They work well together as &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2204&quot;&gt;TwitVim&lt;/a&gt; is better for paging through Tweets if you are so inclined to catch up on stuff you've missed whilst TTYtter does the realtime/streaming side of things and handles message threads better. In TTYtter I use a plugin for &lt;a href=&quot;https://github.com/reuteras/my-ttytter-addons/blob/master/report.pl&quot;&gt;spam reporting&lt;/a&gt; and one to get occasional &lt;a href=&quot;https://github.com/stormdragon2976/ttytter-extensions/blob/master/timestamp.pl&quot;&gt;timestamps&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Web (only at home)&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;http://www.floodgap.com/software/tenfourfox/&quot;&gt;TenFourFox&lt;/a&gt; is an excellent browser, but it's memory requirements aren't exactly low. So for quickly checking some websites (mainly BBC Weather, until I find/write a command line weather app) &lt;a href=&quot;http://www.elinks.cz/&quot;&gt;elinks&lt;/a&gt; is great; it even does tabbed browsing!&lt;/p&gt;

&lt;h2&gt;Music (only at work)&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;cmus.sf.net&quot;&gt;CMUS&lt;/a&gt; since Rhythmbox has memory issues for me. CMUS is fab, but I've found getting scrobbling working tricky. And I'll come to that separately, probably, eventually, maybe.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>SNose - Simplenote Object Synchronisation (Explicit)</title>
   <link href="http://atomicules.co.uk/2012/03/09/SNose.html"/>
   <updated>2012-03-09T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/03/09/SNose</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;https://github.com/atomicules/snose&quot;&gt;&#187; SNose - Simplenote Object Synchronisation (Explicit)&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;A little Python command line app I wrote that uses the &lt;a href=&quot;https://github.com/mrtazz/simplenote.py&quot;&gt;Simplenote.py&lt;/a&gt; module from &lt;a href=&quot;https://github.com/mrtazz&quot;&gt;mrtazz (Daniel Schauenberg)&lt;/a&gt; to synchronise arbitary files across multiple machines via the &lt;a href=&quot;ttp://simplenoteapp.com/&quot;&gt;Simplenote&lt;/a&gt; service. Basically I wanted a way to synchronise certain &quot;dotfiles&quot; without the &quot;expense&quot; of a Git repository. More info in the README if you follow the link.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Cycling Saved My Life</title>
   <link href="http://atomicules.co.uk/2012/03/07/Cycling-Saved-My-Life.html"/>
   <updated>2012-03-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/03/07/Cycling-Saved-My-Life</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Cycling saved my life&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;em&gt;Graeme Obree&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I wouldn't say I'm in anyway as near as dark place, but the year just gone and most certainly the start of this year has wrecked me mentally*. And for sure, if it wasn't for cycling, I feel my mind would be in a much worse state.&lt;/p&gt;

&lt;p&gt;* Which is odd as I've been through much harder times before. I think it just goes to show that it isn't one big thing that breaks you, but the constant application of smaller niggles.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>New Bike</title>
   <link href="http://atomicules.co.uk/2012/03/06/New-Bike.html"/>
   <updated>2012-03-06T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/03/06/New-Bike</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-mar-2012-2.jpg&quot; alt=&quot;New Bike&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I'll use this test shot (Yay, &lt;a href=&quot;http://atomicules.co.uk/2012/03/05/More-Neigh.html&quot;&gt;rollers haven't got stuck open&lt;/a&gt;) to mostly waffle on about my new bike (not that you can really see or tell from this photo; it's the one on the left).&lt;/p&gt;

&lt;p&gt;I'm sure I've mentioned this elsewhere, but I'll do a &lt;s&gt;brief&lt;/s&gt; (Fuck it, it's MY website, I'll do what I want) recap:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Got a &lt;a href=&quot;http://atomicules.co.uk/2009/07/27/taking-off-the-stabilisers-again.html&quot;&gt;fixed gear bike through Cycle2Work&lt;/a&gt; (first new bike since Father Christmas brought me one as a kid!), perfect for 7 mile round-trip commute.&lt;/li&gt;
&lt;li&gt;We move house, commute now a 38 mile round-trip. Nevermind, I'll get a more &lt;a href=&quot;http://boardmanbikes.com/cx/index.html&quot;&gt;appropriate bike&lt;/a&gt; as soon as Cycle2Work scheme re-opens as fixed gear a bit hard going in the winds, also need to be able to fit studded tyres for winter.&lt;/li&gt;
&lt;li&gt;Cycle2Work scheme gets put on hold indefinitely.&lt;/li&gt;
&lt;li&gt;A year and a half later, finally reopens. But in meantime have become accustomed to fixed and the key advantages of low (almost zero if you abuse things like me) maintenance. When times are tight this is ideal.&lt;/li&gt;
&lt;li&gt;So, was all set on getting another similar fixed gear so I could at least take this one offline to repair and then have as a spare.&lt;/li&gt;
&lt;li&gt;In typical &quot;just my luck fashion&quot;, the &lt;a href=&quot;http://www.genesisbikes.co.uk/bikes/cross/day-01/day-01-cross&quot;&gt;Genesis Day 01&lt;/a&gt;s I had my eye on at the LBS sell out, then PlanetX/On One stop doing &lt;a href=&quot;http://www.on-one.co.uk/reviews/pompino-reviews/&quot;&gt;Pompinos&lt;/a&gt;. So forced to have a re-think.&lt;/li&gt;
&lt;li&gt;Was primarily against a road bike as &lt;a href=&quot;http://atomicules.co.uk/2012/01/23/Mild.html&quot;&gt;could only afford Sora&lt;/a&gt; and I &lt;a href=&quot;http://atomicules.co.uk/2010/10/06/why-do-so-many-people-still-buy-road-bikes-with-drop.html&quot;&gt;ride in the drops&lt;/a&gt; a lot (although in hindsight, I can see how Sora would be useful on a winter only cross bike as could shift in mittens fine, but screw the &lt;a href=&quot;http://www.edinburghbicycle.com/products/revolution-cross-sport-11&quot;&gt;slow, boring, heavy, sensible option&lt;/a&gt;...)), but then miracle of miracles...&lt;/li&gt;
&lt;li&gt;I discovered &lt;a href=&quot;http://www.tredz.co.uk/cycletowork.aspx&quot;&gt;a company that accept Cyclescheme via mailorder&lt;/a&gt; and had a &lt;a href=&quot;http://www.gtbicycles.com/gbr/2012/bikes/road/performance/2012-gtr-series-5-0&quot;&gt;GT GTR Series 5.0&lt;/a&gt; bike that features an unheard-of-before-to-me brand of shifters called &lt;a href=&quot;http://www.microshift.biz/&quot;&gt;microSHIFT&lt;/a&gt; that don't have a stupid thumbshifter like Soras and would allow shifting from the drops!&lt;/li&gt;
&lt;li&gt;Victory&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;So, yes, hurray! I went for the road bike. It is an &quot;entry level&quot; road bike - apparently - but, fuck, I've been riding one gear (fixed), having 16 gears (instead of 18, 20) is already more than I know what to do with. I still have some concerns over maintenance costs, but well, I can't be expected to run things as lean as I have been doing forever. And I will work on getting the fixed gear fixed up for winter (it's only when you get a new bike that you realise &lt;em&gt;that&lt;/em&gt; is what a bike is meant to feel like and just how knackered the old one is).&lt;/p&gt;

&lt;p&gt;A couple of interesting things about riding a bike with gears and a freewheel after two and a half years of riding nothing but fixed gear:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I can't get my feet in the toe-clips. Ha, &lt;a href=&quot;http://atomicules.co.uk/2009/09/14/flip-at-the-bottom-this-is-the-image-that-has.html&quot;&gt;memories&lt;/a&gt;. I now understand why people use clipless pedals on road bikes. On a fixed gear bike it is actually easier (also the pedals on the fixed are easier to flip) as there is obviously resistance when flipping the pedal backwards. Not so with a freewheel. So even getting the first foot in is harder. I have to do this with the pedal at the bottom of the stroke before setting off. Also, since the bottom bracket is much lower on the road bike, the toe-clips scrape on the road which is annoying as I can't get my second foot in on whilst the cranks are rotating. I have to get up enough speed first so I can freewheel and hold the pedals steady with the first foot.&lt;/li&gt;
&lt;li&gt;Freewheeling is incredibly unnerving. It just feels wrong. But I shall have to force myself to do it because as well as the toe-clip issues, the lower bottom bracket also means I doubt some corners can be taken at full pelt whilst pedaling.&lt;/li&gt;
&lt;/ul&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>More Neigh</title>
   <link href="http://atomicules.co.uk/2012/03/05/More-Neigh.html"/>
   <updated>2012-03-05T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/03/05/More-Neigh</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-mar-2012-1.jpg&quot; alt=&quot;More Neigh&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Another neigh picture, this one from the weekend. I tried to follow up with a picture of Mouse on Summer (the new arrival), but this one had jammed slightly in the camera and didn't come out cleanly. This must have prised the rollers open a bit as the next one came out far too easily and didn't actually develop. But, hey, at least after over a year of having ponies I finally have two pictures of one of them.&lt;/p&gt;

&lt;p&gt;P.S: Where did February go?&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Purple Haze</title>
   <link href="http://atomicules.co.uk/2012/02/12/Purple-Haze.html"/>
   <updated>2012-02-12T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/02/12/Purple-Haze</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-feb-2012-1.jpg&quot; alt=&quot;Purple Haze&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Tried to capture the early morning haze across the fields. Aware of how much this camera (and me) struggles to expose well for both light and dark areas I upped the lightness knob a bit, but then overexposed it (so missing most of the effect of the haze) and then also got a nice purple roller thing during development. But saying all that, I do still like it.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>My 'Listening to New Music' Goal of 2010</title>
   <link href="http://atomicules.co.uk/2012/01/31/My-Listening-to-New-Music-Goal-of-2011.html"/>
   <updated>2012-01-31T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/31/My-Listening-to-New-Music-Goal-of-2011</id>
   <content type="html">
		
				 &lt;p&gt;I'll mostly skip the end of year review thing this time around as otherwise I will be unable to prevent a moan of truly EPIC proportions. I'll just let out a little sigh and crack on with this:&lt;/p&gt;

&lt;p&gt;I don't think I explicitly set this as a new year's resolution last year, but during the year I certainly developed an intent of listening to as much new music as possible. And although it felt like I'd achieved that aim I wanted to prove it.&lt;/p&gt;

&lt;p&gt;I found this excellent &lt;a href=&quot;http://bananabo.at/lastfm/&quot;&gt;Last.fm discoveries app&lt;/a&gt; via &lt;a href=&quot;http://build.last.fm/item/553&quot;&gt;build.last.fm&lt;/a&gt; earlier in the year, which almost exactly does what I want, but it only works with artists that have a minimum of twenty five plays in your library whereas I wanted to count even one play (because I'd have still listened to that artist even if I'd then immediately decided it was crap and warranted no further plays).&lt;/p&gt;

&lt;p&gt;Rather than try to hack/modify that, it just so happened that I'd also been playing with moving (or simultaneously using) &lt;a href=&quot;http://alpha.libre.fm/user/atomicules&quot;&gt;libre.fm&lt;/a&gt; and so was exporting scrobbles from last.fm to a local file. I'd started using the &lt;a href=&quot;http://bugs.foocorp.net/projects/librefm/wiki/LastToLibre&quot;&gt;tool recommended on libre.fm&lt;/a&gt;, but it missed some scrobbles (even though it went through every page of my last.fm scrobbles) so looking around I then found &lt;a href=&quot;http://www.easyclasspage.de/lastfm/seite-14.html&quot;&gt;this other tool&lt;/a&gt; that worked much better and got everything; it backs up to an XML file, rather than the (nicer) simple file format used by the &lt;code&gt;lastexport.py&lt;/code&gt; script (I'm still trying to find the time to make sure my libre.fm history matches my last.fm history, let alone set-up dual scrobbling; it's harder than it seems to get reliable offline scobbling on Linux).&lt;/p&gt;

&lt;p&gt;Using R it's really easy to import an XML file and get it into a dataframe. It's then possible to split plays by year and identify what artists haven't appeared in a previous year:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;&lt;span class=&quot;c1&quot;&gt;#Last.fm analysis&lt;/span&gt;

library&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;XML&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# See here for use: http://www.omegahat.org/RSXML/gettingStarted.html&lt;/span&gt;

doc &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; xmlRoot&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;xmlTreeParse&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;lastfmscrobbles.xml&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
mat &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; xmlSApply&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;doc&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kr&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;x&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; xmlSApply&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;x&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; xmlValue&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Has side effect that all cell contents are in lists&lt;/span&gt;
mat &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; t&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;mat&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#transpose&lt;/span&gt;
scrobbles &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; as.data.frame&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;mat&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Unlist columns of interest&lt;/span&gt;
scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;date &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; unlist&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;date&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; use.names&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; unlist&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; use.names&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#Make sure dates are actual dates.&lt;/span&gt;
scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;date &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; as.Date&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;date&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;%d %b %Y&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Subset scrobbles by year&lt;/span&gt;
scrobbles2011 &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; subset&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; grepl&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;^2011&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; date&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
scrobblespre2011 &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; subset&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; !grepl&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;^2011&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; date&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
scrobbles2010 &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; subset&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; grepl&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;^2010&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; date&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
scrobblespre2010 &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; subset&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; !&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;grepl&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;^2011&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; date&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; grepl&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;^2010&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; date&lt;span class=&quot;p&quot;&gt;)))&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Then find number of unique in a year&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#2011&lt;/span&gt;
unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles2011&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;!unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles2011&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;%in%&lt;/span&gt; unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobblespre2011&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)]&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#2010&lt;/span&gt;
unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles2010&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;!unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobbles2010&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;%in%&lt;/span&gt; unique&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;scrobblespre2010&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;artist&lt;span class=&quot;p&quot;&gt;)]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Based on this raw data, I had 162 artists in 2011 and 113 in 2010. However, this needs quite a bit of manual filtering as I've only been scrobbling since 2008 and I like to delve back into the past (bands I listened to when I was about sixteen seem to be a favourite). So, after a bit of manual sifting I get this to &lt;a href=&quot;http://simp.ly/publish/QrvxfY&quot;&gt;129 new artists for 2011 vs 73 new artists for 2010&lt;/a&gt;. So, yep, I did succeed in my goal of finding more new music.&lt;/p&gt;

&lt;p&gt;This is pretty impressive as both my iPod mini (finally!) and iPod Touch died permanent deaths last year so listening and scrobbling has relied on me using a computer. This year I'm taking it easier: It was just too much work to keep checking through the Line of Best Fit and the Guardian New Band of the Day feeds, looking for what seemed interesting and then trying to &quot;find&quot; tracks by those artists lying around on the internet. I'm hoping to use libre.fm to find more legitimately free music to listen to this year, but I'm not going to go mad about it.&lt;/p&gt;

&lt;p&gt;(As a footnote: One of the most impressive things about last year is that I managed to oust Freesteylers from &lt;a href=&quot;http://www.last.fm/user/i5m/charts?rangetype=year&amp;amp;subtype=artist&quot;&gt;my top artists&lt;/a&gt; spot. That took a lot of self-control).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Frost</title>
   <link href="http://atomicules.co.uk/2012/01/28/Frost.html"/>
   <updated>2012-01-28T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/28/Frost</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-jan-2012-6.jpg&quot; alt=&quot;Frost&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Hardly any snow this year, but a lot of frost lately, which makes for some rather beautiful - if a little chilly - mornings. This doesn't really capture it, but ho-hum, got to try these things.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Fast Fingers</title>
   <link href="http://atomicules.co.uk/2012/01/27/Fast-fingers.html"/>
   <updated>2012-01-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/27/Fast-fingers</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-jan-2012-5.jpg&quot; alt=&quot;Fast Fingers&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Manual shutter, manual triggered flash? Fast enough fingers? Just, yep!&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Fuzzy Steading</title>
   <link href="http://atomicules.co.uk/2012/01/26/Fuzzy-Steading.html"/>
   <updated>2012-01-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/26/Fuzzy-Steading</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-jan-2012-4.jpg&quot; alt=&quot;Fuzzy Steading&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Whilst stood doing the washing up (it is fair to say that where I live now permits even more lazy photography than where I used to live, the only crying shame is I've been unable to do any), I kept looking out and seeing the sunlight cast beautiful colours across this old steading. So I nipped out to get a photo. Whilst trying to keep the dog from jumping up and knocking me over I  completely forgot to adjust the focus and only remembered whilst wandering back inside. So I thought, &quot;Sod it&quot; and wandered back to the same spot as best as I could remember and exposed it again, this time focused - I thought I might as well as I had nothing to lose.&lt;/p&gt;

&lt;p&gt;I've subsequently tried to take two more shots of the same subject, but this first one, the mistake, is the best of the three. I've just not been able to the photo to match how I see it in my head and I've decided to give up trying and move on to other subjects.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Bailey</title>
   <link href="http://atomicules.co.uk/2012/01/24/Bailey.html"/>
   <updated>2012-01-24T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/24/Bailey</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-jan-2012-1.jpg&quot; alt=&quot;Bailey&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;In the excitement of having a whole two packs of instant film to play with (the last film I shot was a year ago) I continued to get carried away with trying to do things the camera was never meant to do (and unfortunately I've wasted most of the first pack in this manner). This was taken whilst jogging alongside my eldest who was trotting up the hill on Bailey (she's still learning so can't go off trotting on her own so some poor mug has to jog alongside 'just in case'). Anyway, never really stood much chance of pin-sharp focus, but the framing is pretty awesome :-)&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>i5m No More</title>
   <link href="http://atomicules.co.uk/2012/01/23/i5m-no-more.html"/>
   <updated>2012-01-23T15:37:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/23/i5m-no-more</id>
   <content type="html">
		
				 &lt;p&gt;Note to self: I realised I forgot to mention it here (although it is self-evident, I really should make a post for my own future reference) that after ten years of &quot;i5m&quot; I fancied a name change. A new beginning (of sorts) for the new year. And so I did.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>It Wont Do That Stop Trying</title>
   <link href="http://atomicules.co.uk/2012/01/23/It-wont-do-that-stop-trying.html"/>
   <updated>2012-01-23T14:54:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/23/It-wont-do-that-stop-trying</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/polaroid-jan-2012-2.jpg&quot; alt=&quot;It Wont Do That Stop Trying&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Yay! Let's post some pictures for the first time in a billion years. I've kind of avoided posting around New Year time because of the temptation of doing an &quot;End of Year Review&quot; thing and I'm not (really) going there this year (although I'll kind of mention that again in another post soon). However, I did want to post a picture of my wonderful Christmas presents (thanks to my very own Christmas Elf) which were some instant film and &lt;a href=&quot;http://www.learnyouahaskell.com&quot;&gt;Learn You a Haskell for a Great Good&lt;/a&gt;, which has been on my wishlist since &lt;a href=&quot;http://atomicules.co.uk/2011/04/12/Talking-of-Haskell.html&quot;&gt;then&lt;/a&gt;. So I thought I'd try (again) to see if I could get some kind of close-up lens working with my crappy &lt;a href=&quot;http://polaroids.theskeltons.org/drptr.htm&quot;&gt;Reporter&lt;/a&gt; - and as you can see, I couldn't.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Mild</title>
   <link href="http://atomicules.co.uk/2012/01/23/Mild.html"/>
   <updated>2012-01-23T14:43:00-08:00</updated>
   <id>http://atomicules.co.uk/2012/01/23/Mild</id>
   <content type="html">
		
				 &lt;p&gt;All this mild winter weather, and the roadies it has brought out of hibernation early, has really got me lusting after a road bike. It's so very, very tempting to go and get an entry level road bike with my cycle to work voucher (I forgot to do the blog post where I mentioned that good news for the year) even though I know full well I couldn't use it all year round:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It's still cold enough on my hands that I'm wearing big bulky gloves that would make gear changing really fiddly anyway (I want to get some mittens to take full advantage of riding fixed gear).&lt;/li&gt;
&lt;li&gt;I could only afford a bike with Sora (or lower) level components and since I ride most of the time in the drops, I know that &lt;a href=&quot;http://bikehugger.com/post/view/shimano-sora-9-sp-sti&quot;&gt;impossible to reach thumbshifter&lt;/a&gt; would REALLY annoy me.&lt;/li&gt;
&lt;li&gt;Skinny tyres may well be fine at the moment in the well gritted suburbs, but I've already fallen off on the icy roads near home and that's with studded winter tyres on.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I don't want to be a &lt;a href=&quot;http://www.cyclingtipsblog.com/2012/01/stuff-cyclists-say/&quot;&gt;roadie&lt;/a&gt; anyway. I just want to be able to overtake them again. I'm sure I'll feel fine when spring comes around I can get off the winter tyres and lower gear ratio and move back up above snail's pace again.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>A Quick Note for Idiots (me) on Installing the xapian-full gem on Linux</title>
   <link href="http://atomicules.co.uk/2011/12/26/A-Quick-Note-for-Idiots-%28me%29-on-Installing-the-xapian-full-gem-on-Linux.html"/>
   <updated>2011-12-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/12/26/A-Quick-Note-for-Idiots-(me)-on-Installing-the-xapian-full-gem-on-Linux</id>
   <content type="html">
		
				 &lt;p&gt;I've been playing around with &lt;a href=&quot;http://sup.rubyforge.org/&quot;&gt;Sup&lt;/a&gt; (I'll come to that in another post soon, fingers crossed), but couldn't get the &lt;a href=&quot;http://rubygems.org/gems/xapian-full&quot;&gt;xapian-full gem&lt;/a&gt; to install on Linux as it bombed out as follows:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;gem install xapian-full
Building native extensions.  This could take a &lt;span class=&quot;k&quot;&gt;while&lt;/span&gt;...
...
checking whether the C compiler works... no
configure: error: in &lt;span class=&quot;sb&quot;&gt;`&lt;/span&gt;/home/me/.rvm/gems/ruby-1.9.2-p290/gems/xapian-full-1.2.3/xapian-core-1.2.3&lt;span class=&quot;s1&quot;&gt;&amp;#39;:&lt;/span&gt;
&lt;span class=&quot;s1&quot;&gt;configure: error: C compiler cannot create executables&lt;/span&gt;
&lt;span class=&quot;s1&quot;&gt;See `config.log&amp;#39;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;more details.
rake aborted!


Tasks: &lt;span class=&quot;nv&quot;&gt;TOP&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&amp;gt; default
&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;See full trace by running task with --trace&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;


Gem files will remain installed in /home/me/.rvm/gems/ruby-1.9.2-p290/gems/xapian-full-1.2.3 &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;inspection.
Results logged to /home/me/.rvm/gems/ruby-1.9.2-p290/gems/xapian-full-1.2.3/./gem_make.out
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;And checking &lt;code&gt;config.log&lt;/code&gt; I got:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;configure:3866: checking whether the C compiler works
configure:3888: gcc   -R/home/me/.rvm/gems/ruby-1.9.2-p290/gems/xapian-full-1.2.3/lib conftest.c  &amp;gt;&amp;amp;5
gcc: error: unrecognized option &lt;span class=&quot;s1&quot;&gt;&amp;#39;-R&amp;#39;&lt;/span&gt;
configure:3892: &lt;span class=&quot;nv&quot;&gt;$?&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; 1
configure:3930: result: no
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;I found &lt;a href=&quot;https://bbs.archlinux.org/viewtopic.php?pid=926929#p926929&quot;&gt;this post on archlinux&lt;/a&gt; (which almost exactly explains what to do, I just didn't quite get it at the time) and &lt;a href=&quot;https://github.com/rlane/xapian-full/pull/4&quot;&gt;this github issue&lt;/a&gt; but it took me awhile to figure out how to apply the patch. It's always easy when you know how...&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;gem fetch xapian-full
gem unpack xapian-full-1.2.3.gem
&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;xapian-full-1.2.3
curl -O https://github.com/rlane/xapian-full/pull/4.patch
patch &amp;lt; 4.patch
gem build xapian-full.gemspec
gem install ./xapian-full-1.2.3.gem
&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; ..
rm -rf xapian-full-1.2.3
rm xapian-full-1.2.3.gem
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;I thought after unpacking I'd just be able to run &lt;code&gt;rake&lt;/code&gt; and install the gem that way, but if you can I can't figure out how. So repacking it (&lt;code&gt;build&lt;/code&gt;) it is - at least that doesn't take long.&lt;/p&gt;

&lt;p&gt;Have to say, Ruby on Linux has been a lot fiddlier than I thought. On my ancient OSX 10.5 PPC no problems at all installing xapian and sup. Colour me suprised.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Who Needs Gears When You Have Grrrs</title>
   <link href="http://atomicules.co.uk/2011/12/02/who-needs-gears-when-you-have-grrrs.html"/>
   <updated>2011-12-02T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/12/02/who-needs-gears-when-you-have-grrrs</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Who needs gears when you have grrrs?&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;Me (unless someone else has said it before, in which case: them).&lt;/p&gt;

&lt;p&gt;I so want to get this on a jersey next year.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Winter checklist</title>
   <link href="http://atomicules.co.uk/2011/11/21/winter-checklist.html"/>
   <updated>2011-11-21T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/11/21/winter-checklist</id>
   <content type="html">
		
				 &lt;p&gt;There's currently no sign of snow. But a month or so ago, when it could have been just around the corner for all I knew, my winter cycling checklist looked something like this (and so &lt;a href=&quot;http://atomicules.co.uk/2011/07/17/fear-of-big-slides.html&quot;&gt;I was a bit worried&lt;/a&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;☐ - Reliable functioning lights&lt;/li&gt;
&lt;li&gt;☐ - Lower gear ratio to help with the studded tyres and mushed up snow&lt;/li&gt;
&lt;li&gt;☐ - Heated gloves&lt;/li&gt;
&lt;li&gt;☑ - None of the above (even though you've had 9 months to prepare and last year's experience to go on where you were so cold one night you felt like crying and got just a little bit scared about how you were going to make the remaining 6 miles cycle home. And so cold when you did get home that you couldn't use your hands to undress yourself and had to rock gently in front of the fire whilst your fingers thawed trying not to cry too much so as not to scare the kids)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Fortunately it has improved somewhat and now looks like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;☑ - Reliable functioning lights&lt;/li&gt;
&lt;li&gt;☑ - Lower gear ratio to help with the studded tyres and mushed up snow&lt;/li&gt;
&lt;li&gt;☐ - Heated gloves&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Smart Lunar 35 Lux Lights&lt;/h2&gt;

&lt;p&gt;My &lt;a href=&quot;http://atomicules.co.uk/2010/11/06/busch-muller-ixon-iq.html&quot;&gt;B&amp;amp;M Ixon IQ&lt;/a&gt; bit the dust. I cycled a month with it in a very dodgy state: road vibrations caused it to continually switch from high to low power, until it finally decided to add &quot;OFF&quot; into it's newfound automatic mode selection routine. I tried fixing it quite a few times, but it wasn't to be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I'd fixed up the cracked lens cover with car headlamp lens repair tape.&lt;/li&gt;
&lt;li&gt;It had a big screw through the back to hold it shut after I &lt;a href=&quot;http://atomicules.co.uk/2011/01/22/an-update-on-the-light.html&quot;&gt;broke the plastic catch&lt;/a&gt; from opening it all the time to charge the batteries (and dropping it of course).&lt;/li&gt;
&lt;li&gt;I'd broken a couple of battery contacts: after dropping the light on it's end, the batteries squashing the spring contacts flat and then me trying to bend them out again, snap!&lt;/li&gt;
&lt;li&gt;So at first I though the mode switching was due to the broken battery contacts that I'd tried to replace with picture hooks. However, then I twigged the switch (or something) was broken&lt;/li&gt;
&lt;li&gt;To get to the innards you are &lt;a href=&quot;http://yacf.co.uk/forum/index.php?topic=31377.msg582145#msg582145&quot;&gt;meant to remove the hinge pin&lt;/a&gt;, but it's easier just cut out the battery carrier instead. Then you can start disassembling it from behind. Also the rubber switch cover can be pried out with a knife, etc.&lt;/li&gt;
&lt;li&gt;Turns out the switch was broken but attempting to mend/bypass it didn't work, so I can only assume that the switch wasn't the only broken bit.&lt;/li&gt;
&lt;li&gt;All fair enough really. It had been completely abused: dropped plenty of times and then smashed into the floor a couple of times when the mount became dodgy.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Anyway, I was all for just getting another one and treating it better (charge through built-in charger to avoid fatiguing the plastic catch and use the camlock to remove, not the clip, to avoid the clip becoming loose over time and the light one day vibrating itself out of the clip and onto the floor) since it is a very good light, but I needed something quickly (so not from Europe) and so ended up getting &lt;a href=&quot;http://www.planet-x-bikes.co.uk/i/q/LISMRT35FR/smart_lunar_35_lux_front_light&quot;&gt;two Smart Lunar's&lt;/a&gt; for less than &lt;a href=&quot;http://www.bike24.com/1.php?content=8;navigation=1;menu=1000,5,66;product=6825&quot;&gt;price of one Ixon IQ&lt;/a&gt;. And on that note, two are comparable to the Ixon IQ. One wouldn't do it though; it can't just be the 5 Lux difference, it must be to do with the Ixon's much better reflector design. Also, they get the same battery life I got with the Ixon IQ (5hrs), but from 2AA batteries each (again, probably explains why one is seemingly much more than just 5 Lux less than the Ixon IQ).&lt;/p&gt;

&lt;h2&gt;60 Gear Inches for Winter&lt;/h2&gt;

&lt;p&gt;I'm so very glad I dropped my gear ratio down this year for winter and (primarily) my winter tyres (since I guess &lt;a href=&quot;http://atomicules.co.uk/2011/02/18/40-16.html&quot;&gt;those were the issue here&lt;/a&gt;). Thinking back I really have no idea how I managed on the same 42/16 (~70 gear inch) ratio last winter. I guess I didn't. And that's why I had epic journeys into work and a lot of walking.&lt;/p&gt;

&lt;p&gt;I couldn't decide whether to go for a 18 or 19 tooth rear sprocket, as I was worried that 60 gear inches might result in too much spinning, but then a clearance offer on a 19 tooth made the decision for me. And I'm so glad I when for that option. There's not nearly as much spin as I thought there would be and I was surprised that there is still one hill I can't get all the way up without walking, and also that it isn't too low a ratio to stand up in when hill climbing. I guess in really, really bad winds and snow that perhaps going as low as 2:1 would be better, but fixed gear is all about compromise (or the state of being &quot;always in the wrong gear&quot;).&lt;/p&gt;

&lt;p&gt;But wow, it has already made the headwinds and winter tyre combination  much more bearable and I'm also hopeful that when the snow eventually comes, I'll be able to get through the churned up stuff a bit better than I did last year.&lt;/p&gt;

&lt;p&gt;(Note: I used the &lt;a href=&quot;http://204.73.203.34/fisso/eng/schpignone.htm&quot;&gt;rotafix method&lt;/a&gt; to stick this cog on the freewheel side of my hub. I sincerely doubt the 16 tooth is ever coming off, although would love to drop that to 17 for summer).&lt;/p&gt;

&lt;h2&gt;Heated Gloves&lt;/h2&gt;

&lt;p&gt;I may not have &lt;a href=&quot;http://www.blazewear.com/heated-gloves.html&quot;&gt;heated gloves&lt;/a&gt;, but I do have more pairs of gloves than last year (layers!) and I do have some emergency hand warmer things I can stick in if it gets really bad; perhaps next year for heated gloves.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Looping Through Figures, Sweave vs Tikz (pgfSweave)</title>
   <link href="http://atomicules.co.uk/2011/11/20/Looping-Through-Figures-Sweave-vs-Tikz-pgfSweave.html"/>
   <updated>2011-11-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/11/20/Looping-Through-Figures-Sweave-vs-Tikz-pgfSweave</id>
   <content type="html">
		
				 &lt;p&gt;Almost as soon as you start using R you hear about &lt;a href=&quot;http://www.statistik.lmu.de/~leisch/Sweave/&quot;&gt;Sweave&lt;/a&gt; (probably because it is included with the base install of R) which allows you to embed R code within LaTeX documents. However, I placed learning it on the back-burner for about a year so I could just spend time getting my head around R (although how I've managed to avoid LaTeX until now, considering my background and the amount of technical reports I've written over the years, is another matter).&lt;/p&gt;

&lt;p&gt;Then, as soon as you start using Sweave you come across the issue of plot fonts and sizes not matching the main report (personally I can live with the different font style, but the different sizes is annoying). And so that's when you hear about &lt;a href=&quot;http://crantastic.org/packages/pgfSweave&quot;&gt;pgfSweave&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;However, I was using Lattice graphics built-in capability to produce &lt;a href=&quot;http://stat.ethz.ch/R-manual/R-devel/library/lattice/html/xyplot.html&quot;&gt;multiple pages of plots&lt;/a&gt; (see 'layout'):&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;The number of pages is by default set to as many as is required to plot all the panels, and so rarely needs to be specified. However, in certain situations the default calculation may be incorrect, and in that case the number of pages needs to be specified explicitly.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;In Sweave, the way you would &lt;a href=&quot;http://www.statistik.lmu.de/~leisch/Sweave/FAQ.html#x1-11000A.9&quot;&gt;use one code chunk to produce multiple figures&lt;/a&gt; is to use a &lt;code&gt;tex&lt;/code&gt; chunk rather than a &lt;code&gt;fig&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;text&quot;&gt;%Traditional Sweave Loop
%Sweave file extract

&amp;lt;&amp;lt;eval=TRUE, echo=FALSE, results=hide&amp;gt;&amp;gt;=
#Cleanup - delete previous files
file.remove(list.files(pattern = glob2rx(&amp;quot;ybygroup*.png&amp;quot;)))
#No need to use a loop here, lattice graphics will produce the necessary number of pngs
png(file=&amp;quot;ybygroup%03d.png&amp;quot;, width=1000, height=2000)
xyplot(Y ~ Date | Grouping, datatable, layout=c(1,8), ylim=c(-100,100), xlim=as.Date(c(&amp;quot;2011-01-01&amp;quot;, &amp;quot;2011-07-01&amp;quot;)) )
#This echos when using PNGs, so put in it&amp;#39;s own block and hide.
dev.off()
@


&amp;lt;&amp;lt;results=tex, echo=FALSE&amp;gt;&amp;gt;=
files &amp;lt;- list.files(pattern = glob2rx(&amp;quot;ybygroup*.png&amp;quot;))
for(file in files){
    cat(&amp;quot;\\begin{figure}&amp;quot;)
    cat(&amp;quot;\\begin{center}&amp;quot;)
    cat(&amp;quot;\\includegraphics{&amp;quot;, file, &amp;quot;}\n\n&amp;quot;, sep=&amp;quot;&amp;quot;)
    cat(&amp;quot;\\end{center}&amp;quot;)
    cat(&amp;quot;\\end{figure}&amp;quot;)
}
@
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/1380278&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I still haven't fully got my head round pgfSweave and &lt;a href=&quot;http://cran.r-project.org/web/packages/tikzDevice/&quot;&gt;Tikz&lt;/a&gt;, but for individual plots you indicate the use of Tikz within the figure:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;text&quot;&gt;%Reference for pgfSweave / Tikz option
%Sweave file extract

\begin{figure}
&amp;lt;&amp;lt;fig=TRUE, tikz=T&amp;gt;&amp;gt;=
print(
    xyplot(Y ~ Date | Grouping, datatable[levels(datatable$Grouping)[1:8]], layout=c(1,8), ylim=c(-100,100), xlim=as.Date(c(&amp;quot;2011-01-01&amp;quot;, &amp;quot;2011-07-01&amp;quot;)) )
)
@
\end{figure}
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;But I wanted to be able to produce all plots via a loop as per Sweave, rather than have to manually set up enough &lt;code&gt;fig&lt;/code&gt; chunks so I came up with the following:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;text&quot;&gt;%Tikz loop
%Sweave file extract

\usepackage{tikz}
%...

&amp;lt;&amp;lt;results=tex, echo=FALSE&amp;gt;&amp;gt;=
#Need to know how many levels
nl &amp;lt;- length(levels(datatable$Grouping))
#then how many per graph
ng = 8
#Can then loop

for (i in 1:ceiling(nl/ng)) {
    cat(&amp;quot;\\begin{figure}\n&amp;quot;)
    cat(&amp;quot;\\begin{center}\n&amp;quot;)
    tikz(console=TRUE)
    start=(i-1)*ng+1
    end=i*ng
    print(
        xyplot(Y ~ Date | Grouping, datatable[levels(datatable$Grouping)[start:end]], layout=c(1,ng), ylim=c(-100,100), xlim=as.Date(c(&amp;quot;2011-01-01&amp;quot;, &amp;quot;2011-07-01&amp;quot;)) )
    )
    dev.off()
    cat(&amp;quot;\\end{center}\n&amp;quot;)
    cat(&amp;quot;\\end{figure}\n&amp;quot;)
}

@
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;All of this looks and seems amazingly obvious as I write it up now, but it wasn't at the time. Especially because I came across this weird bug (which, thinking about it now, might not be a bug, rather a nuance of the &lt;a href=&quot;http://crantastic.org/packages/data-table&quot;&gt;data.table&lt;/a&gt; package - I need to investigate further):&lt;/p&gt;

&lt;p&gt;works:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;&lt;span class=&quot;c1&quot;&gt;#Extract of R code&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#This works as expected&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Need to know how many levels&lt;/span&gt;
nl &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; length&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;levels&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;datatable&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;Grouping&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#then how many per graph&lt;/span&gt;
ng &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;8&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#Can then loop&lt;/span&gt;

&lt;span class=&quot;kr&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;i in &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;:ceiling&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;nl&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;ng&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    start&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;i&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;*&lt;/span&gt;ng&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;
    end&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;i&lt;span class=&quot;o&quot;&gt;*&lt;/span&gt;ng
    print&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
        xyplot&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Y ~ Date &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; Grouping&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; datatable&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;levels&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;datatable&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;Grouping&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;start:end&lt;span class=&quot;p&quot;&gt;]],&lt;/span&gt; layout&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;ng&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; ylim&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;-100&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; xlim&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;as.Date&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;2011-01-01&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;2011-07-01&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/1380293&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;doesn't work:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;&lt;span class=&quot;c1&quot;&gt;#Extract of R code&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#This doesn&amp;#39;t work properly&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Need to know how many levels&lt;/span&gt;
nl &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; length&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;levels&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;datatable&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;Grouping&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#then how many per graph&lt;/span&gt;
ng &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;8&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#Can then loop&lt;/span&gt;

&lt;span class=&quot;kr&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;i in &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;:ceiling&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;nl&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;ng&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    print&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
        xyplot&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Y ~ Date &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; Grouping&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; datatable&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;levels&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;datatable&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;Grouping&lt;span class=&quot;p&quot;&gt;)[(&lt;/span&gt;i&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;*&lt;/span&gt;ng&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;:&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;i&lt;span class=&quot;o&quot;&gt;*&lt;/span&gt;ng&lt;span class=&quot;p&quot;&gt;)]],&lt;/span&gt; layout&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;ng&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; ylim&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;-100&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; xlim&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;as.Date&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;2011-01-01&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;2011-07-01&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Instead of using the start and end variables within the loop, the values are calculated directly&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#as applied to the datatable. For some reason, from the 2nd loop onwards, `i*ng` seems to be &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#evaluated as `(i+1)*ng` which means Lattice automatically produces two pages of graphs, instead&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#of just the one page per loop that it should. &lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#This is probably just a data.table nuance actually, not a bug.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Since this just uses Tikz within a &lt;code&gt;tex&lt;/code&gt; chunk, in theory pgfSweave isn't actually required to process this and just  plain Sweave would do, in practice however, since pgfSweave can externalise the graphics by default, it will avoid text memory capacity issues with a large number of loops, where Sweave will run into them.&lt;/p&gt;

&lt;p&gt;When I got the Tikz solution working, I actually decided to go back to the plain Sweave way of doing things as for me it was much faster (producing Lattice xyplots, especially with lots of data points, is slow via Tikz) and using the &lt;code&gt;\includegraphics&lt;/code&gt; approach, the pngs scale better and you don't run into overfull &lt;code&gt;\hbox&lt;/code&gt; issues. You just need to tweak the text sizes for the plots to look ok.&lt;/p&gt;

&lt;p&gt;Since this, I've also come across a post which uses a &lt;a href=&quot;http://www.mail-archive.com/r-help@r-project.org/msg105487.html&quot;&gt;latex loop&lt;/a&gt; (which I thought must be possible, but wasn't clever enough to work out), but then also goes on to mention &lt;a href=&quot;http://cran.r-project.org/web/packages/brew/index.html&quot;&gt;Brew&lt;/a&gt; which looks interesting... and easier.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Fatigue</title>
   <link href="http://atomicules.co.uk/2011/11/18/fatigue.html"/>
   <updated>2011-11-18T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/11/18/fatigue</id>
   <content type="html">
		
				 &lt;p&gt;Not of me, of my handlebars. Didn't really think this was possible, but this week the left hand drop of my handlebars cracked all the way round and was only really held on by the &lt;a href=&quot;http://atomicules.co.uk/2011/08/11/free-handlebar-tape.html&quot;&gt;&quot;tape&quot;&lt;/a&gt;. It cracked so much I couldn't even do a chop and flop job and convert them to bullhorns.&lt;/p&gt;

&lt;p&gt;So whilst I wait for payday, I've had to make some new handlebars from the original riser bar that came with the bike. I've chopped that down, fitted it upside down and fitted some old mountain bike bar ends on so my bike now looks like some really freaky lo-pro with studded tyres.&lt;/p&gt;

&lt;p&gt;I really should try to get some pics this weekend (if only of the cracked drops).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Resizing VirtualBox Disk Images</title>
   <link href="http://atomicules.co.uk/2011/11/10/Resizing-VirtualBox-Disks.html"/>
   <updated>2011-11-10T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/11/10/Resizing-VirtualBox-Disks</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://pinboard.in/u:atomicules/b:57793c2b999c&quot;&gt;&#187; Resizing VirtualBox Disk Images&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This is a link to a link, which I almost detest doing, but in this case I feel the notes I've added to my Pinboard bookmark merit it. I've been trying to figure this out on and off now for a couple of weeks. Resizing the VirtualBox VDI was the easy bit, getting the Linux guest to recognise and use the increased &quot;volume&quot; was where I was struggling.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Recently Found and Listened</title>
   <link href="http://atomicules.co.uk/2011/11/05/Recently-Found-and-Listened.html"/>
   <updated>2011-11-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/11/05/Recently-Found-and-Listened</id>
   <content type="html">
		
				 &lt;p&gt;I was a bit worried that with the demise of my iPod Mini I'd struggle to keep up with listening to new music this year (and it feels like I've done quite well so far), but I am kind of &lt;a href=&quot;http://rstat.us/updates/4e8986641bdece449f010f3d&quot;&gt;getting&lt;/a&gt; &lt;a href=&quot;http://rstat.us/updates/4e8f7e601bdece7837012f02&quot;&gt;by&lt;/a&gt;. Anyway...&lt;/p&gt;

&lt;p&gt;I found some of the &lt;a href=&quot;http://youngandlostclub.com/releases/release_detail.php?catalogue=YALCLP003&quot;&gt;Young And Lost Club Compliation&lt;/a&gt; lying around - on the internet - which was good as it included a track from Oh Minnows and &lt;a href=&quot;http://www.thelineofbestfit.com/2011/08/oh-minnows-for-shadows/&quot;&gt;I wanted to check them out&lt;/a&gt;. Unfortunately I can't say I'm that bothered by the track on there (Might), so I &quot;might&quot; not bother checking out anything else by them. However, there's a track called &quot;Arrows Of Eros&quot; by Golden Silvers which is just fantastic - love it - and also &quot;My Kz, Ur BF&quot; by Everything Everything which I have heard a few times (I guess on the NME channel?), but I had no idea who it was by. So I went on to listen to True Romance by Golden Silvers, and Man Alive by Everything Everything, but on initial (and now subsequent) listens I've not found the albums as good as the singles. Damn shame, but hasn't stopped me listening to both of the singles on repeat.&lt;/p&gt;

&lt;p&gt;In one of those rare moments when I could wrestle the telly between the Tiny Pop and Pop Girl channels I flicked to the NME Channel and saw a video by Alex Winston (can't recall which song, but I've been listening to Fire Ant as a consequence) which was then followed by &lt;a href=&quot;http://www.last.fm/music/Kreayshawn/_/Gucci+Gucci&quot;&gt;Gucci Gucci by Kreayshawn&lt;/a&gt;. I'm almost certain I'm not Kreayshawn's target audience, but I love that track.&lt;/p&gt;

&lt;p&gt;I've been &lt;a href=&quot;http://www.thelineofbestfit.com/2010/12/teen-daze-release-pay-what-you-like-ep/&quot;&gt;wanting to listen to Teen Daze&lt;/a&gt; for a long time now and found a track called The Harvest. It's an ok track. Very chilled out and unable to make my mind up I thought they'd have to remain on my &quot;to listen&quot; list. But then I saw that &lt;a href=&quot;http://www.thelineofbestfit.com/2011/10/download-oh-canada-18/&quot;&gt;Oh! Canada 18&lt;/a&gt; (fuck me, &lt;a href=&quot;http://www.thelineofbestfit.com/2011/10/ohcanada19/&quot;&gt;number 19 is already out&lt;/a&gt;. I give up) had Surface by Teen Daze on so I gave that a whirl and now I really think I'm not that interested in them. Oh well, that's how it goes. But, I did very much like Sirens by The Pack A.D., It by Rich Aucoin and Who Are You? by Kathryn Calder.&lt;/p&gt;

&lt;p&gt;Continuing the theme of accidental discoveries, I also found some Freestylers stuff I'd not heard of before: The Frozen EP and Say Yes. They are ok, but not that brilliant that I can't go back (soon, honest; ok in a bit then - &lt;a href=&quot;http://www.last.fm/user/i5m/library/music/Freestylers/_/Say+Yes+%28Raw+As+F%2A%2AK+Remix%29&quot;&gt;who was I trying to kid&lt;/a&gt;?) to my self-imposed ban on the Freestylers (I've ever so slightly over done it the past few years so needed something fresh this year).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Formartine and Buchan Way</title>
   <link href="http://atomicules.co.uk/2011/11/04/formartine-and-buchan-way.html"/>
   <updated>2011-11-04T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/11/04/formartine-and-buchan-way</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.routes2ride.org.uk/routes2ride/the_formartine_and_buchan_way/&quot;&gt;&#187; Formartine and Buchan Way&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Since I had my winter tyres on, a lower gear ratio and it was daylight (yay for early finishes on a Friday!) I thought I'd pick up a bit of the Formartine and Buchan Way on the way home. I'd seen people cycle on it (as far as I can tell it is meant to be a cycle route) and once on the way home, where the road travels next to it, zoomed past another cyclist who was leisurely riding it only to be bemused when a mile or so later, where the road passes over the Way, there was the other cyclist! So I had figured it was a short cut worth trying.&lt;/p&gt;

&lt;p&gt;All I can say is &quot;Holy crap!&quot;. It's a cycle path as long as you have a full suspension mountain bike. For someone pretending they have a Cyclo-cross bike it was one hell of a bumpy ride. I think I'll stick to the road.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>And Dont Worry About The Studs Damaging Your</title>
   <link href="http://atomicules.co.uk/2011/10/31/and-dont-worry-about-the-studs-damaging-your.html"/>
   <updated>2011-10-31T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/10/31/and-dont-worry-about-the-studs-damaging-your</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;And don't worry about the studs damaging your inner tubes. They won't. The tires are carefully designed to prevent the studs from puncturing the tube... As tires age, the casing deteriorates, and then the studs can push through the casing...&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;a href=&quot;http://peterwhitecycles.com/studdedtires.asp&quot;&gt;Studded Bicycle Tires&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Had to swap to my winter tyres this weekend. Weather doesn't merit it yet, but my rear summer tyre was so worn it was bulging out in about eight different places. So I thought I might as well just put the winter ones on.&lt;/p&gt;

&lt;p&gt;I hadn't bought new winter tyres as they still looked in reasonable nick from last year (they were new then). But lo and behold I get a puncture on the way to work. It turns out the casing is failing on the rear and the studs are coming through.&lt;/p&gt;

&lt;p&gt;One fucking season! I cycle far too many miles!&lt;/p&gt;

&lt;p&gt;I can't afford a new one yet, so I'm just going to try lining it with the old summer tyre I've just taken off and see how that goes.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Data.Table Dingleberry</title>
   <link href="http://atomicules.co.uk/2011/10/09/Data-Table-Dingleberry.html"/>
   <updated>2011-10-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/10/09/Data-Table-Dingleberry</id>
   <content type="html">
		
				 &lt;p&gt;It's not the first time (and I'm sure it won't be the last time) that I blindly copied, pasted and adapted code before fully understanding what's going on.&lt;/p&gt;

&lt;p&gt;I had two sets of data (&quot;Step 1&quot; and &quot;Step 2&quot;), both of which looked something like this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;          id             Date
[1,]  1986524-23      2011-01-20
[2,]  2458768-21      2011-04-17
[3,]  2457845-24      2011-05-15
[4,]  4785874-32      2011-02-28
[5,]  7841111-12      2011-03-01
...
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;For each row in the Step 2 set of data, I wanted to find the matching IDs in Step 1, calculate the date difference(s) (since there could be more than one match), find the minimum date difference, and then add that into a new column into the Step 2 data.&lt;/p&gt;

&lt;p&gt;I was being clever and using the &lt;a href=&quot;http://datatable.r-forge.r-project.org/&quot;&gt;data.table&lt;/a&gt; package (since it really is much, much speedier for lookups than using functions like &lt;code&gt;subset()&lt;/code&gt;, but I was misled (because these examples abound!) by the help files and seeing things like this:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;DT&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;a&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;     &lt;span class=&quot;c1&quot;&gt;# join to 1st column of key&lt;/span&gt;
DT&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;J&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;a&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)]&lt;/span&gt;  &lt;span class=&quot;c1&quot;&gt;# same&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;em&gt;(&lt;code&gt;DT[J(&quot;a&quot;)]&lt;/code&gt; crops up a lot, but as far as I can tell (unless I'm completely ignorant) it is just a frivolous example as it's just doing &lt;code&gt;DT[data.table(&quot;a&quot;)]&lt;/code&gt;, and why on earth would you want to create a data.table just for &quot;a&quot;?)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And confused by the &lt;a href=&quot;http://datatable.r-forge.r-project.org/datatable-faq.pdf&quot;&gt;FAQ&lt;/a&gt;(PDF file), section &quot;1.6 Ok but I don’t know the expressions in advance. How do I programatically pass them in?&quot; and the use of &lt;code&gt;eval()&lt;/code&gt; and &lt;code&gt;quote()&lt;/code&gt;, etc, which (I think I've now twigged) are really for &lt;code&gt;j&lt;/code&gt; expressions, not &lt;code&gt;i&lt;/code&gt; expressions.&lt;/p&gt;

&lt;p&gt;So I ended up with this:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;step1.dt  &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; data.table&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;step1&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
setkey&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;step1&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; id&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
duplicates.step2&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;days.between  &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; sapply&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
    &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;:nrow&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;duplicates.step2&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#For each row in duplicates.step2&lt;/span&gt;
    &lt;span class=&quot;kr&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
        step2id &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; duplicates.step2.dt&lt;span class=&quot;p&quot;&gt;[,&lt;/span&gt;id&lt;span class=&quot;p&quot;&gt;][&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Gets the id&lt;/span&gt;
        temp  &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; min&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
            difftime&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
                duplicates.step2.dt&lt;span class=&quot;p&quot;&gt;[,&lt;/span&gt; Date&lt;span class=&quot;p&quot;&gt;][&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;],&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Gets the date&lt;/span&gt;
                step1.dt&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;J&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;eval&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;quote&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;step2id&lt;span class=&quot;p&quot;&gt;))]$&lt;/span&gt;Date&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#gets the dates for all step1 rows of the same id. This is where it all goes wrong&lt;/span&gt;
                units&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;days&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/1273684&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;eval&lt;/code&gt; and &lt;code&gt;quote&lt;/code&gt; are doing NOTHING here, removing them gets the same result (and still takes just as long). For my case, doing the below was 2400%(!) faster:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;r&quot;&gt;duplicates.step2&lt;span class=&quot;p&quot;&gt;$&lt;/span&gt;days.between  &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; sapply&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
    &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;:nrow&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;duplicates.step2&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt;
    &lt;span class=&quot;kr&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
        step2id &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; as.character&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;duplicates.step2.dt&lt;span class=&quot;p&quot;&gt;[,&lt;/span&gt;id&lt;span class=&quot;p&quot;&gt;][&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;])&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#as.character is important bit!&lt;/span&gt;
        temp  &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; min&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
            difftime&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;
                duplicates.step2.dt&lt;span class=&quot;p&quot;&gt;[,&lt;/span&gt; Date&lt;span class=&quot;p&quot;&gt;][&lt;/span&gt;q&lt;span class=&quot;p&quot;&gt;],&lt;/span&gt;
                step1.dt&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;step2id&lt;span class=&quot;p&quot;&gt;]$&lt;/span&gt;Date&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#No need to crazily create another data.table&lt;/span&gt;
                units&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;c&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;days&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Thought it was worth pointing out, just in case anyone else is as stupid as me and takes the trivial &lt;code&gt;DT[J(&quot;a&quot;)]&lt;/code&gt; example at face value.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Horse Is My Favourite Meat After Pony</title>
   <link href="http://atomicules.co.uk/2011/10/08/Horse-is-my-favourite-meat-after-pony.html"/>
   <updated>2011-10-08T00:37:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/10/08/Horse-is-my-favourite-meat-after-pony</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.ibreakhorses.se/&quot;&gt;
				
					&lt;img src=&quot;images/IBH-Hearts-LP.jpg&quot; alt=&quot;Horse Is My Favourite Meat After Pony&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;And I love &lt;a href=&quot;http://www.ibreakhorses.se/#1422828/P-R-E-S-S&quot;&gt;the artwork&lt;/a&gt; as well.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Horse Is My Favourite Meat</title>
   <link href="http://atomicules.co.uk/2011/10/08/Horse-is-my-favourite-meat.html"/>
   <updated>2011-10-08T00:36:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/10/08/Horse-is-my-favourite-meat</id>
   <content type="html">
		
				 &lt;p&gt;&lt;object type=&quot;application/x-shockwave-flash&quot; data=&quot;http://player.soundcloud.com/player.swf?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F18877329&quot; style=&quot;width: 100%&quot; height=&quot;81&quot;&gt;&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://soundcloud.com/bella-union/i-break-horses-winter-beats&quot;&gt;I Break Horses - Winter Beats&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Been loving this album this week. I hoped I would when I read &lt;a href=&quot;http://www.thelineofbestfit.com/2011/08/i-break-horses-hearts-2/&quot;&gt;this review&lt;/a&gt;. It's more chilled out than anything else I've liked recently and kind of dreamy. Can't help myself from hitting the repeat button.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Thepaceline It Will Be Winter Soon On The East</title>
   <link href="http://atomicules.co.uk/2011/10/08/thepaceline-it-will-be-winter-soon-on-the-east.html"/>
   <updated>2011-10-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/10/08/thepaceline-it-will-be-winter-soon-on-the-east</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.lfgss.com/thread29-1042.html&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_lsply9UnuQ1qma446o1_500.jpg&quot; alt=&quot;Thepaceline It Will Be Winter Soon On The East&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://www.the-paceline.com/post/11147402090&quot; class=&quot;tumblr_blog&quot;&gt;thepaceline&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;It will be winter soon on the East Coast.&lt;/p&gt;
&lt;p&gt;Bundle up.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;I could do with a fat bike come winter, at least until I reach the main roads. There's no one bike that's really suitable for my winter commute, but this would be great near home on the farm tracks. However, what I really like the look of are the gloves/muffs. I'm on three pairs of gloves already and it's not even cold - my hands are crap!&lt;/p&gt;

&lt;p&gt;&lt;em&gt;As an aside, how did I miss this in LFGSS? I should have been in the actual &lt;a href=&quot;http://www.lfgss.com/newpostinthread55633.html&quot;&gt;winter/snow bike thread&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>It wasn't meant to be this way</title>
   <link href="http://atomicules.co.uk/2011/09/11/It-wasnt-meant-to-be-this-way.html"/>
   <updated>2011-09-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/09/11/It-wasnt-meant-to-be-this-way</id>
   <content type="html">
		
				 &lt;p&gt;I had one of those sudden dawn-of-realisation moments last month: It just occurred to me that I was using Windows seven days a week. And yet if I thought back to over a decade ago, when I was buying my first computer (proper) I remember my operating shortlist was: OSX, BeOS or some flavour of Linux. Windows didn't even get a look in! (During University, as well as the norm of Windows NT in the lab and people using 98/ME at home, I'd got to use Solaris and Vax/VMS on my year out - so I was fortunate enough to at least know there were alternatives). At the time I did not consider myself geeky (capable) enough to use Linux. I would have loved to use BeOS, but - as far as I can recall from at the time - it's future was already &lt;a href=&quot;http://www.beincorporated.com/&quot;&gt;looking dead&lt;/a&gt;. And of course OSX wasn't yet out, but the &lt;a href=&quot;http://en.wikipedia.org/wiki/Osx#Public_Beta:_.22Kodiak.22&quot;&gt;promise of the beta&lt;/a&gt; was enough to sway me to drop my graduate loan on an iMac. And the rest is history...&lt;/p&gt;

&lt;p&gt;...or it should have been.&lt;/p&gt;

&lt;p&gt;Ok, I knew I'd pretty much have to use Windows five days a week at work, but could live with that if I didn't have to at home, but with the advent of wife plus kids my computer quickly became the family computer which then soon became &quot;the family, minus me&quot; computer.&lt;/p&gt;

&lt;p&gt;My work, for some obscure reason, provides me with a laptop as opposed to desktop and I'm free to take this home so I at least can have &quot;my computer&quot; again, but, &quot;urgh!&quot;, Windows. So I started off using &lt;a href=&quot;http://www.virtualbox.org&quot;&gt;VirtualBox&lt;/a&gt; and &lt;a href=&quot;http://linuxmint.com&quot;&gt;Linux Mint&lt;/a&gt; for my home/personal use, but I was unsure if using and installing VirtualBox on a 'commericial' machine was really compliant with the licensing and technically you are still using Windows (even if only as a host), so I swapped to using &lt;a href=&quot;http://slax.org&quot;&gt;Slax&lt;/a&gt; as then I could boot off a usb drive (even the miserly 512mb one I'd got for free from work) and all was well - I was much happier.&lt;/p&gt;

&lt;p&gt;Then my work laptop was up for renewal and I got a brand spanking new one, which was all very nice, but I could no longer get my wireless to work with Slax, or anything else I tried so after a while I just gave up. Afterall, I thought, I spend most of my time immersed in Vim and Chrome, what does the OS matter? (Plus, at about this time, I still had possession of my iPod Touch more than the kids did so that became by primary computer; until it got squashed - hmm, perhaps that also spurred my &quot;dawn of realisation moment&quot;).&lt;/p&gt;

&lt;p&gt;I don't know what made me look, but recently &lt;a href=&quot;http://arstechnica.com/open-source/reviews/2011/06/hands-on-running-haiku-alpha-3-on-a-netbook.ars?&quot;&gt;Haiku popped upon my radar&lt;/a&gt; and I fancied giving it a whirl. From a networking point of view (i.e. actually being able to use the thing), using a virtual image looked like the best bet. Looking at VirtualBox again I realised that the licensing for the personal edition actually permitted 'commerical use', i.e. I could legitimately install this on my work laptop without dropping my employer or myself in it (the fact that I'm still not meant to install anything is by-the-by; shouldn't give everyone admin rights then). So I had a play with Haiku (I love it) and at some point whilst searching for information on VirtualBox I stumbled across a blog comment (I can't damn well find the thing now; have spent ages trying!) along the lines of &quot;...my company insists we use Windows, so I just use VirtualBox to run the OS of my choice...&quot; which immediately got me thinking: Why don't I just do that?&lt;/p&gt;

&lt;p&gt;The majority of my computer usage is at work so being able to escape Windows for all seven days of the week would be amazing. My job had changed and no longer required specialist Windows specific software, work were just piloting Outlook Exchange 2010 so there was finally a decent web client should I fail to get any desktop software working with Exchange (likely), and there was a web client for our internal messaging service. All things considered, there was nothing really stopping me from switching.&lt;/p&gt;

&lt;p&gt;And so I did. Haiku, as fun as it is, wouldn't cut it as a replacement OS so I went looking at Ubuntu (I had played with Ubuntu before), learnt about the whole Unity vs Gnome 3 thing, saw Gnome 3 and thought &quot;Wow!&quot; and went and downloaded Fedora 15. Well, kind of, I did have a go with Ubuntu first, but not for long.&lt;/p&gt;

&lt;p&gt;So far, so good. I run Fedora full screen in VirtualBox and I don't really have to know I'm in Windows at all. And mostly don't have to go back... just for the odd document compatibililty issue and screen share.&lt;/p&gt;

&lt;p&gt;Of course, after I've done all this and I'm bringing my work laptop home at weekends so I finally have something that resembles my own computer again... &quot;Dad, can I go on your work computer....&quot;&lt;/p&gt;

&lt;p&gt;&quot;Aaargh!!!&quot;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I have (roughly) &lt;a href=&quot;http://simp.ly/publish/VcTcLc&quot;&gt;documented my experiences with living in a VirtualBox.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>OS and Network Conditionals in Vim Configuration</title>
   <link href="http://atomicules.co.uk/2011/09/05/vim-followup.html"/>
   <updated>2011-09-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/09/05/vim-followup</id>
   <content type="html">
		
				 &lt;p&gt;A bit of a follow-up to &lt;a href=&quot;http://atomicules.co.uk/2009/05/30/vim.html&quot;&gt;this vim post&lt;/a&gt; since - as happens to all Vim uses - my .vimrc file has grown a bit in complexity. It's still nowhere as near insane as some people's, but has changed enough to make that post redundant. Oh, and so has the number of plugins I'm using.&lt;/p&gt;

&lt;p&gt;I am still very much cross platform (as much Linux as possible, OSX when I get the chance and Windows when I have to; too frequently) so finally moved to using &lt;a href=&quot;http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/&quot;&gt;git submodules and pathogen to synchronise&lt;/a&gt; across platforms. I'm not making my dotvim repository public though, as - well - who the hell actually wants to read through someone elses .vimrc?&lt;/p&gt;

&lt;p&gt;What is worth mentioning though is how you can use conditional statements in the .vimrc to really have just one file you can use anywhere.&lt;/p&gt;

&lt;h2&gt;OS Specific Configuration&lt;/h2&gt;

&lt;p&gt;This is a little more obvious and I'm sure lots of people do this. I'm using this &lt;a href=&quot;http://objectmix.com/editors/149466-operating-system-checking-vimrc-files.html#post517594&quot;&gt;approach by Mikolaj Machowski&lt;/a&gt; to set OS specific items, mainly font sizes, but also different settings for TwitVim. Note: OSX is &quot;Darwin&quot; and &lt;code&gt;uname&lt;/code&gt; doesn't work on Windows so have this as my final &lt;code&gt;else&lt;/code&gt; statement.&lt;/p&gt;

&lt;h2&gt;Network Specific Configuration&lt;/h2&gt;

&lt;p&gt;Not exactly tricky, but amazingly useful, is extending the above to make settings based on the network you are on. I.e. for me this is whether I'm at work or at home. So in the OS specific sections I'm looking to find the IP address (it's OS specifc since a different command is needed on each OS):&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;c&quot;&gt;&amp;quot;OS Specific&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;&amp;quot;-----------&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; os &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; substitute&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;uname&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;\n&amp;quot;, &amp;quot;&amp;quot; ,&amp;quot;&amp;quot;) &amp;quot;thanks to http://objectmix.com/editors/149466-operating-system-checking-vimrc-files.html#post517594&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; os &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Linux&amp;quot;&lt;/span&gt;
    ...
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; ip &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;match&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;ip addr show&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;10.0.1&amp;quot;)&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;elseif&lt;/span&gt; os &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Darwin&amp;quot;&lt;/span&gt;
    ...
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; ip &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;match&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;ipconfig getifaddr en1&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;10.0.1&amp;quot;) &amp;quot;Or whichever enX interface you need&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Assume windows as uname doesn&amp;#39;t work on Windows   &lt;/span&gt;
    ...
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; ip &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;match&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;ipconfig&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;10.0.1&amp;quot;)&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/1190099&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(I know at home my IP address will be in the range &quot;10.0.1.X&quot;)&lt;/p&gt;

&lt;p&gt;Then I can set proxies for &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2204&quot;&gt;TwitVim&lt;/a&gt; and &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=3582&quot;&gt;SimpleNote.vim&lt;/a&gt; just for when I'm at work:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;c&quot;&gt;&amp;quot;IP Address specific&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;&amp;quot;-------------------&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;&amp;quot;(i.e. Home or Work)&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; ip &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;-1&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;    &amp;quot;Set proxies, Python urllib2 (TwitVim, Simplenote.vim) will automatically pick&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;&amp;quot;these up  &lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; $http_proxy &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;http://&amp;lt;username&amp;gt;:&amp;lt;password&amp;gt;@&amp;lt;proxy-url&amp;gt;:&amp;lt;proxy-port&amp;gt;&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; $https_proxy &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;http://&amp;lt;username&amp;gt;:&amp;lt;password&amp;gt;@&amp;lt;proxy-url&amp;gt;:&amp;lt;proxy-port&amp;gt;&amp;#39;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;And that's a &lt;a href=&quot;https://github.com/mrtazz/simplenote.vim/issues/13&quot;&gt;whole interesting thing in itself...&lt;/a&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Catching up with TLOBF and Guardian New Band of the Day</title>
   <link href="http://atomicules.co.uk/2011/08/27/catching-up-with-tlobf-and-guardian-new-band-of-the-day.html"/>
   <updated>2011-08-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/27/catching-up-with-tlobf-and-guardian-new-band-of-the-day</id>
   <content type="html">
		
				 &lt;p&gt;I'd fallen a bit behind (and have again, already, but let's not start) with checking through saved items from my TLOBF and Guardian's New Band of the Day feeds, but managed to make some progress this month with checking out what seemed like it might be interesting...&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/06/when-saints-go-machine-konkylie/&quot;&gt;When Saints Go Machine - Konkylie&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Falling foul of the &quot;better name than the music&quot; thing. Because that is a great name for a band, but the music not so very interesting. Kelly is probably the best track with Terminal One almost being ok.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.guardian.co.uk/music/2011/may/12/new-band-mac-miller&quot;&gt;Mac Miller&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;That review isn't for a specific album, seeing as at the time of it, his official debut album wasn't out. But it seems he has a couple of mixtapes knocking about so I gave K.I.D.S (Kicking Incredibly Dope Shit) a whirl. By a far margin the standout track is Nikes On My Feet (which also gets a mention in the Guardian review, although I'm not sure it in such a favourable light). I can't say I'm that fussed for anything else on this album (Kool Aid &amp;amp; frozen Pizza is slightly better than everything else), but perhaps I'll have to give Knock Knock a whirl and decided from there whether it's worth listening to anything else.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.guardian.co.uk/music/2011/jun/09/new-band-computer-magic&quot;&gt;Computer Magic&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Anything that mentions &quot;80s&quot;, &quot;synth&quot; and &quot;electronic&quot; has got to be worth a spin. Electric Fences is a nice little EP. No skimpy length tracks here. And it's all about the last track, Running, which is really quite something. I listen to that track a fair bit.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/05/what-would-jesus-drive-black-and-blue/&quot;&gt;What Would Jesus Drive - Black and Blue&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Ach, something else from back in May! Makes it all the worse when it is actually something really good that I could have been listening to. I'm so slow with getting around to things. The review ends with &quot;It’s not the sort of thing you’d want to listen to on repeat...&quot;, but actually it's fine (and perfectly advisable - and is what I did all one morning) to do that as long as you just stick to tracks 1 to 4. Track 5 is the reverse stand-out: and probably ruins what follows as it isn't until the last track, Fragile Mansions, where things seem to pick up again. So at least the album comes in - and goes out - on a bang. They should have just deleted track 5.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/07/not-cool-offer-free-album-download/&quot;&gt;Not Cool&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;They are right, it's not cool. It's always dangerous having negative connotations in your name. It's not like they are Shit Robot and can get away with it. Desks is ok. Well, it's free at least.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/05/friendly-fires-pala/&quot;&gt;Friendly Fires - Pala&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Friendly Fires are one of those bands that I thought I should get around to listening to, but turn out to be one I'm not so bothered that it took me a long time to. It's non-offensive. You can listen to it in the background and it won't annoy you, but it is bloody boring if you pay attention. Only Hawaiian Air is any good and they make you wait right until the end of the album for that; at least the days of tapes and LPs are gone and you can just skip to that track.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/08/azari-iii-azari-iii/&quot;&gt;Azari &amp;amp; III - Azari &amp;amp; III&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Although a late 80s/early 90s electronica vibe (and that seems to be my thing - some how) this album as a whole is not quite for me. I'm in agreement with the review: Reckless (With Your Love) is the stand-out (amazing) and Manic the close second. I reckon there must be some good remixes of those tracks knocking about... And I'm off to look for them... (In a bit).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Kyle Bean's Portfolio</title>
   <link href="http://atomicules.co.uk/2011/08/19/Kyle-Bean.html"/>
   <updated>2011-08-19T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/19/Kyle-Bean</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.kylebean.co.uk/portfolio/&quot;&gt;&#187; Kyle Bean's Portfolio&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This guy has talent. I love the Hen.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Free Handlebar Tape</title>
   <link href="http://atomicules.co.uk/2011/08/11/free-handlebar-tape.html"/>
   <updated>2011-08-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/11/free-handlebar-tape</id>
   <content type="html">
		
				 &lt;p&gt;The &lt;a href=&quot;http://www.sjscycles.co.uk/velox-cotton-cloth-adhesive-handlebar-tape-black-prod12629/&quot;&gt;el-cheapo bar tape&lt;/a&gt; I put on last year was so worn that my handlebars consisted of more electrical tape (patching up the &quot;holes&quot;) than original bar tape. However, even though bar tape is considered one of the cheapest upgrades there was no money in the bank for any more so I had a brainwave and used an old inner tube.&lt;/p&gt;

&lt;p&gt;I cut either side of the valve, then cut around the circumference so I had one long strip, then cut that in half lengthways so I had two pieces of &quot;tape&quot;. Even though it's not sticky, because it's rubber and stretches you can pull it tight wrapping it round so it will stay in place. Just needs a bit of electrical tape to secure at either end. Was plenty long enough (had to cut a bit off).&lt;/p&gt;

&lt;p&gt;Seems good so far:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Waterproof&lt;/li&gt;
&lt;li&gt;Hard wearing&lt;/li&gt;
&lt;li&gt;Doesn't budge&lt;/li&gt;
&lt;li&gt;Naturally vibration absorbing&lt;/li&gt;
&lt;li&gt;Non-slip grip&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Cheapskate cycling for the win!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>My Thoughts on The Cloud (Work in Progress)</title>
   <link href="http://atomicules.co.uk/2011/08/10/My-Work-In-Progress-Thoughts-On-The-Cloud.html"/>
   <updated>2011-08-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/10/My-Work-In-Progress-Thoughts-On-The-Cloud</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://simp.ly/publish/BzTdH3&quot;&gt;&#187; My Thoughts on The Cloud (Work in Progress)&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Because I never seem to find motivation to finish writing this blog post, I thought I'd just publish the working draft from Simplenote (after a minimal amount of tweaking into sections and sorting out typos, etc). A brilliant result for laziness since most of my thoughts are there, I just haven't had the impetus to make them coherent.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>...ts</title>
   <link href="http://atomicules.co.uk/2011/08/03/ts.html"/>
   <updated>2011-08-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/03/ts</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://road.cc/content/news/39840-cycle-work-scheme-payments-be-vatable-next-year&quot;&gt;&#187; ...ts&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://atomicules.co.uk/2010/09/25/her-majestys-right-cun.html&quot;&gt;Cont'd from&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Just another excuse for my employer never to bother renewing the scheme. My dream of a nice Cyclocross bike is remaining a dream forever it seems.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Sublime Text 2</title>
   <link href="http://atomicules.co.uk/2011/08/03/Sublime-2-Text-Editor.html"/>
   <updated>2011-08-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/03/Sublime-2-Text-Editor</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.sublimetext.com/blog/articles/sublime-text-2-beta&quot;&gt;&#187; Sublime Text 2&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I think I remember seeing this a while back (&lt;a href=&quot;http://daringfireball.net/linked/2009/10/15/sublime-text&quot;&gt;Ah, yes, I do&lt;/a&gt;) when it was Windows only, but Sublime 2 will be cross platform. Which makes this the first decent alternative to Vim I've seen. I downloaded it to give it a quick spin and it is interesting, especially the multi-select bit: you can use CTRL to select multiple bits of non-continous text and then start typing and all selections are replaced simultaneously. Also, it comes with the &lt;a href=&quot;http://atomicules.co.uk/2011/04/02/Solarized.html&quot;&gt;Solarized&lt;/a&gt; colour schemes built in. However, I don't think I'll be switching from Vim though, too much time invested there already.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Listening To This Month Chase And Status No More Idols</title>
   <link href="http://atomicules.co.uk/2011/08/01/listening-to-this-month-chase-and-status-no-more-idols.html"/>
   <updated>2011-08-01T12:50:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/01/listening-to-this-month-chase-and-status-no-more-idols</id>
   <content type="html">
		
				 &lt;p&gt;&lt;object type=&quot;application/x-shockwave-flash&quot; data=&quot;http://player.soundcloud.com/player.swf?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F1151275&quot; style=&quot;width: 100%&quot; height=&quot;81&quot;&gt;&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://soundcloud.com/chaseandstatus/end-credits&quot;&gt;Chase &amp;amp; Status 'End Credits' Ft. Plan B&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This album is &quot;full of win&quot;. And this, the last track on the album, is just amazing. Been around quite a while it seems, but it's new to me.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Listening To Last Month Sbtrkt</title>
   <link href="http://atomicules.co.uk/2011/08/01/listening-to-last-month-sbtrkt.html"/>
   <updated>2011-08-01T12:31:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/08/01/listening-to-last-month-sbtrkt</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/ErYAGQZs8e0?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;Some how never got around to mentioning this last month (How is it August already?!). Anyway, &lt;a href=&quot;http://theyoungturks.co.uk/sbtrkt-sbtrkt/&quot;&gt;SBTRKT - SBTRKT&lt;/a&gt; was the album of the month that month by virtue of it being the only new thing I listened to that month. And Pharoahs is definitely the highlight of the album. Way better than the other tracks.&lt;/p&gt;

&lt;p&gt;Don't think this is actually a video, just the audio. They should make a video though.&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Some cycling myths</title>
   <link href="http://atomicules.co.uk/2011/07/30/some-cycling-myths.html"/>
   <updated>2011-07-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/30/some-cycling-myths</id>
   <content type="html">
		
				 &lt;p&gt;To go hand in hand with my last post celebrating my crazy cycling anniversary I thought I'd put together some of my opinions on cycling myths. There are some things you don't &lt;em&gt;need&lt;/em&gt;, even if they would be great to have&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lycra (or cycling specific clothing) - The whole &lt;a href=&quot;http://atomicules.co.uk/2011/07/25/1-year-1-gear-and-8448-miles.html&quot;&gt;past year&lt;/a&gt; has been done without any lycra whatsoever. I'm quite sure my rear end would welcome some padding, but I've got by ok with tracksuit bottoms in the winter and some 3/4 length cut offs (I got for holiday 6 years ago) in the summer. Same goes for jersey's. Whilst I'm quite sure a £75 jersey would be nice, A normal t-shirt will do the job just fine. You are going to sweat and get soggy - there's no avoiding that whatever  you wear. The only thing you really do need are gloves (and those over a helmet - I do wear a helmet though).&lt;/li&gt;
&lt;li&gt;Foot Retention - You don't need clipless pedals and shoes. The ye-olde traditional toe-strap is fine. And you don't desperately need foot retention of any kind even when cycling fixed gear - whatever people might say (I don't use any &lt;a href=&quot;http://atomicules.co.uk/2010/12/27/winter-cycling.html&quot;&gt;in winter&lt;/a&gt;) - as long as you have brakes that is. But toe-clips are a very cheap nice-to-have off eBay, since everyone goes clipless.&lt;/li&gt;
&lt;li&gt;An expensive bike - Mine was £199 from Halfords. Ok, it's had a new rear wheel, a new set of bearings in that wheel, two bottom brackets and countless spokes.  But most of those bits need replacing anyway on whatever bike you get.I'm sure a £1000 bike would be nice, but you certainly don't need it.&lt;/li&gt;
&lt;li&gt;Gears - Well, that almost goes without saying. Unless where you live is very hilly, turns out you actually don't need gears. Although I really hope at minimum I can afford to do a summer/winter ratio. 42:16 is fine for summer, but I need a little less for those winter tyres.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.sheldonbrown.com/tire-sizing.html#ETRTO&quot;&gt;Wider rims for wider tyres&lt;/a&gt; - Perhaps a more risky experiment, but I ran &lt;a href=&quot;http://atomicules.co.uk/2010/12/27/winter-cycling.html&quot;&gt;35c tyres on 13c rims&lt;/a&gt; for months with just one issue.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>1 year, 1 gear and 8448 Miles</title>
   <link href="http://atomicules.co.uk/2011/07/25/1-year-1-gear-and-8448-miles.html"/>
   <updated>2011-07-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/25/1-year-1-gear-and-8448-miles</id>
   <content type="html">
		
				 &lt;p&gt;&lt;em&gt;(or a more impressive sounding 13596 km, or over a third of the &lt;a href=&quot;http://www.wolframalpha.com/input/?i=distance+around+the+world&quot;&gt;circumference of the globe&lt;/a&gt;,  or almost half of the Guiness Book of World Records' requirement for &lt;a href=&quot;http://en.wikipedia.org/wiki/Around_the_world_cycling_record#History&quot;&gt;cycling around the world&lt;/a&gt;, or another whole additional race on top of the &lt;a href=&quot;http://en.wikipedia.org/wiki/2011_Tour_de_France&quot;&gt;Tour de France&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/2011_Giro_d%27Italia&quot;&gt;Giro d'Italia&lt;/a&gt; and the &lt;a href=&quot;http://en.wikipedia.org/wiki/Vuelta_a_Espa%C3%B1a&quot;&gt;Vuelta a España&lt;/a&gt; combined. Not too shabby for &quot;just&quot; cycling to work)&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;It's a year since I took on this - in hindsight and foresight - crazy commute. I'd always fancy a longer cycle to/from work and the opportunity arose when we had to move house last July. After doing a bit of &lt;a href=&quot;http://www.londoncyclist.co.uk/features/how-many-miles-is-your-bicycle-commute/&quot;&gt;reading into commute distances&lt;/a&gt; I decided I'd do anywhere within a 20 mile cycle: Typically, the place the girls fall in love with is about 19 miles from work (19.2 for the winter route and 19.6 for summer). However, timing wise the move was ok as the cycle2work scheme at work was about to open again and so I was all set to get a proper geared bike, I just had the first couple of weeks to get through on fixed gear; a bike which was ideal for the 3.5 mile each way commute I'd come from and got it for.&lt;/p&gt;

&lt;p&gt;The first day I pretty much felt like crying for my mum. I'd done no training. Just gone from the previous commute (I did cycle all weather, all year round though, so even over this short distance racked up just over 1500 miles the previous year) to a 19.2 mile each way commute. However, I just kept plodding on and the sense of achievement when I finally rolled into the carpark at work was just amazing. And I'd not made bad time either.&lt;/p&gt;

&lt;p&gt;A week into the cycle and I'd very quickly got used to it and was thinking fixed gear over this distance wasn't actually that bad. A few days later however, when the head winds picked up I'd changed my tune and was definitely getting some gears.&lt;/p&gt;

&lt;p&gt;Then the &lt;a href=&quot;http://atomicules.co.uk/2010/09/25/her-majestys-right-cun.html&quot;&gt;cycle2work scheme fell through&lt;/a&gt; and so I guess I was staying on fixed gear.&lt;/p&gt;

&lt;p&gt;And the rest is history. And now that challenge is over, I can sit back and relax safe in the knowledge that I never have to do another full year on fixed gear. Ha! Not really, just get up tomorrow and carry on doing it.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Fear of Big Slides</title>
   <link href="http://atomicules.co.uk/2011/07/17/fear-of-big-slides.html"/>
   <updated>2011-07-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/17/fear-of-big-slides</id>
   <content type="html">
		
				 &lt;p&gt;When I was a kid I remember going to some theme park that had a big &quot;death&quot; slide. Not one of those rope/zipwire slides, rather more the traditional sit-on-your-bum type slide, but starting with a vertical drop. So after climbing up umpteen steps you sat on a ledge at the top and pushed yourself off and basically 'fell' down a vertical wall until it gradually curved outwards and the polished wooden surface caught you and sent you shooting out horizontally along the floor. I've never been a big fan of heights, but having no real expectation of what this slide would be like I'd climbed up and gone down.&lt;/p&gt;

&lt;p&gt;However, returning later in the day, I climbed up the steps, sat on the ledge and bottled it. I just couldn't push myself off and had to take the chicken out route: a much more gradual inclined metal slide to to the side.&lt;/p&gt;

&lt;p&gt;The above is exact same feeling I have with regard to cycling this coming winter.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Creating a (Feeda)Fever Shared Items Page</title>
   <link href="http://atomicules.co.uk/2011/07/17/Creating-A-Fever-Shared-Items-Page.html"/>
   <updated>2011-07-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/17/Creating-A-Fever-Shared-Items-Page</id>
   <content type="html">
		
				 &lt;p&gt;In a vain attempt to slightly de-googlefy my life, and also to regain control over my RSS subscriptions, I switched to &lt;a href=&quot;http://feedafever.com/&quot;&gt;Fever&lt;/a&gt; from &lt;a href=&quot;http://reader.google.com/&quot;&gt;Google Reader&lt;/a&gt; a little while ago.&lt;/p&gt;

&lt;p&gt;If I had an Intel Mac and was just on one platform then I may have just used &lt;a href=&quot;http://reederapp.com/&quot;&gt;Reeder&lt;/a&gt; and therefore stuck with Google Reader, but with the added benefit of never really having to visit Google Reader. I was a big fan of the &lt;a href=&quot;http://helvetireader.com/&quot;&gt;Helvitreader&lt;/a&gt; theme whilst using Google Reader, but that is no longer being maintained; I tried Feedly and it isn't for me. However, it's not just the UI... I like the idea of &lt;a href=&quot;http://feedafever.com/#demo&quot;&gt;Fever's Hot list&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Anyway, I've gone off track already and all of that is besides the point of this post...&lt;/p&gt;

&lt;p&gt;What I liked with Google Reader was that I had a shared items page. Fever offers similar, but it's only available as a RSS feed. So I set about using &lt;a href=&quot;https://github.com/jfhovinne/jFeed&quot;&gt;jFeed&lt;/a&gt; to turn the &lt;a href=&quot;https://github.com/jfhovinne/jFeed/blob/master/example.html&quot;&gt;feed into a html&lt;/a&gt; page. jFeed is really pretty nifty, but a bugger to debug (that could just be my inexperience with jQuery though) as it just seems to fail silently.&lt;/p&gt;

&lt;p&gt;The first problem I had in doing an offline test was that my RSS file started with a blank line rather than the xml declaration. An easy fix, but took me a while to twig why jFeed was just doing nothing. After getting it working offline, the next problem I had was due to bloody &lt;a href=&quot;http://enable-cors.org/&quot;&gt;CORS&lt;/a&gt;. My Fever installation is on a sub-domain (seemed like a sensible idea at the time!) and of course trying to load the feed would result in:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;XMLHttpRequest cannot load &amp;lt;url&amp;gt; Origin &amp;lt;origin&amp;gt; is not allowed by Access-Control-Allow-Origin
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;According to the Enable CORS website that is easily fixed by adding the following into the &lt;a href=&quot;http://enable-cors.org/#how-apache&quot;&gt;.htaccess file for Apache&lt;/a&gt;, but I could not get that to work and even started to wonder whether the &lt;a href=&quot;http://jappler.com/blog/archive/2008/10/22/how-to-test-htaccess-files&quot;&gt;.htaccess file was being ignored&lt;/a&gt;, but it wasn't. What did (almost) work in the end was editing my Fever installation itself, the &lt;code&gt;index.php&lt;/code&gt; page, and &lt;a href=&quot;http://enable-cors.org/#how-php&quot;&gt;setting the headers&lt;/a&gt; from there. I say almost, because I now got a slight different error:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;XMLHttpRequest cannot load &amp;lt;url&amp;gt; Request header field x-requested-with is not allowed by Access-Control-Allow-Headers.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And oddly enough was solved by a &lt;a href=&quot;https://forum.jquery.com/topic/jquery-1-5-latest-chrome-post-ajax-request-xmlhttprequest-cannot-load-url-request-header-field-x-requested-with-is-not-allowed-by-access-control-allow-headers&quot;&gt;post on jQuery&lt;/a&gt; (even though the error is nothing to do with jQuery).So, adding the following into Fever's index.php (so this may get wiped out each time Fever is updated, but this doesn't seem to happen too often) did the trick:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;php&quot;&gt;&lt;span class=&quot;cp&quot;&gt;&amp;lt;?php&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;header&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;Access-Control-Allow-Headers: x-requested-with&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;header&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;Access-Control-Allow-Origin: http://i5m.co.uk&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;I think the last thing I then did was update the version of jQuery over the one that ships with jFeed (1.6.2 vs 1.1.3.1 at the time of writing). If I recall correctly, I'd got rid of all the CORS errors, but the page still wasn't being generated (odd, because an offline copy of the exact same RSS fee worked fine). I didn't really hold out much hope that updating jQuery would fix the issue, but thankfully it did.&lt;/p&gt;

&lt;p&gt;So now I have my &lt;a href=&quot;http://atomicules.co.uk/fever.html&quot;&gt;Fever Shared Item's page&lt;/a&gt; and here's the &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/blob/ef3d7f7337cd4ad580c21ba45632c1d70b999d7c/fever.html&quot;&gt;code&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek 2011 Day 5 Favourite</title>
   <link href="http://atomicules.co.uk/2011/07/15/Roidweek-2011-Day-5-Favourite.html"/>
   <updated>2011-07-15T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/15/Roidweek-2011-Day-5-Favourite</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/ptobin/5940405562/&quot;&gt;
				
					&lt;img src=&quot;http://farm7.static.flickr.com/6140/5940405562_8aa0bfe27e.jpg&quot; alt=&quot;Roidweek 2011 Day 5 Favourite&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/ptobin/5940405562/&quot;&gt;shuttlecocks&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/ptobin/&quot;&gt;ten minutes&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Roidweek is always over too quick, even when you aren't taking part it seems. I so very hope circumstances change just a little bit so I can get back into it next year.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of &lt;a href=&quot;http://creativecommons.org/licenses/by-nd/2.0/&quot;&gt;BY-ND 2.0&lt;/a&gt; Creative Commons license.&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek 2011 Day 4 Favourite</title>
   <link href="http://atomicules.co.uk/2011/07/14/Roidweek-2011-Day-4-Favourite.html"/>
   <updated>2011-07-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/14/Roidweek-2011-Day-4-Favourite</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/thisisawakeupcall/5936255723/&quot;&gt;
				
					&lt;img src=&quot;http://farm7.static.flickr.com/6137/5936255723_efe7240b04.jpg&quot; alt=&quot;Roidweek 2011 Day 4 Favourite&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/thisisawakeupcall/5936255723/&quot;&gt;Cool Down&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/thisisawakeupcall/&quot;&gt;This Is A Wake Up Call&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of &lt;a href=&quot;http://creativecommons.org/licenses/by-nc/2.0/&quot;&gt;BY-NC 2.0&lt;/a&gt; Creative Commons license.&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek 2011 Day 3 Favourite</title>
   <link href="http://atomicules.co.uk/2011/07/13/Roidweek-2011-Day-3-Favourite.html"/>
   <updated>2011-07-13T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/13/Roidweek-2011-Day-3-Favourite</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/kmtucker/5933275613/&quot;&gt;
				
					&lt;img src=&quot;http://farm7.static.flickr.com/6145/5933275613_b197904528.jpg&quot; alt=&quot;Roidweek 2011 Day 3 Favourite&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/kmtucker/5933275613/&quot;&gt;Classic&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/kmtucker/&quot;&gt;Artful Magpie&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/&quot;&gt;BY-NC-ND 2.0&lt;/a&gt; Creative Commons license.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;With &lt;a href=&quot;http://www.flickr.com/photos/kmtucker/5933283305/&quot;&gt;Sit a Spell&lt;/a&gt; and &lt;a href=&quot;http://www.flickr.com/photos/pdexposures/5932618134/&quot;&gt;193/365&lt;/a&gt; close second favs.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek 2011 Day 2 Favourite</title>
   <link href="http://atomicules.co.uk/2011/07/12/Roidweek-2011-Day-2-Favourite.html"/>
   <updated>2011-07-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/12/Roidweek-2011-Day-2-Favourite</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/polapix/5928968507/&quot;&gt;
				
					&lt;img src=&quot;http://farm7.static.flickr.com/6133/5928968507_a58f9c7a5d.jpg&quot; alt=&quot;Roidweek 2011 Day 2 Favourite&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/polapix/5928968507/&quot;&gt;Buildings&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/polapix/&quot;&gt;polapix&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of &lt;a href=&quot;http://creativecommons.org/licenses/by/2.0/&quot;&gt;BY 2.0&lt;/a&gt; Creative Commons license.&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Own Your Identity</title>
   <link href="http://atomicules.co.uk/2011/07/12/Own-Your-Own-Identity.html"/>
   <updated>2011-07-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/12/Own-Your-Own-Identity</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.marco.org/2011/07/11/own-your-identity&quot;&gt;&#187; Own Your Identity&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I &lt;em&gt;almost&lt;/em&gt; agree; the principle is right. I used to have my email address on my own domain, but was forced* to relinquish my domain and so switched to a gmail address as my primary address quite a few years ago now. So for me gmail outlasted my own domain, even though my domain was under my control. And I suspect for the majority of people this would be the case too. Make your primary email address a Hotmail, Gmail or Yahoo one and it is very unlikely to go away and is probably more effectively permanent than your own domain (I still have a pre-Yahoo Rocketmail.com email address that still works, even though I might only log into it every other year).&lt;/p&gt;

&lt;p&gt;* I remember thinking it's only ~$20 every two years to renew, how can you not afford that? Well... let's just say there is no way you can predict the ups and downs of the future.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek 2011 Day 1 Favourite</title>
   <link href="http://atomicules.co.uk/2011/07/11/Roidweek-2011-Day-1-Favourite.html"/>
   <updated>2011-07-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/11/Roidweek-2011-Day-1-Favourite</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/kevindean/5927081606/&quot;&gt;
				
					&lt;img src=&quot;http://farm7.static.flickr.com/6029/5927081606_9c6d34cdd0.jpg&quot; alt=&quot;Roidweek 2011 Day 1 Favourite&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/kevindean/5927081606/&quot;&gt;Train Tracks - 20110709 - PZ680 - 06_2011 - Scan - img095_72dpi&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/kevindean/&quot;&gt;Kevin Dean&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2011/&quot;&gt;Roidweek 2011&lt;/a&gt; is off to a start! And due, once again, to reasons that don't make any sense whatsoever I cannot take part, but I am still keeping an eye on the group pool and thought it would be cool to blog some of the photos. But it is tricky to find many that are Creative Common licensed. So from day one, I'd say this is my fav (CC licensed), with &lt;a href=&quot;http://www.flickr.com/photos/angies/5926618513/&quot;&gt;this&lt;/a&gt; a close second.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/&quot;&gt;BY-NC-SA 2.0&lt;/a&gt; Creative Commons license.&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>1hr 2mins was the official time on the clock, but...</title>
   <link href="http://atomicules.co.uk/2011/07/05/1hr-2mins-was-the-official-time-on-the-clock-but.html"/>
   <updated>2011-07-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/07/05/1hr-2mins-was-the-official-time-on-the-clock-but</id>
   <content type="html">
		
				 &lt;ul&gt;
&lt;li&gt;Have to then put phone in bag and then put bag, helmet and gloves on. Then get bike down from rack and out of the bike shed.&lt;/li&gt;
&lt;li&gt;Then I've got one roundabout to wait at coming out of work.&lt;/li&gt;
&lt;li&gt;Two crossroads I have to stop at (unless I want to die) and one of them I had to wait for a tractor.&lt;/li&gt;
&lt;li&gt;And I got stuck behind a mountain bike for a bit.&lt;/li&gt;
&lt;li&gt;And at the end, take bag off and get phone out.&lt;/li&gt;
&lt;li&gt;Oh, and fixed 42:16 gear, of course.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;It was wind assisted, but I pedalled my legs off. I must surely have actually done the 19.6 mile journey in an hour? I don't think I'll beat this time for a long time.&lt;/p&gt;

&lt;p&gt;Even taking it as 62 mins, that's an average speed of 18.97 mph. Perhaps next summer I can get a cheap cycle computer and find out what my max speed is on journeys like this.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Smile.co.uk Bank QIF Generator Bookmarklet</title>
   <link href="http://atomicules.co.uk/2011/06/30/Smile-Bank-QIF-Generator-Bookmarklet.html"/>
   <updated>2011-06-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/30/Smile-Bank-QIF-Generator-Bookmarklet</id>
   <content type="html">
		
				 &lt;p&gt;Errr... didn't mean to end up doing this &lt;s&gt;today&lt;/s&gt; yesterday.&lt;/p&gt;

&lt;p&gt;I bank with &lt;a href=&quot;http://www.smile.co.uk&quot;&gt;Smile&lt;/a&gt;, probably the most luddite &quot;internet&quot; bank account in the history of the universe, and to date have relied on (as have probably most Smile account holders) the very useful &lt;a href=&quot;http://www.web-development.co.uk/smile/&quot;&gt;QIF generator&lt;/a&gt; by &lt;a href=&quot;http://benward.me/blog/online-banking-wishlist#comment-907&quot;&gt;Dave Small&lt;/a&gt; (that blog comment is the only &quot;official&quot; post that I can find about the tool, I think most have come across it via &lt;a href=&quot;https://www.wesabe.com/groups/39-uk-wesabe-users/discussions/384-any-other-uk-users#comment_4752&quot;&gt;word-of-mouth&lt;/a&gt;) to export my statements to &lt;a href=&quot;https://my.pocketsmith.com/login&quot;&gt;PocketSmith&lt;/a&gt;. So all is usually well, and since laziness rules I've never bothered to write my own convertor. On occasion the tool has gone offline and I've gone looking at &lt;a href=&quot;http://userscripts.org/scripts/search?q=smile.co.uk&amp;amp;submit=&quot;&gt;alternatives&lt;/a&gt;, but they've never really worked for me, and by the time I've finished looking and checked back again the 4square tool is usually back online.&lt;/p&gt;

&lt;p&gt;However, on a couple of occassions recently the 4square website has been down (again not for long), but it's been at a critical time for me (I need to know how skint I am NOW!). So I decided to finally stop being lazy and write my own back-up QIF-generator tool.&lt;/p&gt;

&lt;p&gt;I thought about doing a user-script style extension or a browser add-on, but then thought a bookmarklet would be more cross platform (and simpler!).&lt;/p&gt;

&lt;p&gt;So this is the source-code (In CoffeeScript):&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;coffeescript&quot;&gt;&lt;span class=&quot;c1&quot;&gt;#Bookmarklet to generate QIF for Recent Item and Previous Statement pages on SMILE.co.uk bank&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#Will (try to) open a new popup window where you will have to either:&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#a) Copy text from and paste to text editor (Chrome)&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#b) Save the page as a text file (Firefox)&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#Written in Coffescript, but just use http://javascriptcompressor.com/ to compress the &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#compiled javascript so you have a bookmarklet.&lt;/span&gt;

&lt;span class=&quot;nv&quot;&gt;data = &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getElementsByClassName&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;summarytable&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;

&lt;span class=&quot;nv&quot;&gt;qif = &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;!Type:Bank&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;transaction = &lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;(row) -&amp;gt;&lt;/span&gt; 
    &lt;span class=&quot;nx&quot;&gt;unless&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;is&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;amp;nbsp;&amp;quot;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#skip last row on Recent Items page&lt;/span&gt;
        &lt;span class=&quot;nx&quot;&gt;unless&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;is&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;BROUGHT FORWARD&amp;quot;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#skip first row on Previous Statements page&lt;/span&gt;
            &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;D&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;P&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#Then need transaction amount&lt;/span&gt;
            &lt;span class=&quot;nx&quot;&gt;unless&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;is&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;:&amp;amp;nbsp;&amp;quot;&lt;/span&gt;
                &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;T&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;().&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;substring&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
                &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;T-&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;().&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;substring&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;^&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;

&lt;span class=&quot;nx&quot;&gt;transaction&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;in&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt;

&lt;span class=&quot;nb&quot;&gt;window&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;data:text/html;charset=utf-8,&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;kc&quot;&gt;undefined&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#To get the void 0 bit so doesn&amp;#39;t affect current window.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/1053858&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and this is the bookmarklet:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;nx&quot;&gt;javascript&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;transaction&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_len&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getElementsByClassName&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;summarytable&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;!Type:Bank&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;transaction&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;){&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;!==&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;amp;nbsp;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;){&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;!==&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;BROUGHT FORWARD&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;){&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;D&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;P&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;!==&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;amp;nbsp;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;){&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;T&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;().&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;substring&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;T-&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;children&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;innerHTML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;trim&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;().&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;substring&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;^&amp;lt;br /&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}}};&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_len&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_len&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;){&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;_i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;];&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;transaction&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;row&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)}&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;window&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;data:text/html;charset=utf-8,&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;qif&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;void&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;(I'll be buggered if I can get an actual bookmarklet link to display correctly via Markdown. I got almost there, but couldn't stop RDiscount from turning the caret ^ into a &lt;code&gt;&amp;lt;sup&amp;gt;&lt;/code&gt; element, so you'll just have to copy the above text and manually add a new bookmark). The same bookmarklet works on both Recent Items and Previous Statement pages. A limitation of doing a bookmarklet is that I can't generate a QIF file for download. All I can do is open up a web page that you can then save as a text file (add the &quot;.qif&quot; extension yourself) or copy and paste the text into a text editor and save as a QIF file - this is the same limitation that affects the &lt;a href=&quot;http://userscripts.org/scripts/show/6976&quot;&gt;OFX/CSV userscript&lt;/a&gt; (that only works on Previous Statement pages).&lt;/p&gt;

&lt;p&gt;Came across an interesting issue whilst doing this in that it seems you &lt;a href=&quot;http://stackoverflow.com/questions/4203110/creating-an-export-function-with-javascript&quot;&gt;can't pass line breaks to a plain text file&lt;/a&gt; using the Data URI scheme. The only way to get a line break to show up is using text/html:&lt;/p&gt;

&lt;p&gt;Doesn't work: &lt;code&gt;window.open(&quot;data:text/plain;charset=utf-8, No \n line \n breaks&quot;);&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Works: &lt;code&gt;window.open(&quot;data:text/html;charset=utf-8, Yes &amp;lt;br /&amp;gt;line &amp;lt;br /&amp;gt; breaks&quot;);&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[EDIT 04-Aug-2011: Updated link to new home of Dave Small's Smile QIF Generator web page]&lt;/em&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>No Balls</title>
   <link href="http://atomicules.co.uk/2011/06/27/No-Balls.html"/>
   <updated>2011-06-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/27/No-Balls</id>
   <content type="html">
		
				 &lt;p&gt;It's fair to say I've been more frustrated than a teenage boy (no understatement) with the looooooong halt on my photography. Which is why I made a decision to try to &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/5505513095/in/photostream&quot;&gt;get back into drawing&lt;/a&gt;, so I was at least doing something creative (I want - and feel it is important - to have both creative and technical interests, even if I don't achieve it).&lt;/p&gt;

&lt;p&gt;I had hoped by making a (somewhat) public statement of my intentions it would coerce me to follow through. But it seems &lt;a href=&quot;http://www.43folders.com/2008/12/01/courageous-sucking&quot;&gt;I have no balls&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It's weird because I have no problems being crap at programming. It doesn't bother me that I'm late to the game, unlikely to ever catch peers up or am totally outclassed by those younger than me. I'm think I'm happy with my abilities because I can satisfy myself: I can have a problem, no idea how to programme it, but be confident that I'll be able to figure it out eventually. Even if I don't do the best way.&lt;/p&gt;

&lt;p&gt;With drawing it's different, but I'm not exactly sure why though. Probably a combination of having regressed so much from what I was capable of years ago (I was never ace at it as a kid, but as per what I've said for programming, I was able to satisfy myself) and so I find my current abilities hugely frustrating; And having two daugthers who can out draw me (and one's not even at primary school yet) which makes me feel embarrassed when I attempt anything.&lt;/p&gt;

&lt;p&gt;So, until I grow a pair, back to the waiting game it is for me.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Back Issues update (Issue</title>
   <link href="http://atomicules.co.uk/2011/06/21/back-issues-update-issue-3-boneshaker-magazine.html"/>
   <updated>2011-06-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/21/back-issues-update-issue-3-boneshaker-magazine</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.boneshakermag.com/back-issues-update-issue-3/&quot;&gt;&#187; Back Issues update (Issue&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;oooh, back issues available online. I didn't realise. This is great for those too skint to get the real thing.&lt;/p&gt;

&lt;p&gt;EDIT: &quot;The latest issue of Boneshaker Magazine is available to buy from http://www.boneshakermag.com&quot;&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>They Must Knock At Random Doors And Yell At</title>
   <link href="http://atomicules.co.uk/2011/06/07/they-must-knock-at-random-doors-and-yell-at.html"/>
   <updated>2011-06-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/07/they-must-knock-at-random-doors-and-yell-at</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;They must knock at random doors and yell at whoever answers “If these houses hadn’t been built I could have DRIVEN through here, now GET OUT THE WAY.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;Mark Steel&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Cycling Releases A Chemical In The Brain That</title>
   <link href="http://atomicules.co.uk/2011/06/07/cycling-releases-a-chemical-in-the-brain-that.html"/>
   <updated>2011-06-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/07/cycling-releases-a-chemical-in-the-brain-that</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;cycling releases a chemical in the brain that makes you feel utterly smug and superior for the rest of the day.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;Mark Steel&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Recently Listened</title>
   <link href="http://atomicules.co.uk/2011/06/03/Recently-Listened.html"/>
   <updated>2011-06-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/06/03/Recently-Listened</id>
   <content type="html">
		
				 &lt;p&gt;And a whole heap of other stuff I've been listening to recently:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://hotsaucecommittee.com/&quot;&gt;Beastie Boys - Hot Sauce Committee, Part II&lt;/a&gt;. Well, it's not as bad as Tyler the Creator and Goblin, but it's nothing special either.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.thevaccines.co.uk/&quot;&gt;The Vaccines - What Did You Expect From the Vaccines?&lt;/a&gt;. Not coming from any of my usual recommendation sources (TLOBF, Guardian New Band of the Day, nor Huw Stephen's Introducing), but rather from the missus. Post Break-Up Sex is the only highlight (from the album that is, not the relationship with the missus).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.noahandthewhale.com/album.html&quot;&gt;Noah and the Whale - Last Night on Earth&lt;/a&gt;. L.I.F.E.G.O.E.S.O.N is obviously catchy and very good. I can never figure out what songs like this are spelling out though. My brain is just not capable of holding the letters in my head long enough and gets all confused. So it wasn't until I saw it written down that I knew what they were going on about. Still, I liked it though.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.sebadoh.com/&quot;&gt;Sebadoh - Bakesale&lt;/a&gt;. Doing a spot of visiting the skipped past - some how Sebadoh passed me by as a teenager even though I listened to Dinosaur Jr, Pavement, etc. It's ok, but nothing special, so perhaps I didn't miss out after all.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://the-weeknd.com/&quot;&gt;The Weeknd - House of Balloons&lt;/a&gt;. I don't like R&amp;amp;B do I? There is certainly something about The Morning though (and it was free to download so there was no harm in finding out).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pugrecords.com/discography/&quot;&gt;Top Surprise&lt;/a&gt; - Recommended by a &lt;a href=&quot;http://www.last.fm/user/jongou&quot;&gt;random stranger&lt;/a&gt; on Last.fm. Actually pretty ok. Saturn (The Season) is my favourite, Home is also very good. Lots of reverb and fuzz. Nice. It's free so there's really no reason not to listen.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Using Github Issues as a Commenting System for Jeykll Blogs</title>
   <link href="http://atomicules.co.uk/2011/05/27/Using-Github-Issues-As-Commenting-System-For-Jekyll.html"/>
   <updated>2011-05-27T10:04:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/27/Using-Github-Issues-As-Commenting-System-For-Jekyll</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://ivanzuzak.info/2011/02/18/github-hosted-comments-for-github-hosted-blogs.html&quot;&gt;&#187; Using Github Issues as a Commenting System for Jeykll Blogs&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Very clever! Think I'll stick to Disqus for the time being though (Although Disqus is blocked at work and Github isn't... Hmmm...)&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Flickr Finally Provide Account Restoration</title>
   <link href="http://atomicules.co.uk/2011/05/27/Flickr-90-Day-Safety-For-Account-Deletions.html"/>
   <updated>2011-05-27T09:55:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/27/Flickr-90-Day-Safety-For-Account-Deletions</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.flickr.net/en/2011/05/26/your-photos-and-data-on-flickr/&quot;&gt;&#187; Flickr Finally Provide Account Restoration&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;It's been a problem for a looooooong time, the only thing that I really didn't like about Flickr, and it made me uncomfortable if I ever thought about it for too long: Up until very recently if your Flickr account was deleted that was it, it was gone for good. Whether it was an accidental deletion on your or Flickr's part, malicious due to hacking, etc, or whether you'd violated Flickr guidelines - it didn't matter how or why it was deleted, it was just gone.&lt;/p&gt;

&lt;p&gt;Now I'm not worried about losing the photos themselves (I have them offline), but comments, tags, titles, descriptions, and other metadata represent a significant amount of time and effort and this is before you even get to where else you might have references to the photo urls (blog posts, etc that will have to be fixed). And although I try to get most of my metadata in order offline, before I upload, the convenience of being able to add/edit titles, descriptions, tags and location data from any computer is too great not to use (Ideally a tool that not only uploads, but syncs with Flickr would be best, but it &lt;a href=&quot;http://www.flickr.com/groups/aperture_users/discuss/72157626787259112/&quot;&gt;doesn't seem to work&lt;/a&gt; in practice). That reminds me, I really should finish my post about the Cloud, but the basic premise is that convenience always wins, but it shouldn't have to come at the complete cost of data integrity.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Unofficial TeuxDeux API</title>
   <link href="http://atomicules.co.uk/2011/05/27/Unofficial-TeuxDeux-API.html"/>
   <updated>2011-05-27T09:24:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/27/Unofficial-TeuxDeux-API</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;https://github.com/badboy/teuxdeux&quot;&gt;&#187; Unofficial TeuxDeux API&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;And it's in Ruby, of course. Very clever, top marks for the reverse engineering. I'm sure I can think of &lt;a href=&quot;http://green.shoesrb.com&quot;&gt;good use&lt;/a&gt; for it.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Odd Future. My! Certainly, it is.</title>
   <link href="http://atomicules.co.uk/2011/05/27/Odd-Future-My-Certainly-It-Is.html"/>
   <updated>2011-05-27T09:15:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/27/Odd-Future-My-Certainly-It-Is</id>
   <content type="html">
		
				 &lt;p&gt;I've had a glimpse of something I now wish I didn't know existed. I'm unsettled at best. On paper it &lt;a href=&quot;http://www.thelineofbestfit.com/2011/05/tyler-the-creator-goblin/&quot;&gt;read as interesting&lt;/a&gt;. And I'd certainly seen the name &lt;a href=&quot;http://www.guardian.co.uk/search?q=Odd+Future&amp;amp;section=music&quot;&gt;pop-up in other places&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Perhaps it's just my age, but I do not get it at all. I'll stick to &lt;a href=&quot;http://misterehiphop.bandcamp.com/&quot;&gt;MisterE&lt;/a&gt; thanks.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Don't Wait For Me</title>
   <link href="http://atomicules.co.uk/2011/05/26/Dont-Wait-For-Me.html"/>
   <updated>2011-05-26T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/26/Dont-Wait-For-Me</id>
   <content type="html">
		
				 &lt;p&gt;It seems like I've been waiting ages (hang on, it is ages! About three years for both!) for the new albums to come out from The Pigeon Detectives and The Wombats and so I was very eager to listen to them both (but not so eager to write about them it seems...). But on first listen I was shocked to find them both disappointing.&lt;/p&gt;

&lt;p&gt;After a few listens I do now really like This Modern Glitch. It is full of good tracks: Our Perfect Disease, Tokyo, Jump into the Fog, Techno Fan, Walking Disasters, Girls/Fast Cars (which probably isn't that good, but is so catchy it is). I think the problem was being overly spoilt by the first album which is just so good it was impossible to better. But I'm happy now.&lt;/p&gt;

&lt;p&gt;However, I really don't understand why it took The Pigeon Detectives so long to come out with Up, Guards and At 'Em. I do keep relistening, hoping it's going to get better, and it has slightly, but it's not great. Lost is ok, Through The Door is probably the best the album has to offer. Difficult third album is a common thing isn't it? I'm still pining for something as good as Take Her Back from Wait For Me.&lt;/p&gt;

&lt;p&gt;The NME get this &lt;a href=&quot;http://www.nme.com/reviews/the-wombats/12002&quot;&gt;completely&lt;/a&gt; &lt;a href=&quot;http://www.nme.com/reviews/the-pigeon-detectives/11959&quot;&gt;wrong&lt;/a&gt;, but then they are probably too concerned about what's cool, rather than what's actually any good.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>By Adams Carvalho Http Adamscarvalho Com</title>
   <link href="http://atomicules.co.uk/2011/05/17/by-adams-carvalho-http-adamscarvalho-com.html"/>
   <updated>2011-05-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/17/by-adams-carvalho-http-adamscarvalho-com</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/wnj9f2-_TKo?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;- By &lt;a href=&quot;http://adamscarvalho.com/&quot;&gt;Adams Carvalho&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Multiple Tab Handler for Firefox</title>
   <link href="http://atomicules.co.uk/2011/05/17/Multiple-Tab-Handler.html"/>
   <updated>2011-05-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/17/Multiple-Tab-Handler</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/multiple-tab-handler/&quot;&gt;&#187; Multiple Tab Handler for Firefox&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This is great and works well with my use of Pinboard to open a load of tabs. You can just drag and select across a load of tabs and pin them all at once. Even easier than in Chrome (current Beta channel, version 12) where you select multiple tabs by CTRL + clicking.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Some More Thoughts on Firefox 4 and TenFourFox</title>
   <link href="http://atomicules.co.uk/2011/05/16/Some-More-Thoughts-on-Firefox4.html"/>
   <updated>2011-05-16T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/16/Some-More-Thoughts-on-Firefox4</id>
   <content type="html">
		
				 &lt;p&gt;As a result of my &lt;a href=&quot;http://atomicules.co.uk/2011/05/07/Pinboard-Save-Tabs-and-Camino.html&quot;&gt;FormData frustrations&lt;/a&gt; I thought I'd give TenFourFox a proper whirl and at the same time try FireFox 4 as my default on Windows (instead of Chrome) so I could also try out the synchronisation service.&lt;/p&gt;

&lt;h2&gt;Firefox 4 (in general)&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Out of the box i don't think it looks as good as Chrome or Camino, etc, but thanks to the high level of customisation you can - &lt;a href=&quot;https://gist.github.com/972769&quot;&gt;after quite a bit of fiddling&lt;/a&gt; - get an ok result (one that uses less vertical space than Chrome, which is pretty good).
  &lt;img src=&quot;/images/ff4win.png&quot; title=&quot;Firefox 4 on Windows XP&quot; alt=&quot;&amp;quot;&amp;quot;&quot; /&gt;
  &lt;img src=&quot;/images/tffosx.png&quot; title=&quot;TenFourFox on OSX 10.5&quot; alt=&quot;&amp;quot;&amp;quot;&quot; /&gt;&lt;/li&gt;
&lt;li&gt;However, it requires slightly different UI tweaks for each platform&lt;/li&gt;
&lt;li&gt;Tabs on top on OSX actually uses ever so slightly more vertical space!&lt;/li&gt;
&lt;li&gt;The biggest problem on Windows (for me) is the modal dialogue for proxy authentication, but only because I use Lastpass and so I can't then get to the Lastpass button to get the password - (I have to launch a new browser window). In Chrome I don't have this problem as the authentication dialog isn't modal; although I used to have a whole bigger problem where opening new tabs would randomly lock up Chrome altogether until I figured out it was because I had &quot;DNS Prefetching&quot; (or &quot;Predict network actions to improve page load performance&quot; as it now seems to be called) checked, which must cause some hidden, impossible to get to, authentication dialog to appear in the background - we have very aggressive and annoying proxy authentication at work. It sucks.&lt;/li&gt;
&lt;li&gt;Other annoyance (minor) on Windows is that I'd set Chrome as PDF viewer instead of Acrobat and actually prefer this over launching Acrobat reader; I always have a browser window open so this is much quicker for me. I wish Firefox had the same.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;TenFourFox&lt;/h2&gt;

&lt;p&gt;Just out of interest I thought I'd see how TenFourFox performed at the Sunspider benchmark, since the developer is very clever and &lt;a href=&quot;http://tenfourfox.blogspot.com/2011/04/attention-g5-owners-your-javascript-no.html&quot;&gt;finished implementing nanojit for PPC&lt;/a&gt;.&lt;/p&gt;

&lt;table style=&quot;border: 1px solid grey; border-collapse: collapse;&quot;&gt;
&lt;thead&gt;
    &lt;tr&gt;&lt;th&gt;Browser&lt;/th&gt;&lt;th&gt;Sunspider&lt;/th&gt;&lt;/tr&gt;
&lt;tbody style=&quot;border: 1px solid grey; border-collapse: collapse;&quot;&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Camino&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;13558.8ms +/- 5.5%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;TenFourFox&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;5667.5ms +/- 1.7%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Safari 5&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;10051.2ms +/- 11.5%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Webkit nightly&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;9637.7ms +/- 6.9%&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;


&lt;br/&gt;


&lt;p&gt;Wow, so it really is the best for PPC Macs at the moment for JavaScript performance. What's more interesting is comparing my 1GHz G4 PowerBook  to my work's 2.4 GHz Core 2 Duo laptop.&lt;/p&gt;

&lt;table style=&quot;border: 1px solid grey; border-collapse: collapse;&quot;&gt;
&lt;thead&gt;
    &lt;tr&gt;&lt;th&gt;Browser&lt;/th&gt;&lt;th&gt;Sunspider&lt;/th&gt;&lt;/tr&gt;
&lt;tbody style=&quot;border: 1px solid grey; border-collapse: collapse;&quot;&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Firefox 3.6 (equivalent to Camino)&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;926.8ms +/- 2.6%&lt;/td&gt;&lt;/tr&gt;     
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Firefox 4 (equivalent to TenFourFox)&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;375.9ms +/- 1.0%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Safari 5&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;364.2ms +/- 2.8%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Webkit nightly&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;377.1ms +/- 1.4%&lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;td style=&quot;border-right: 1px solid grey; border-collapse: collapse;&quot;&gt;Internet Explorer 8&lt;/td&gt;&lt;td style=&quot;text-align: right&quot;&gt;5245.8ms +/- 2.2%&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;


&lt;br/&gt;


&lt;p&gt;Ok, so as expected, when comparing similar web browsers, my Powerbook gets eclipsed by a more modern processor, but I think it's pretty impressive that TenFourFox on my PowerBook almost equals IE8 (the default and official web browser of the company I work for; it was until very recently IE6!) on a Core 2 Duo.&lt;/p&gt;

&lt;h2&gt;Firefox Home (The iOS app)&lt;/h2&gt;

&lt;p&gt;My main gripe here is I don't really understand the point in syncing tabs if it isn't going to sync cookies - since password management is fiddly on a mobile app (on a desktop browser, cookie sync is not so important as I use Lastpass to log in; which works more fluidly on the desktop than it does on iOS). It's actually an ok little app and you can use it as a general web browser although it would be better if it had actual tabs (since it does sync them).&lt;/p&gt;

&lt;h2&gt;Firefox Sync&lt;/h2&gt;

&lt;p&gt;It turns out I really don't want or need my 'work' browser synchronised with my 'home' browser. I don't need the same bookmarks on bookmarks bar - although I was impressed it got the order of them correct and also separators, etc. I guess sync is more for people with multiple home computers, etc, where I imagine it would be quite handy. History syncing is probably the most useful thing, for those oh-so-too-frequent-times when I've neglected to bookmark something useful I found earlier in the day and now for some reason can't find the page again via Google (or actually, DuckDuckGo).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Top tips for replacing bearings</title>
   <link href="http://atomicules.co.uk/2011/05/14/top-tips-for-replacing-bearings.html"/>
   <updated>2011-05-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/14/top-tips-for-replacing-bearings</id>
   <content type="html">
		
				 &lt;ol&gt;
&lt;li&gt;Don't leave it until they are completely destroyed.&lt;/li&gt;
&lt;li&gt;For bottom brackets, you really need to &lt;a href=&quot;http://pinboard.in/u:atomicules/b:8b941d39055f&quot;&gt;bolt the tool onto the axle&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;For stuck outer races of cartridge bearings in wheel hubs, &lt;a href=&quot;http://pinboard.in/u:atomicules/b:616338a007e0&quot;&gt;use the axle and one of the lock nuts&lt;/a&gt; instead of a screwdriver.&lt;/li&gt;
&lt;/ol&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Pinboard Save Tabs and Camino (almost!)</title>
   <link href="http://atomicules.co.uk/2011/05/07/Pinboard-Save-Tabs-and-Camino.html"/>
   <updated>2011-05-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/07/Pinboard-Save-Tabs-and-Camino</id>
   <content type="html">
		
				 &lt;p&gt;I really like &lt;a href=&quot;http://www.pinboard.in/&quot;&gt;Pinboard&lt;/a&gt; and I'm probably &lt;a href=&quot;http://blog.pinboard.in/2011/03/anatomy_of_a_crushing/&quot;&gt;as thankful as Maciej&lt;/a&gt; for Yahoo dropping the ball with Delicious as otherwise it would have just remained &quot;one of those things on my radar&quot;. I don't know what the pace of development was like before I joined (obviously), but I love the features that have been added since, such as Twitter archiving and the fabulous &lt;a href=&quot;http://blog.pinboard.in/2011/04/new_save_tabs_feature/&quot;&gt;Save Tab&lt;/a&gt; sets feature.&lt;/p&gt;

&lt;p&gt;This is something I've wanted for awhile due to two main reasons: &lt;strong&gt;1)&lt;/strong&gt; I'm cross platform and cross browser (I typically use Chrome on Windows at work and Camino on OSX at home, so this kind of functionality is better than browser sync for me) and &lt;strong&gt;2)&lt;/strong&gt; at work we have horrendous proxy authentication which means I can't effectively use pinned tabs; In fact, before I twigged, Chrome would randomly lock up for me when opening a new tab because DNS pre-fetching was causing a unreachable authentication dialogue to occur in the background (or something like that) so pinned tabs would lock up the browser on start-up. Unchecking the DNS-prefetching stops the lock-up, but still means a few tabs waiting for authentication details and by the time I've got Lastpass sorted and got the password I need the pages have failed with authentication errors and have some weird proxy url - So, quite frankly it's better to launch with a page within the intranet, manually make one request to a page on the internet (Pinboard saved tabs page!) and once authenticated, open all the required tabs.&lt;/p&gt;

&lt;p&gt;So I thought I'd have a crack at implementing it for Camino (as I knew I'd be able to use Applescript to get a list of tabs). The first stumbling block is that the Pinboard extension(s) use &lt;a href=&quot;http://dev.w3.org/2006/webapi/XMLHttpRequest-2/Overview.html#the-formdata-interface/&quot;&gt;FormData&lt;/a&gt; that is only &lt;a href=&quot;http://hacks.mozilla.org/2010/05/formdata-interface-coming-to-firefox/&quot;&gt;available in Gecko 2&lt;/a&gt;, not Gecko 1.9 that Camino uses. However, some &lt;a href=&quot;http://identi.ca/francois2&quot;&gt;clever person&lt;/a&gt; has made a &lt;a href=&quot;https://github.com/francois2metz/html5-formdata&quot;&gt;fake FormData&lt;/a&gt; script that works a treat. So I really thought I was game on. I then spent about a week being frustrated not being able to get this to work. It was odd, as if I tried from Safari or Chrome (forcing the use of fake Formdata) it worked as expected. I then tried Firefox 4 (again forcing the use of Fake form data) and it wouldn't work. Ah ha! A quick email to Pinboard and Maciej mentioned cookies and I had a closer look at Firebug and realised that when Gecko was making the post that a cookie was not being sent. Turns out Webkit does by default what you have to do explicitly with Gecko (&lt;a href=&quot;https://developer.mozilla.org/en/XMLHttpRequest#status&quot;&gt;XMLHttpRequest withCredentials&lt;/a&gt;) - I was then able to get it to work in Firefox 4. So back to Camino full of hope but it still wouldn't work! After more frustration and trying Firefox 3.6 on windows and also failing I finally learnt that Gecko 1.9 is a piece of shit because it &lt;a href=&quot;https://developer.mozilla.org/en/http_access_control#Preflighted_requests&quot;&gt;preflights all request except text/plain&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;So even though the fake FormData is remarkabley clever, it is effectively pointless.&lt;/p&gt;

&lt;p&gt;And this really might have tipped me over the edge to using TenFourFox instead of Camino.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;applescript&quot;&gt;&lt;span class=&quot;c&quot;&gt;--Camino Pinboard save tabs&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;-- An Applescript to Save Open Tabs to Pinboard, using the Save Tabs functionality:&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- http://blog.pinboard.in/2011/04/new_save_tabs_feature/&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- Uses francois2metz fake html5-FormData since Gecko 1.9 doesn&amp;#39;t have this&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- https://github.com/francois2metz/html5-formdata&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- BUT DOESN&amp;#39;T BLOODY WELL WORK BECAUSE OF A RESTRICTION IN GECKO 1.9&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- Gecko 1.9 preflights all requests except from text/plain which screws the whole thing up&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- (https://developer.mozilla.org/en/http_access_control#Preflighted_requests)&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;-- Oh well, it was a nice idea. &lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;resultz&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;source&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;--Get list of tabs and windows, &lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;repeat&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;with&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;repeat&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;with&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;j&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabs&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;{ \&amp;quot;title\&amp;quot;: \&amp;quot;&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;tab&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;j&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;\&amp;quot;, \&amp;quot;url\&amp;quot;: \&amp;quot;&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;URL&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;tab&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;j&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;\&amp;quot;}&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;j&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabs&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabs&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;then&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;,&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;repeat&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;[&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;]&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;count&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;browser&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;then&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;,&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;tabz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;repeat&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;resultz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;resultz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;{\&amp;quot;browser\&amp;quot;:\&amp;quot;camino\&amp;quot;,\&amp;quot;windows\&amp;quot;:[&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;winz&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;]}&amp;quot;&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;source&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;&amp;lt;script type=\&amp;quot;text/javascript\&amp;quot; src=\&amp;quot;https://github.com/francois2metz/html5-formdata/raw/master/formdata.js\&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;var params = new FormData();&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;var req = new XMLHttpRequest();&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;params.append(\&amp;quot;data\&amp;quot;, &amp;#39;&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;resultz&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;as &lt;/span&gt;&lt;span class=&quot;nc&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;#39;); // I have an inkling, that should a tab title contain an apostrophe, it may muck this up.&lt;/span&gt;

&lt;span class=&quot;s2&quot;&gt;req.open(\&amp;quot;POST\&amp;quot;, \&amp;quot;https://pinboard.in/tabs/save/\&amp;quot;, true);&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;//Don&amp;#39;t think these need to be set&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;//req.setRequestHeader(\&amp;quot;Cache-Control\&amp;quot;, \&amp;quot;no-cache\&amp;quot;);&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;//req.setRequestHeader(\&amp;quot;X-Requested-With\&amp;quot;, \&amp;quot;XMLHttpRequest\&amp;quot;);&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;//This needs to be set explicity for Gecko, Webkit seems to do by default&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;req.withCredentials = true&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;req.setRequestHeader(\&amp;quot;Content-Type\&amp;quot;, \&amp;quot;multipart/form-data; boundary=\&amp;quot;+ params.boundary);&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;req.onreadystatechange = function() {&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;    if (req.readyState == 4) {&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;        window.location.href = \&amp;quot;https://pinboard.in/tabs/show/\&amp;quot;;&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;    }&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;req.send(params.toString());&lt;/span&gt;
&lt;span class=&quot;s2&quot;&gt;&amp;lt;/script&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;quot;&lt;/span&gt;

&lt;span class=&quot;nb&quot;&gt;do shell script&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;rm -f $HOME/Library/&amp;#39;Application Support&amp;#39;/Camino/caminosavetabstopinboard.html&amp;quot;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;do shell script&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;touch $HOME/Library/&amp;#39;Application Support&amp;#39;/Camino/caminosavetabstopinboard.html&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;js&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;path to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;home&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;folder&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;as &lt;/span&gt;&lt;span class=&quot;nc&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Library:Application Support:Camino:caminosavetabstopinboard.html&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;as&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;alias&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;open for access&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;js&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;with&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;write&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;permission&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;write&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;source&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;js&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;close access&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;js&lt;/span&gt;


&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;js&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/955471&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Fixed Gear and Destruction of the Drive Train.</title>
   <link href="http://atomicules.co.uk/2011/05/05/fixed-gear-and-destruction-of-the-drive-train.html"/>
   <updated>2011-05-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/05/fixed-gear-and-destruction-of-the-drive-train</id>
   <content type="html">
		
				 &lt;p&gt;Replaced my bottom bracket the other day after it failed completely (fortunately still managed to get home on it, but the wobble was a bit like being on a clown's bike). It had lasted less than a year. Ok, fair enough, I use nothing but the &lt;a href=&quot;http://www.halfords.com/webapp/wcs/stores/servlet/product_storeId_10001_catalogId_10151_productId_158184_categoryId_210159_langId_-1?cm_sp=Intelligent_Offer-_-Product_List_Zone_1-_-Blank&amp;amp;iozone=PLPz1&quot;&gt;cheapest, shoddiest, components&lt;/a&gt;, but still. Wow. I guess this is what putting the miles in does.&lt;/p&gt;

&lt;p&gt;My rear hub bearings are also well on the way out. That new wheel I've also had less than a year. I guess this is how things are going to be.&lt;/p&gt;

&lt;p&gt;The plus side to fixed gear is relatively low amount and cost of maintenance. It looks like replacing chain, bottom bracket and hub bearings will be pretty common. But at least they are cheap components. As much as &lt;a href=&quot;http://atomicules.co.uk/2011/03/31/boardman-bikes-cyclocross-cx.html&quot;&gt;I'd love an expensive bike&lt;/a&gt;, the problem gears (and higher spec components) would bring is the higher cost of replacement parts. Because they are still going to fail. And I can barely afford the &lt;a href=&quot;http://twitter.com/#!/atomicules/status/65553378704506880&quot;&gt;cheapest of bearings&lt;/a&gt; to replace those in my hub, let alone having to fork out for a &lt;a href=&quot;http://www.wiggle.co.uk/?s=Shimano+sora&quot;&gt;new Sora parts&lt;/a&gt; (and they are the cheap ones!).&lt;/p&gt;

&lt;p&gt;The downside to fixed gear seems to be the rapid destruction of drive train. I guess with a geared bike bits would last longer because they aren't under so much stress. One gear ratio and climbing hills kills bottom brackets. This is another reason why &lt;a href=&quot;http://atomicules.co.uk/2011/02/18/40-16.html&quot;&gt;dropping down my ratio a bit&lt;/a&gt; would be a good idea.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>A few notes on using Jekyll (and Liquid)</title>
   <link href="http://atomicules.co.uk/2011/05/03/Some-Thoughts-On-Jekyll.html"/>
   <updated>2011-05-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/05/03/Some-Thoughts-On-Jekyll</id>
   <content type="html">
		
				 &lt;p&gt;(since that's what I'm now using)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pagination - It is actually &lt;a href=&quot;https://github.com/mojombo/jekyll/wiki/Pagination&quot;&gt;documented&lt;/a&gt;, and &lt;a href=&quot;http://www.nonpolynomial.com/&quot;&gt;this site&lt;/a&gt; is a &lt;a href=&quot;https://github.com/qdot/nonpolynomial.com/blob/master/_layouts/front.html&quot;&gt;great example&lt;/a&gt; of how to do it, BUT (and it is a big BUT), basically you can either have categories OR pagination. I opted for categories and then adding in the ability to &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/blob/master/archive.html#L5-7&quot;&gt;filter the archive page by category&lt;/a&gt; so there was still someway to get all the posts in a category.&lt;/li&gt;
&lt;li&gt;Nested for loops - don't seem to work in Liquid. I was &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/commit/89646e8de6895ae91d8c3426203480268b29c297#archive.html&quot;&gt;trying to get all the categories of a post as class names&lt;/a&gt;, but couldn't get it to work. However, me being stupid, there was &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/commit/42ab2d889b08ad9ada088124b60a7b28e48079f4#archive.html&quot;&gt;a much easier way to do this&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Markdown processors - I'd read about there being different markdown processors, Rdiscount, Makuru, etc and wondered why? Until I tried my site, that is.  When you've things like having markdown files that use html elements, Rdiscount will process this fine, Makuru will fall over.&lt;/li&gt;
&lt;li&gt;Liquid syntax conflicts - (An aside: I actually like the Liquid markup syntax, it's pretty cool). I had a &lt;a href=&quot;http://atomicules.co.uk/2009/05/17/wolframalpha.html&quot;&gt;blog post about Wolfram Alpha&lt;/a&gt; and a link to a matrix calculation that used double curly brackets for the matrix and got the error &quot;Liquid Exception: Variable '{ {1%2C1%2C3}' was not properly terminated with regex p: /}}/&quot; in the page. I've not figured out anyway to avoid this, I.e. escape curly brackets from being processed. I just had to &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/commit/90d4681b4364d4652e95b56436ceb14677b15bfa#_posts/2009-05-17-wolframalpha.html&quot;&gt;use square brackets instead&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The mystery of post vs pages - After awhile you figure this out, and you do clever things (I felt clever, anyway) like &lt;a href=&quot;https://github.com/atomicules/atomicules.github.com/blob/46661e97f188f37a708dd14a600a2b69ef039c91/_includes/text.html&quot;&gt;use both in the same include&lt;/a&gt;. At least you think you'd figured it out, until you realise the page's aren't getting parsed by Markdown. Turns out you have to &lt;a href=&quot;https://github.com/i5m/i5m.github.com/commit/f4b0eaf76581b2f6c57555b5bbea5faab46d8ea0#_includes/text.html&quot;&gt;just use content&lt;/a&gt;, even though page.title and post.title work as expected. Entirely weird.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>MaxiVision</title>
   <link href="http://atomicules.co.uk/2011/04/24/MaxiVision.html"/>
   <updated>2011-04-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/24/MaxiVision</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blogs.suntimes.com/ebert/2011/01/more_than_ever_the_future_of_f.html&quot;&gt;&#187; MaxiVision&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Meant to mention this about three months ago, when it was actually posted, but somehow never got around to it. Anyway, I'm not so interested in the article because of cinema (although agree with the anti-3D sentiments - I've never seen a 3D movie and don't want to - and I am interested in the technical details behind &lt;a href=&quot;http://web.archive.org/web/20021006053821/http://www.geocities.com/hollywood/makeup/4303/maxivision.html&quot;&gt;Maxivision&lt;/a&gt;), rather that it gives me hope: Although my photography is on hold indefinitely I do want to get back to it one day. And if film stock remains for cinema use (even just distribution), this means it should be around a while longer for photography as well.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Pinboard to Camino, Take two</title>
   <link href="http://atomicules.co.uk/2011/04/21/Pinboard-2-Camino-2.html"/>
   <updated>2011-04-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/21/Pinboard-2-Camino-2</id>
   <content type="html">
		
				 &lt;p&gt;I live by the &quot;It's Cool to be Crap&quot; motto (from &lt;a href=&quot;http://www.whenwewasrad.co.uk/&quot;&gt;R.A.D. magazine&lt;/a&gt; for those that can remember). So to go with my &lt;a href=&quot;http://atomicules.co.uk/2011/04/12/Selection-Sort-in-Haskell.html&quot;&gt;crap Haskell attempt&lt;/a&gt; here's my 2nd crap attempt at a &lt;a href=&quot;http://atomicules.co.uk/2011/02/22/pinboard-bookmark-importer-for-camino.html&quot;&gt;Pinboard to Camino bookmark importer&lt;/a&gt;, one that preserves Camino metadata (such as number of visits) rather than simply deleting and replacing all the bookmarks. I still have a long way to go, but I am on the right track (well I think I am).&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;c1&quot;&gt;# Pinboard to Camino&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# A Ruby script to import/update Pinboard bookmarks into Camino&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# This is a evolution of this Applescript: https://gist.github.com/835932 which simply deleted and &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# replaced a bookmarks collection. This Ruby script attempts to update, rather than delete and replace,&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# so Camino bookmark visit counts are preserved, etc.&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# IT IS VERY SLOW!&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# Really, it is. Took about 35 mins to run through a Camino bookmarks file with 2003 existing &amp;quot;pinboard&amp;quot;&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# bookmarks and add a further 1159 new &amp;quot;pinboard&amp;quot; bookmarks. &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# The reason why it is so slow is that it takes a full export from Pinboard and for each bookmark&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# has to check every node in the Camino bookmarks file until it finds / doesn&amp;#39;t find a match.&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# This script &amp;quot;just about works for me&amp;quot;, but is rubbish (may create duplicates).&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# I&amp;#39;m just using this as a stepping stone to the next script where I will attempt&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# to speed things up:&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# - Create a hash of the two bookmark files for faster lookup&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# - Search based on a MD5 of the urls, rather than the url itself, since this is what the API uses...&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# - Consider using API to fetch &amp;#39;changes&amp;#39; rather than &amp;#39;everything&amp;#39;&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;rubygems&amp;#39;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;hpricot&amp;#39;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Tried Nokogiri, but it wouldn&amp;#39;t parse my pinboard bookmarks file. Hurray for Hpricot!&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;hpricot/xchar&amp;#39;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;fileutils&amp;#39;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;optparse&amp;#39;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Command line option parser&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;require&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;ostruct&amp;#39;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#For storing options&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Set defaults for command line options. Inelegant, but...&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;options&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;OpenStruct&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;new&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pinboard&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;username&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;password&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Command line options&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;optparse&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;OptionParser&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;opts&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;opts&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;-c&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;--camino bookmarks.plist&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Specify location of Camino bookmarks file&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;c&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;opts&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;-p&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;--pinboard export.html&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Specifiy location of Pinboard export&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pinboard&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;p&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;opts&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;-u&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;--username USERNAME&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Pinboard Username&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;username&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;u&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;opts&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;-P&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;--password PASSWORD&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Pinboard password&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;password&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;p&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;optparse&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parse!&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Let&amp;#39;s just use constants:&lt;/span&gt;
&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt;
&lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pinboard&lt;/span&gt;
&lt;span class=&quot;no&quot;&gt;Username&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;username&lt;/span&gt;
&lt;span class=&quot;no&quot;&gt;Password&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;password&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# If -c or -p specified, both need to be specified. Will override &lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;||&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;unless&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;# http://stackoverflow.com/questions/2547201/how-do-i-handle-a-missing-mandatory-argument-in-ruby-optionparser/2548272#2548272&lt;/span&gt;
        &lt;span class=&quot;vg&quot;&gt;$stderr&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Error: you must specify both --camino and --pinboard options.&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;exit&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;vg&quot;&gt;$stdout&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Using locally provided files&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;elsif&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Username&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;||&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Password&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;||&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;unless&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Username&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Password&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;vg&quot;&gt;$stderr&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Error: you must specify both --username and --password options.&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;exit&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Set Camino and Pinboard&lt;/span&gt;
    &lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;ENV&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;HOME&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;/Library/Application Support/Camino/bookmarks.plist&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;https://&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Username&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Password&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;@pinboard.in/export/&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Backup bookmarks file &lt;/span&gt;
&lt;span class=&quot;no&quot;&gt;FileUtils&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cp&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;.pb2cambak&amp;quot;&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# Might need to use single quotes.&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Open bookmarks files&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;pinboard&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Pinboard&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Find the &amp;quot;Pinboard&amp;quot; folder in the Camino bookmarks&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;caminopbfolder&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//plist/dict/array/dict/string[text()=&amp;#39;pinboard&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//array&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;pbbadurls&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[]&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;cambadurls&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[]&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;pinboard&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;//dl/dt/a&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#For testing via irb: plink = pinboard.search(&amp;quot;//dl/dt/a[@href=&amp;#39;&amp;#39;]&amp;quot;)[0]&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;href&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#bug if url contains single quote. Hpricot finds wrong element - would prefer if it just failed!&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;# Step 1) Find existing URL in Camino and update Title and Description from Pinboard&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;begin&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;# Bad urls can cause a problem&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#caminourls = caminopbfolder.search(&amp;quot;//dict/string[text()=#{plink[&amp;#39;href&amp;#39;]}]&amp;quot;) #Don&amp;#39;t need to fix ampersand here. Seems to happen automagically.&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Re-write to get around single quote issue in URLs&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;caminourls&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminopbfolder&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//dict/string&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;select&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;inner_text&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;href&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;strip&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Strip leading/trailing whitespace&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;caminourl&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminourls&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminourls&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;preceding_siblings&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;last&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerHTML&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;URL&amp;quot;&lt;/span&gt;
                    &lt;span class=&quot;n&quot;&gt;caminourl&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Another problem here is that //dict/string isn&amp;#39;t guaranteed to the be the URL key&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#So if happened to include URL as description, etc it would fall over.&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Can&amp;#39;t seem to get preceding-sibling to work though in XPath&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Need above work around&lt;/span&gt;
        
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminourl&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminourl&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;# Then need to update Description&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Very last one might not have a sibling&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;name&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;dd&amp;quot;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#If there is a Pinboard Description???&lt;/span&gt;
                    &lt;span class=&quot;c1&quot;&gt;# If existing Camino Description, update&lt;/span&gt;
                    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Description&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;
                        &lt;span class=&quot;n&quot;&gt;caminodescription&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Description&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;
                        &lt;span class=&quot;n&quot;&gt;caminodescription&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerHTML&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerText&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Need to escape for XML! Need to remove line returns aswell&lt;/span&gt;
                    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;# Need to add a new element into bookmarks.plist&lt;/span&gt;
                        &lt;span class=&quot;n&quot;&gt;camimoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;after&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;key&amp;gt;Description&amp;lt;/key&amp;gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerText&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;lt;/string&amp;gt;&amp;quot;&lt;/span&gt;
                    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;# Might need to remove Camino Description elements (This is a bit messy)&lt;/span&gt;
                    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Description&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;
                        &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Description&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;remove&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Do it in this order ;-)&lt;/span&gt;
                        &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Description&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;remove&lt;/span&gt;
                    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
                &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;# And title. I think can assume there is always a title in both files&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminotitle&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminoitem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//key[text()=&amp;#39;Title&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminotitle&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerHTML&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerText&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
        &lt;span class=&quot;c1&quot;&gt;# Step 2) Add new URLS to Camino from Pinboard&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;# A wobbly is being thrown here. Anything without a description is throwing an error&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminodescriptionelem&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;name&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;dd&amp;quot;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#If there is a Pinboard Description???&lt;/span&gt;
                &lt;span class=&quot;n&quot;&gt;caminodescriptionelem&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;key&amp;gt;Description&amp;lt;/key&amp;gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;next_sibling&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerText&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;lt;/string&amp;gt;&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;caminopbfolder&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//dict&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;last&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;after&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;lt;dict&amp;gt;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;caminodescriptionelem&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;lt;key&amp;gt;Title&amp;lt;/key&amp;gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;innerText&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;lt;/string&amp;gt;&amp;lt;key&amp;gt;URL&amp;lt;/key&amp;gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;href&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;strip&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;lt;/string&amp;gt;&amp;lt;/dict&amp;gt;&amp;quot;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#.gsub(/&amp;amp;(?!amp;)/, &amp;#39;&amp;amp;amp;&amp;#39;)&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;# Hmm what about UUID? How&amp;#39;s that going to work? Just skip?&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;# Do I need line breaks, etc?&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;rescue&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Log bad urls&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;pbbadurls&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plink&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;href&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#This is not working properly. Everything is getting logged!&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Step 3) Search in reverse and delete in Camino if not in Pinboard #Not sure what to do about ampersands here.&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# This isn&amp;#39;t working properly. Hpricot doesn&amp;#39;t seem to like finding urls with additional colons in them&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# (Which also means duplicates could be created above!)&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# Also, sometimes the urls from pinboard have a space after them, i.e. &amp;quot;http://a.url.com &amp;quot; which will fail to match&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# So I will leave removing urls until I have a more robust search&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;=begin&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;caminopbfolder.search(&amp;quot;//dict/key[text()=&amp;#39;URL&amp;#39;]&amp;quot;).each do |key|&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   begin&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;       found = pinboard.search(&amp;quot;//dl/dt/a[@href=#{key.next_sibling.innerText}]&amp;quot;)[0] #Same here, ampersands handled automagically&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;       if found == nil&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;           key.parent.remove # Don&amp;#39;t think this is quite right either&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;       end&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   rescue&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;       cambadurls &amp;lt;&amp;lt; key.next_sibling.innerText&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   end&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;=end&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Last of all, write out file&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;f&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;w&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;f&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;write&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;f&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;close&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Output if couldn&amp;#39;t sync some&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pbbadurls&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
    &lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;join&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dirname&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;pbbadurls.log&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;w&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;f&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;f&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Couldn&amp;#39;t add the following URLs to Camino:&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;pbbadurls&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;f&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cambadurls&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
    &lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;join&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dirname&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;cambadurls.log&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;w&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;f&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;f&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Couldn&amp;#39;t remove the following URLs from Camino:&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cambadurls&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;f&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;#Need to verify bookmarks added:&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;caminoold&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;.pb2cambak&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;caminopbfolderold&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminoold&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//plist/dict/array/dict/string[text()=&amp;#39;pinboard&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//array&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Old number of bookmarks: &lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;caminopbfolderold&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//dict/key[text()*=&amp;#39;URL&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;count&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;caminonew&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;Hpricot&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Camino&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;caminopbfoldernew&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;caminonew&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//plist/dict/array/dict/string[text()=&amp;#39;pinboard&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//array&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;New number of bookmarks: &lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;caminopbfoldernew&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;//dict/key[text()*=&amp;#39;URL&amp;#39;]&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;count&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/934096&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is as slow as chuff! Took about 35 mins to add a 1000 odd new bookmarks to my existing 2000 odd Camino bookmarks because it has to iterate through each node of the Camino bookmarks file for each bookmark exported from Pinboard.in. And I think it might have added some duplicates as well because I found out that Hpricot doesn't like finding URLs with additional colons in them, so will have failed to find the existing bookmark and added it again.&lt;/p&gt;

&lt;p&gt;The reason I stuck with this approach (iterating through each node) is that I can modify the Camino bookmarks structure on the fly.
Now I've got this working I intend to speed it up by building a hash of the two bookmark files (which will make lookups and comparisons much easier, but complicates modifying the actual bookmark structure), make it more robust by using MD5s of URLs for searching and comparison and perhaps also looking into some Pinboard API options rather than doing a simple export of all bookmarks. But don't hold your breath...&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>TenFourFox</title>
   <link href="http://atomicules.co.uk/2011/04/18/TenFourFox.html"/>
   <updated>2011-04-18T14:20:00Z</updated>
   <id>http://atomicules.co.uk/2011/04/18/TenFourFox</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.floodgap.com/software/tenfourfox/&quot;&gt;&#187; TenFourFox&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;On a PPC web browser note, came across this recently. I'm very grateful of developers like this (also &lt;a href=&quot;http://www.caminobrowser.org/&quot;&gt;Camino&lt;/a&gt;, &lt;a href=&quot;http://mowglii.com/itsy/&quot;&gt;Itsy&lt;/a&gt; and &lt;a href=&quot;http://sparrowmailapp.com/&quot;&gt;Sparrow&lt;/a&gt; spring to mind) who still support Leopard and PPC Macs.&lt;/p&gt;

&lt;p&gt;Camino-Webkit will be Intel only, and it looks like even anything &lt;a href=&quot;http://tenfourfox.blogspot.com/2011/04/ruminations-on-mozilla-rapid-release.html&quot;&gt;after Firefox 4 is going to be a struggle&lt;/a&gt; (the TenFourFox blog is an interesting read, by the way). But at least having FF4 available will keep PPC Macs going for quite awhile longer.&lt;/p&gt;

&lt;p&gt;(Day to day I'm still using Camino, because it launches faster and is still prettier in my eyes, but it is comforting having TenFourFox available)&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>The Future of Camino</title>
   <link href="http://atomicules.co.uk/2011/04/18/The-Future-of-Camino.html"/>
   <updated>2011-04-18T14:00:00Z</updated>
   <id>http://atomicules.co.uk/2011/04/18/The-Future-of-Camino</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://caminobrowser.org/blog/2011/#mozembedding&quot;&gt;&#187; The Future of Camino&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This caught me a bit off guard and it must have been the time of the month as well as I &quot;got a bit emotional&quot; over what is really just a web browser (but it's not!).&lt;/p&gt;

&lt;p&gt;The benefit of me not finding time to write this straight away is that I can start this next sentence as follows: &lt;em&gt;At first&lt;/em&gt; I wasn't sure how I felt about the future as although I love Camino and have been using it for a long time, if it wasn't Gecko based how would it differentiate itself?&lt;/p&gt;

&lt;p&gt;But then I remembered: It's not Gecko I love. I'm actually a big I'm a big fan of Webkit (although I sincerely hope Gecko remains a strong competitor just for the benefit that competition provides; if only Mozilla had decided to make embedding easier rather than drop support!) and there was a time I went all Webkit fanboi-ish and was using the nightlies until I realised that the rendering engine really doesn't matter that much (not between Gecko, Webkit and Presto at least) if the UI of the browser is rubbish. And I HATED Safari's UI (still do). When I realised that, I spent some time looking at Webkit alternatives (iCab,  Shiira, Omniweb), but non fitted the bill so I went back to Camino and was happy.&lt;/p&gt;

&lt;p&gt;There is a niggle in my mind that since Camino-Webkit will be Intel only, that if I had an Intel Mac would I just use Chrome, like I do on Windows? I really like the Chrome UI. But since I still don't have an Intel Mac I can't really say for sure; does it have the same level of &lt;a href=&quot;http://caminobrowser.org/features/&quot;&gt;system integration as Camino&lt;/a&gt;? Growl Support? Applescript? Keychain? Would Chrome be a massive resource hog? How do start-up times compare?&lt;/p&gt;

&lt;p&gt;A Webkit based Camino is actually an exciting thought. Getting ahead of myself (and the developers!), but once ported across it would surely free up the very limited time of the developers that was mostly spent tackling Gecko integration, to focus on other areas: UI evolution, perhaps even extensions and greasekit support, and any other wonderful ideas they've had up their sleeves for years, but have not had the resource to work on.&lt;/p&gt;

&lt;p&gt;I just wish I had my own Mac again so I could get involved and help out.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Learn You a Haskell now in print</title>
   <link href="http://atomicules.co.uk/2011/04/12/Talking-of-Haskell.html"/>
   <updated>2011-04-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/12/Talking-of-Haskell</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.learnyouahaskell.com&quot;&gt;&#187; Learn You a Haskell now in print&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Talking of Haskell, the excellent Learn You a Haskell website is now out in print form. On my wishlist.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Selection Sort in Haskell</title>
   <link href="http://atomicules.co.uk/2011/04/12/Selection-Sort-in-Haskell.html"/>
   <updated>2011-04-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/12/Selection-Sort-in-Haskell</id>
   <content type="html">
		
				 &lt;p&gt;For me there is just no such thing as spare time any more - it's basically time when I should be doing something else. So when &lt;a href=&quot;http://reprog.wordpress.com/2010/05/19/another-challenge-can-you-write-a-correct-selection-sort/&quot;&gt;this popped up&lt;/a&gt; I thought it would be an ideal time to learn a bit of Haskell. I had a quick play at the time and had the &quot;Oh! Haskell doesn't have mutable variables!&quot; revelation (although I didn't know they were called mutable back then) had a bit more of a play with recursion, etc and then got busy with other stuff for, well, almost a year(!) until I 'found' time again:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;haskell&quot;&gt;&lt;span class=&quot;c1&quot;&gt;-- Selection Sort in Haskell &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;--&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;-- Cheating by using IORef for mutable variables since I don&amp;#39;t know what I&amp;#39;m doing&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;-- with Haskell, although do have an inkling that the benefit of Haskell is that&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;-- all of below can be done in about three lines. &lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;--&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;-- Assumes integer input only.&lt;/span&gt;

&lt;span class=&quot;kr&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;Data.IORef&lt;/span&gt;
&lt;span class=&quot;kr&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;Data.List.Split&lt;/span&gt;  &lt;span class=&quot;c1&quot;&gt;-- cabal install split &lt;/span&gt;
                        &lt;span class=&quot;c1&quot;&gt;-- http://hackage.haskell.org/packages/archive/split/0.1.2.3/doc/html/Data-List-Split.html#v%3asplitOn&lt;/span&gt;
                        &lt;span class=&quot;c1&quot;&gt;-- I&amp;#39;m not even going to think about doing this myself.&lt;/span&gt;
                        &lt;span class=&quot;c1&quot;&gt;-- Used to get a comma delimted string as a list&lt;/span&gt;

&lt;span class=&quot;nf&quot;&gt;main&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kr&quot;&gt;do&lt;/span&gt; 
    &lt;span class=&quot;c1&quot;&gt;-- Set up &amp;#39;variables&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;putStr&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;Enter List to Sort:&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;stringinput&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;getLine&lt;/span&gt;
    &lt;span class=&quot;kr&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;listinput&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;splitOn&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;,&amp;quot;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;stringinput&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;-- Convert comma delimited string to list&lt;/span&gt;
    &lt;span class=&quot;kr&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;intinput&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;read&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;x&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;::&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;Int&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;x&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;listinput&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;--Convert list of strings to list of Integers&lt;/span&gt;
                                                        &lt;span class=&quot;c1&quot;&gt;--Need to specify type http://learnyouahaskell.com/types-and-typeclasses&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;unsortlistIO&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;newIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;intinput&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;elementIO&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;newIORef&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;[]&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;sortlistIO&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;newIORef&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;[]&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;sort&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;elementIO&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&lt;/span&gt;

&lt;span class=&quot;nf&quot;&gt;sort&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;elementIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kr&quot;&gt;do&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;sortlist&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;-- initialise, for all intents and purposes&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;--print unsortlist --debug&lt;/span&gt;
    &lt;span class=&quot;kr&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;kr&quot;&gt;then&lt;/span&gt; &lt;span class=&quot;kr&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;-- Note to self: Must remember to ident these after if!&lt;/span&gt;

            &lt;span class=&quot;c1&quot;&gt;-- find smallest element(s)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;writeIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;elementIO&amp;#39;&lt;/span&gt;  &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;minimum&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;element&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;elementIO&amp;#39;&lt;/span&gt;

            &lt;span class=&quot;c1&quot;&gt;-- Add to sorted list&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;sortlist&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;writeIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sortlist&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;element&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

            &lt;span class=&quot;c1&quot;&gt;-- remove from original list&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;writeIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;not&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;minimum&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)))&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlist&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

            &lt;span class=&quot;n&quot;&gt;readIORef&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;--print sortlist --debug&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;sort&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;unsortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;elementIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlistIO&amp;#39;&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;-- loop. Ha!&lt;/span&gt;
        &lt;span class=&quot;kr&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sortlist&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;-- Note to self: must be careful about returning the right type of thing&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/914610&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I gather the benefit of Haskell is that this can actually be written in a couple  of lines. Maybe in another eleven months time I'll have figured that out.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Twitter Lists</title>
   <link href="http://atomicules.co.uk/2011/04/11/Twitter-Lists.html"/>
   <updated>2011-04-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/11/Twitter-Lists</id>
   <content type="html">
		
				 &lt;p&gt;I've struggled with these since start. I think they are a good idea, but it is hard to set them up effectively (via website or clients) and also use them effectively from anywhere (it's just too convenient to default to the main timeline).&lt;/p&gt;

&lt;p&gt;I thought about defining lists by interest: Art, Code, Cycling, but then decided against it as at any point in time I'm going to want to check all three anyway; neither is of more importance. Plus, categorising peoples tweets is a bit pointless as tweets often span a huge variation of topics (as life does). I myself would tweet in all three of these categories as well as others.&lt;/p&gt;

&lt;p&gt;So I tried thinking of lists as more like filters. As I think this is really what I'm looking for when using a client, etc, a way to filter out the cruft and just show people i'm most interested in when I'm in a rush. So the first level of 'noise' reduction would be anything that's not art/code/cycling (but how do I categorise as them!?). The second level of noise reduction would be discounting accounts that aren't people (organisations, etc). The third level of noise reduction would be removing people I don't know - celebs, etc. And so on, and so on. Assuming this is the correct way to define levels of noise reduction, which it might not be.&lt;/p&gt;

&lt;p&gt;But as I started setting this up I thought &quot;this is a royal pain in the arse&quot; (and maintaining them would be too). So I've pretty much given up.&lt;/p&gt;

&lt;p&gt;Also, I'm not too sure as to the point of public lists. As I might create a list to contain all the people I am &lt;a href=&quot;https://twitter.com/#!/atomicules/folkr/members&quot;&gt;following because of flickr&lt;/a&gt;, but this list is useless to everyone else... isn't it? Perhaps of very slight relevance to those on the list who might be able to draw some insight as to why I am following them based by their appearance on a particular list.&lt;/p&gt;

&lt;p&gt;But, at long last, I've finally &lt;a href=&quot;https://twitter.com/#!/atomicules/folk-of-the-faraway-tree/members&quot;&gt;got the point of them&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Judge a Book by its Cover and a Band by its Name</title>
   <link href="http://atomicules.co.uk/2011/04/03/Judge-a-Book-by-its-Cover-and-a-Band-by-its-Name.html"/>
   <updated>2011-04-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/03/Judge-a-Book-by-its-Cover-and-a-Band-by-its-Name</id>
   <content type="html">
		
				 &lt;p&gt;I've done quite well on listening to new stuff lately, even had a day working from home when I got to use Spotify to check out a few artists. However, it seems I'm overly influenced by a band's name or album name when it comes with picking what new music to try listening to. I should know better by now, as 90% of the stuff I try I think is pants however raving the reviews, but I guess you've got to filter things down somehow.&lt;/p&gt;

&lt;p&gt;The interesting ones have been:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://yuck.bandcamp.com/&quot;&gt;Yuck&lt;/a&gt; - Yuck. I loved Cajun Dance Party, but didn't realise &lt;a href=&quot;http://en.wikipedia.org/wiki/Cajun_Dance_Party&quot;&gt;Yuck were borne out of them&lt;/a&gt; until ages after having my interested piqued by the articles on them on TLOBF. I like the whole album, but Georgia is ACE. Soundtrack to my summer.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.myspace.com/lecorpsmincedefrancoise&quot;&gt;LCMDF&lt;/a&gt; - Love &amp;amp; Nature. The first time around I didn't think much of them. Then I heard them again on one of Huw Stephen's podcasts so thought I'd have another listen. This album is pretty good, especially Future Me.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.last.fm/music/The+Shoes&quot;&gt;The Shoes&lt;/a&gt; - Crack My Bones. An Eclectic album. Especially on Spotify where an advert break between songs had me double checking I wasn't accidentally listening to a completely different album. I really want to get this so I can give it another listen, I think it might be fantastic. And also, how could I not like something called &lt;a href=&quot;http://shoesrb.com&quot;&gt;Shoes&lt;/a&gt; though?&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.cutcopy.net/&quot;&gt;Cut Copy&lt;/a&gt; -Zonoscope - Ok, but no standouts. Gets off to a crap start, but the second track, &quot;Take Me Over&quot; is better. The mega-long track at the end would be great to drifiting off to sleep to (useless fact: when I was a teenager I used to fall asleep listening to music with my headphones on and my parents were always concerned I might strangle myself in my sleep).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://keepshellyinathens.blogspot.com/&quot;&gt;Keep Shelly in Athens&lt;/a&gt; - What a fantastic name for a band! Hauntin' me is really quite good. Listened to a couple of other tracks, all seems quite chilled out, but good the same.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://marthasandarthurs.bandcamp.com/&quot;&gt;Martha's and Arthurs&lt;/a&gt; - Apes in Aeroplanes - I liked the name! I don't know about this though. It's ok for a chill out time, but is a bit folksy for my liking.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/03/download-oh-canada-15/&quot;&gt;Oh Canada 15&lt;/a&gt; - (I've skipped straight to this from No.6, but I found someone has &lt;a href=&quot;http://timberandsteel.wordpress.com/2011/03/10/oh-canada-mixtapes-by-the-line-of-best-fit/&quot;&gt;compiled a list of all of series&lt;/a&gt; that will make it easier for me to go back and fill in the gaps) None of it bad, but some passes me by. Standouts; MisterE,  Slow Down Molasses, Bear Trees and No Gold (very good!).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.harrys-gym.com/&quot;&gt;Harry's Gym&lt;/a&gt; - What Was Ours Can't Be Yours - Another fabulous name (the album). Unfortunately the name is better than the album. Sailing Home is very good. but the rest I'm just not sure about, have listened a few times, but just can't seem to pay attention&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pjharvey.net/&quot;&gt;PJ Harvey&lt;/a&gt; - Let England Shake - Interesting just because it's PJ Harvey! I'm still back at the clingfilm days of the 4-Track Demos. Oddly, &quot;The words that Maketh Murder is quite jolly&quot;. Probably the best track for me. The rest I doubt I'll be listening to much again.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.senser.co.uk/&quot;&gt;Senser&lt;/a&gt; - How to do Battle - (I know it has been around for awhile, but only recently got to listen). Hmm, if this had been released in 1995 I would have loved it and jumped all over it. Stacked Up was awesome (and I still love it), but now this just feels a bit dated. I guess we all hate it when our favourite bands evolve too much and the next album is a radical departure from what we were expecting/hoping for, but then also disappointed when it's exactly the same. It's me, not you (Senser): I've been waited since Stacked Up for exactly this album, but then when it came it wasn't actually what I was waiting for.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://paperbagrecords.com/artists/young-galaxy&quot;&gt;Young Galaxy&lt;/a&gt; - Cover your Tracks - Free EP from &lt;a href=&quot;http://paperbagrecords.com/shop/cover-your-tracks-remix-ep&quot;&gt;Paperbag records&lt;/a&gt;. Got it because of the Teen Daze mix and it is very good, which reminds me that I really could do with getting some Teen Daze stuff.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;And not really worth much of a mention:&lt;/p&gt;

&lt;p&gt;Stricken City, Treefight for Sunlight (Some falsetto stuff is awesome - Passion Pit - this just sounds like a load of hippies that have been kicked in the balls; great name though), Discodeine, Echo Lake, Esben and the witch (not as good as the hype. An bit too ethereal), Superhumanoids, Teengirl fantasy, LA Vampires (my god, no! That's just noise. Freak), Two Bicycles (I'm not Afraid to Wait For You / Alone At Sea - I waited for 4 mins for it to get going and then it ended.)&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Solarized</title>
   <link href="http://atomicules.co.uk/2011/04/02/Solarized.html"/>
   <updated>2011-04-02T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/04/02/Solarized</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://ethanschoonover.com/solarized&quot;&gt;&#187; Solarized&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Very polished and well presented colour-scheme for Vim (and more). Using it now. Couldn't get it to work with Pathogen though (not investigated why, jusy installed in normally). Also, whilst I was taking a peek around the website, noticed it used &lt;a href=&quot;http://jaspervdj.be/hakyll/&quot;&gt;Hakyll&lt;/a&gt;, a Haskell static site generator inspired by Jekyll - very interesting (I need to get back to learning Haskell).&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Boardman Bikes : Cyclocross CX</title>
   <link href="http://atomicules.co.uk/2011/03/31/boardman-bikes-cyclocross-cx.html"/>
   <updated>2011-03-31T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/03/31/boardman-bikes-cyclocross-cx</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://boardmanbikes.com/cx/index.html&quot;&gt;&#187; Boardman Bikes : Cyclocross CX&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I want all three. Don't need them, just want them. But seeing as how I've got through winter on fixed gear, I think I'll be staying on fixed gear. Still... nice bikes!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>rstat.us</title>
   <link href="http://atomicules.co.uk/2011/03/24/rstatus.html"/>
   <updated>2011-03-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/03/24/rstatus</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://rstat.us/&quot;&gt;&#187; rstat.us&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;The Twitter &lt;a href=&quot;http://groups.google.com/group/twitter-development-talk/browse_thread/thread/c82cd59c7a87216a&quot;&gt;kick-in-the-pants to developers&lt;/a&gt; earlier this month cause a bit of stir amongst developers &lt;a href=&quot;http://twitter.com/#!/gamoe/status/46538404862767104&quot;&gt;and&lt;/a&gt; &lt;a href=&quot;http://twitter.com/#!/gamoe/status/46537484380815360&quot;&gt;users&lt;/a&gt; alike. So some &lt;a href=&quot;https://github.com/hotsh&quot;&gt;very talented people&lt;/a&gt; who obviously &lt;a href=&quot;http://rstat.us/updates/4d8b2f10c26df84a89000506&quot;&gt;do not value sleep&lt;/a&gt; at all built a Twitter clone, but that is &lt;a href=&quot;http://rstat.us/open_source&quot;&gt;open-source&lt;/a&gt; and ultimately &lt;a href=&quot;http://blog.steveklabnik.com/announcing-rstatus&quot;&gt;distributed&lt;/a&gt;. Nice.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Greggs Cycles Bicycle Shop Window Thats A</title>
   <link href="http://atomicules.co.uk/2011/03/24/greggs-cycles-bicycle-shop-window-thats-a.html"/>
   <updated>2011-03-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/03/24/greggs-cycles-bicycle-shop-window-thats-a</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.habitables.co.uk/architecture/greggs-cycles-bicycle-shop-window&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_likgjizYA01qdhcbyo1_500.jpg&quot; alt=&quot;Greggs Cycles Bicycle Shop Window Thats A&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;em&gt;Gregg’s Cycles – Bicycle Shop Window&lt;/em&gt;. That's a nice shop window.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Spring (Almost)</title>
   <link href="http://atomicules.co.uk/2011/03/18/spring-almost.html"/>
   <updated>2011-03-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2011/03/18/spring-almost</id>
   <content type="html">
		
				 &lt;p&gt;It's spring. Almost/maybe/soon (it definitely was for a bit, but then dipped back into winter). Anyway, it warmed up enough that I had to take off my winter tyres; it really got too warm for those tyres and I think the rear might be a bit knackered now; the studs are all pushed over.&lt;/p&gt;

&lt;p&gt;I was a bit naive previously when I was wondering about tyres and chain rings. I knew the marathon racers would be out of my price range, but honestly thought I could stretch to £20 for a pair of the cross tyres - which would be great when the farm tracks get covered in mud. But, no, the skinny 23mm tyres have had to go back on. On the plus side: at least I had them! It's been fab to have such lightness back and so far: no broken spokes! I still think I could do with dropping the gear ratio down at some point in the future (which will probably be when there's about three teeth left on the chain ring) though just to help with the winds, although just having different tyres on has made a huge difference (I'd completely forgotten how much easier climbing hills was without winter tyres on).&lt;/p&gt;

&lt;p&gt;It seems like I had those winter tyres on for ages, but looking back it's not been so long: Only four months and somewhere around 2600 miles (there were only a couple of days I worked from home rather than face the snow). Those Schwalbe Marathon Winters have performed brilliantly. They really are a fantastic tyre and  can go from no snow to lots of snow and perform 'OK' in each situation. All in all, I only lost three studs on the front tyre and four on the back, which for the distance and mix of conditions (-20 deg C to +10 degC) is pretty damn good.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>BBC News - In pictures: The beauty of the bicycle</title>
   <link href="http://atomicules.co.uk/2011/03/11/bbc-news-in-pictures-the-beauty-of-the-bicycle.html"/>
   <updated>2011-03-11T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/03/11/bbc-news-in-pictures-the-beauty-of-the-bicycle</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.bbc.co.uk/news/world-12668503&quot;&gt;&#187; BBC News - In pictures: The beauty of the bicycle&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>One Gear, One Bike, No Brain</title>
   <link href="http://atomicules.co.uk/2011/03/08/one-gear-one-bike-no-brain.html"/>
   <updated>2011-03-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/03/08/one-gear-one-bike-no-brain</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://singlespeed2011.wordpress.com/&quot;&gt;&#187; One Gear, One Bike, No Brain&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I often think about that phrase &quot;All the gear, no idea&quot; and turning in on its head for fixed gear cycling into something like &quot;One Gear, All the ideas&quot;, but haven't yet been able to come up with anything that sounds good (as that obviously doesn't). However, perhaps that is because &quot;One Gear&quot; is more often than not a stupid idea (a fun one, but stupid all the same).&lt;/p&gt;

&lt;p&gt;So, doing Land's End to John O'Groats on a singlespeed, as Simon Watkins is planning on doing, is either a stroke of genius (it'll be a lot of fun) or madness (his poor legs). Here's wishing him a tailwind all the way!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Loving This A Lot I Can Pretend To Be Young And</title>
   <link href="http://atomicules.co.uk/2011/03/06/loving-this-a-lot-i-can-pretend-to-be-young-and.html"/>
   <updated>2011-03-06T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/03/06/loving-this-a-lot-i-can-pretend-to-be-young-and</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_lhn8hynwh11qzcagpo1_400.jpg&quot; alt=&quot;Loving This A Lot I Can Pretend To Be Young And&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Loving this a lot. I can pretend to be young and cool and listening to new music when really it's like listening to everything I liked to listen to when I was sixteen.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Aperture Collages</title>
   <link href="http://atomicules.co.uk/2011/02/28/aperture-collages.html"/>
   <updated>2011-02-28T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/28/aperture-collages</id>
   <content type="html">
		
				 &lt;p&gt;I knew you could use &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3933058647/in/set-72157622284301577/&quot;&gt;light tables to put together collages&lt;/a&gt; and use print to pdf to output it. I then &lt;a href=&quot;http://www.flickr.com/groups/aperture_users/discuss/72157610731776828/?search=Collage&quot;&gt;learnt that the book tool is a bit better&lt;/a&gt; since you can constrain layout a bit better; fit to 3x2 and align/scale images, etc  - although it is a shame you can't have a one page book. But I still couldn't figure out getting a decent resolution image out:&lt;/p&gt;

&lt;p&gt;Using Preview to open the pdf and save as a jpeg I got 144 ppi whatever resolution I actually picked. Which in this case meant an image of only 1701 × 1134 pixels when the collage was made up of images of 3000 x 2000 - so I really should have been able to get a higher resolution jpeg out.&lt;/p&gt;

&lt;p&gt;In the book tool you can go straight to jpeg, but I still couldn't get anything higher than 144 ppi.&lt;/p&gt;

&lt;p&gt;It didn't matter what (physical) size the  pdf or book size was.&lt;/p&gt;

&lt;p&gt;However, I then tried using Seascape and GraphicConverter (just because I still have an old copy of that around) to open the pdf file. In both you get to choose the resolution at which to open it and that way I was able to output a decent sized jpeg.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Pinboard Bookmark Importer for Camino</title>
   <link href="http://atomicules.co.uk/2011/02/22/pinboard-bookmark-importer-for-camino.html"/>
   <updated>2011-02-22T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/22/pinboard-bookmark-importer-for-camino</id>
   <content type="html">
		
				 &lt;p&gt;It's been awhile since I had a play with Applescript, but I thought I'd use it to automate importing my Pinboard bookmarks (so I &lt;em&gt;(a)&lt;/em&gt; have a local backup and &lt;em&gt;(b)&lt;/em&gt; can search straight from Camino).&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;applescript&quot;&gt;&lt;span class=&quot;c&quot;&gt;--Pinboard Bookmark Importer&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;--An Applescript to automate importing of Pinboard.in bookmarks to a collection in Camino. To be used for occasional or one off import&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;-- pinboard username and password&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pbuser&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard username&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pbpass&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard password&amp;quot;&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;--Download bookmarks via curl to desktop (because can use shortcut when selecting file for import via UI scripting)&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;do shell script&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;cd ~/Desktop; curl https://&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pbuser&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;:&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pbpass&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;@pinboard.in/export/ -o pinboard.html&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;


&lt;span class=&quot;c&quot;&gt;--import bookmarks via UI scripting&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;System Events&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;UI&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;elements&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;then&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;process&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;frontmost&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;true&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;click&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;item&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Import Bookmarks…&amp;quot;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;bar&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;item&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;File&amp;quot;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;bar&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;process&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;click&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pop&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;up&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;button&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Import Bookmarks&amp;quot;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;process&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;click&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;item&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pop&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;up&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;button&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;window&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Import Bookmarks&amp;quot;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;process&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;keystroke&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;D&amp;quot;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;command&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;down&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;--go to desktop downloads?&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;keystroke&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard&amp;quot;&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;--this works as long as there is no other file called &amp;quot;pinboard something or other&amp;quot; on the desktop.&lt;/span&gt;
        &lt;span class=&quot;nv&quot;&gt;keystroke&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;return&lt;/span&gt;
        
        
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;System Preferences&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;nb&quot;&gt;activate&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;current&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pane&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;pane&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;com.apple.preference.universalaccess&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;nb&quot;&gt;display dialog&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;UI element scripting is not enabled. Check \&amp;quot;Enable access for assistive devices\&amp;quot;&amp;quot;&lt;/span&gt;
            
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;
        
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;
    
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;


&lt;span class=&quot;c&quot;&gt;--delete the previous pinboard folder&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;with timeout of&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;120&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;seconds&lt;/span&gt;
            &lt;span class=&quot;nb&quot;&gt;delete&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;bookmark&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;folder&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;timeout&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;


&lt;span class=&quot;c&quot;&gt;--rename the new imported folder&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Camino&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;of&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;bookmark&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;folder&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Imported Bookmarks&amp;quot;&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;--delete pinboard file from the desktop&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;application&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Finder&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;nv&quot;&gt;move&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;file&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(((&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;path to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;desktop&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;pinboard.html&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;as &lt;/span&gt;&lt;span class=&quot;nc&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;to&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;trash&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;tell&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/835932&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's not very robust since it uses UI scripting and could fallover if you happen to have similarly named files already on the desktop, but it works for me. I thought (for now) I'd just use the built in bookmark importer rather than try to touch the bookmarks.plist file directly. The downside is that it completely replaces the pinboard bookmarks collection each time (which I think means you'd lose visit counts in Camino - not a concern for me), but the upside is that it isn't going to corrupt your bookmarks file. So as it is, it's ok for occasional or one off use, no good for regularly keeping Camino in sync with Pinboard (I'd have to do something more clever and target the bookmarks.plist file directly and I don't have the time or need to do that right now).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>40/16?</title>
   <link href="http://atomicules.co.uk/2011/02/18/40-16.html"/>
   <updated>2011-02-18T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/18/40-16</id>
   <content type="html">
		
				 &lt;p&gt;The wind and winter tyres are wearing me down. At least I hope that's it. Perhaps I need to eat more? Either way I would have thought my legs would feel stronger by now, but as it is they feel weaker. It is difficult to remember what summer cycling was like with commute times of just over an hour, whereas now 1.5 hrs is the norm (quite quick actually). Is it just my winter tyres?&lt;/p&gt;

&lt;p&gt;Any way, the fact that my front chain ring is now on it's way out (&quot;I've never broken  a &lt;insert component of choice&gt; before!&quot; is becoming a common phrase as I pile on stupid amounts of miles) it's got me thinking about dropping down my gear ratio again. When I got my new rear wheel that came with a 16T cog, as opposed to the 15T that the bike came with, it was a really noticeable difference on the hills. Not so much any more. I'm thinking of replacing the front chain ring with a 40T instead of the 42T that it is currently. That would take me from a 2.625 ratio to 2.5. Not a massive difference, but if I could be quicker on the hills that should make up for the slower speed on the flats. Think I'll have to give it a go.&lt;/p&gt;

&lt;p&gt;Of course, if I change off the winter tyres before then I might find everything is ok again. Or if I change after I switch tyres I might find it's too low a ratio and I'm spinning out too much. Hmmm... decisions...decisions...&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Some other stuff I've been listening to</title>
   <link href="http://atomicules.co.uk/2011/02/13/some-other-stuff-ive-been-listening-to.html"/>
   <updated>2011-02-13T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/13/some-other-stuff-ive-been-listening-to</id>
   <content type="html">
		
				 &lt;p&gt;As well as my foray into Dubstep some other stuff I've been listening to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2011/01/bag-raiders-bag-raiders/&quot;&gt;Bag Raiders - Bag Raiders&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bbc.co.uk/blogs/introducing/2010/11/tip_of_the_week_lights_go_blue.shtml&quot;&gt;LightsGoBlue - This is Spectrum&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.thelineofbestfit.com/2010/12/the-wooden-sky-if-i-dont-come-home-youll-know-im-gone-2/&quot;&gt;The Wooden Sky - If I Don’t Come Home You’ll Know I’m Gone&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://www.lightsgoblue.com/&quot;&gt;LightsGoBlue&lt;/a&gt;. Apparently they are: &lt;a href=&quot;http://brand.bensherman.com/unsigned/&quot;&gt;&quot;an edgy electronic pop rock band&quot;&lt;/a&gt; (which all sounds quite appropriate considering the last post on genres). I heard them on Huw Stephen's podcast, but they seem to be plastered all over the web at the moment. Flashlights is pretty good. Poppy. More 'Poppy' than I recall from Huw Stephens. Russian Blue Lagoon is a bit shit really; there ain't no edge there. Stick to your Guns is difficult to comment on following Russian Blue Lagoon. Wicked Depths is ok, The Only Way We Look, quite like it. Glass hearts ok. Basically, probably ace if you are a 16 year posh school girl and into thinking you are a bit 'edgy', but from the warm comfort of your home. Not quite what I was hoping for.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://bagraiders.com/&quot;&gt;Bag Raiders&lt;/a&gt;, I can't but help, thanks to word association, call them Bag Handlers. The LightsGoBlue equivalent of 'edgy' electronica? I can imagine it playing in the background of Home and Away or Neighbours if it hasn't already.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.myspace.com/thewoodensky&quot;&gt;The Wooden Sky&lt;/a&gt;. Oslo: nice, the definite highlight and like a mellow Johnny Cash, although it is all pretty listenable actually. Not my normal cup of tea, and very &quot;background music-ey&quot;, but there's something about them.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>The challenge: get back in the saddle</title>
   <link href="http://atomicules.co.uk/2011/02/04/the-challenge-get-back-in-the-saddle.html"/>
   <updated>2011-02-04T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/04/the-challenge-get-back-in-the-saddle</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://alancolville.org/2011/02/in-the-saddle/&quot;&gt;&#187; The challenge: get back in the saddle&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Makes for scary reading. I don't know if I agree with the hi-vis and
helmet sentiments though. I certainly wear them, but as Alan writes it
isn't going to stop you getting hit.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://twitter.com/#!/atomicules/status/29812717304946688&quot;&gt;I had a scare last
week&lt;/a&gt; on a
roundabout. I have a hi-viz vest over my jacket and a hi-viz vest over
my rucksack (so I'm visible from all around). I have a bright front
light I use for seeing by and another little flasher for (hopefully)
being seen by. I have a rear light on my bike and a flashing light on
my rucksack. Also, since I've got winter tyres on at the moment they
have a reflective stripe all the way around them. Still this did not
stop a car colliding with me. It's a sad fact, but it doesn't matter
how visible you are, some drivers are just not looking for you
full-stop.&lt;/p&gt;

&lt;p&gt;However, all that said, and I'm sure Alan would agree, for the most
part it's pretty safe on the roads. For every horror story like Alan's
there are thousands of journeys done each day without incident (and
probably without helmets and hi-viz too). The only way it's going to
get safer is if more people get on their bikes.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Genre-lisations</title>
   <link href="http://atomicules.co.uk/2011/02/04/genre-lisations.html"/>
   <updated>2011-02-04T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/04/genre-lisations</id>
   <content type="html">
		
				 &lt;p&gt;Or subtitled &quot;Oh! So that's what Dubstep is, then.&quot;&lt;/p&gt;

&lt;p&gt;I should come clean: Although my last.fm profile says I like Annie Mac (which I do) I haven't regularly listened to her radio show for about seven years when it was on a Thursday evening (or something like that). It just doesn't fit in with home life. I do however listen to the minimix podcasts all the time and the Annie Mac Presents albums get some serious repeat listens. But otherwise I'm very much &lt;em&gt;not&lt;/em&gt; down with the kids.&lt;/p&gt;

&lt;p&gt;And so it was that one weekend I was making my way through a list of possibly interesting music (mainly collated from TLOBF) on Spotify, most of it being rubbish or not on there, and I got to Pariah and the Safehouses EP. It sounded ok-ish from a quick listen (it can be difficult to gauge with a background of prattle about horses, ponies, pandas and unicorns) so I saved that for a proper listen on Monday at work: Crossed out is good. So is Prism. Definite highlights. The last song is just unnerving noise.&lt;/p&gt;

&lt;p&gt;Having a bit of a search for Pariah I found the &lt;a href=&quot;http://www.guardian.co.uk/music/2010/aug/18/new-band-pariah&quot;&gt;Guardian New Band of the Day entry&lt;/a&gt; (which means I'm at least four months behind the times already) and learnt that Pariah is Dubstep. I'd wondered for quite a while exactly what counted as Dubstep (there is no handy genre card to accompany the Annie Mac presents albums like there is for flavours of chocolates in box of Quality Street). I guess I could have searched sooner and found this &lt;a href=&quot;http://en.wikipedia.org/wiki/Dubstep&quot;&gt;massive entry on Wikipedia&lt;/a&gt; and also discovered there is even an &lt;a href=&quot;http://www.dubstepforum.com/&quot;&gt;entire forum&lt;/a&gt; dedicated to the genre.&lt;/p&gt;

&lt;p&gt;I apply my genre's with a wide brush stroke:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Indie&lt;/li&gt;
&lt;li&gt;Alternative (And for my purposes I could probably combine this with the above as per Rock/Metal, etc below)&lt;/li&gt;
&lt;li&gt;Hip-Hop&lt;/li&gt;
&lt;li&gt;Rock/Metal&lt;/li&gt;
&lt;li&gt;Punk/Ska&lt;/li&gt;
&lt;li&gt;Electronica/Dance&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;So, of course, Pariah has been filed away under Electronica/Dance and I see no reason to complicate things further.&lt;/p&gt;

&lt;p&gt;Anyway, apparently &lt;a href=&quot;http://plixi.com/p/73371220&quot;&gt;Dub Step is already dead&lt;/a&gt;, but I doubt it really is. &lt;a href=&quot;http://www.guardian.co.uk/music/2011/jan/16/sam-leith-death-of-rock&quot;&gt;Neither is Rock&lt;/a&gt; for that matter, it - like any other genre of music - has just evolved a bit and got a hip new name for a new genre-ation.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Post to Tumblr from Flickr</title>
   <link href="http://atomicules.co.uk/2011/02/01/post-to-tumblr-from-flickr.html"/>
   <updated>2011-02-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/02/01/post-to-tumblr-from-flickr</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/services/apps/72157625191762762/&quot;&gt;&#187; Post to Tumblr from Flickr&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					This looks fab. Going to give this a whirl soon seeing as how I finally got some films processed from last year. (Posting via email as looks like Tumblr's finally been blocked)
				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Cycling Sucks</title>
   <link href="http://atomicules.co.uk/2011/01/24/cycling-sucks.html"/>
   <updated>2011-01-24T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/24/cycling-sucks</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/8sFQM9zXztM?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>TeuxDeux</title>
   <link href="http://atomicules.co.uk/2011/01/22/teuxdeux.html"/>
   <updated>2011-01-22T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/22/teuxdeux</id>
   <content type="html">
		
				 &lt;p&gt;The sheer number of todo and task management applications is evidence that no one has got this right yet. Well, that, and there is no consensus on the right way to do things. Even I can't make my mind up and I think the same is true for anyone that even briefly steps on the road to &lt;a href=&quot;http://en.wikipedia.org/wiki/Getting_Things_Done&quot;&gt;Getting Things Done&lt;/a&gt;: basically you will ultimately spend more time reviewing, researching, trialling and swopping between tools that 'help' you get things done, that actually, you know, getting things done.&lt;/p&gt;

&lt;p&gt;Anyone with a problem with procrastination (ugh, work!) will have been in the same boat: the oppurtunity to spend an &quot;unlimited amount of time procrastinating under the excuse of investigating the best way to stop procrastinating and tackle the tasks at hand&quot; is just too inviting.&lt;/p&gt;

&lt;p&gt;One thing I have figured out is that, for me, simpler is better. So for managing tasks a simple list is going to be much more effective than a full blown task/project management app like &lt;a href=&quot;http://culturedcode.com/things/&quot;&gt;Things&lt;/a&gt; or &lt;a href=&quot;http://www.omnigroup.com/products/omnifocus/&quot;&gt;Omnifocus&lt;/a&gt;. For the past two years I've been using &lt;a href=&quot;http://mail.google.com/tasks&quot;&gt;Gmail Tasks&lt;/a&gt; because I thought it was simple enough and it had some good features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Due dates&lt;/li&gt;
&lt;li&gt;Note fields (not often used, but sometimes handy)&lt;/li&gt;
&lt;li&gt;Indenting&lt;/li&gt;
&lt;li&gt;Multiple lists (I.e. great for shopping and wish lists as well)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;plus tasks could be created from (and linked to) emails and most importantly it was fairly cross platform and portable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Web app&lt;/li&gt;
&lt;li&gt;Mobile web app&lt;/li&gt;
&lt;li&gt;Third party iOS client with offline access, &lt;a href=&quot;http://www.geetasks.com/&quot;&gt;GeeTasks&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;(I work cross platform all the time, so my Holy Grail of a task / ToDo app is the above plus a desktop app all staying in sync. No one in the world does this yet for some unfathomable reason; proving there is yet more room in the market).&lt;/p&gt;

&lt;p&gt;However, it turns out it wasn't simple enough. Indenting tasks ultimately lead to me creating separate lists. Separate lists lead to me trying to contextualise (@home, @work, @phone, etc) my tasks. And all this really did was hide from me what needed doing. When I was using the GeeTasks iPhone app this wasn't so bad as it gives you a visual indication (badge and counts on the lists) of tasks that need completing. But ever since I lost my iPod Touch to the kids and have just been using the web app my tasks have just become hidden in lists.&lt;/p&gt;

&lt;p&gt;I'd completely forgotten about &lt;a href=&quot;http;//www.teauxdeux.com&quot;&gt;TeuxDeux&lt;/a&gt; which I had a play with over a year ago. I gave up at the time as I didn't think you could edit tasks (and I'm ace at typos) - turns our you always could but it was an undocumented feature. If only I'd known, I probably would have stuck with it!&lt;/p&gt;

&lt;p&gt;I've gone back to TeuxDeux because it's very visual; there is no missing what needs to be done today and if a task isn't completed it automatically carries over. Also:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is very simple, there is no chance (and hopefully won't ever be) of me using too much functionality and adding contexts, etc and burying away tasks.&lt;/li&gt;
&lt;li&gt;I can live without the note field (tasks just have a name, that's it in TeuxDeux, if I need to make notes somewhere I can use Simplenote).&lt;/li&gt;
&lt;li&gt;It's independent of any other account I have (a 'problem' I had with Gmail Tasks was which of my Gmail accounts should I tie tasks to?).&lt;/li&gt;
&lt;li&gt;I can use the Someday columns as basic lists (wishlists, etc).&lt;/li&gt;
&lt;li&gt;There is an iPhone app.&lt;/li&gt;
&lt;li&gt;A print layout. Unfortunately this seems to be a bit knackered, at least from Chrome, but this is potentially a huge feature for me when I'm at home and can't get near the computer or iPod.&lt;/li&gt;
&lt;li&gt;It is a work of art.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I'm also going to start mixing my work and personal tasks in there, because with such a simple input field I have no worries about including sensitive info (no comments, notes, attachments or linked emails, etc). Using two separate tools (an intranet based tool for work tasks) has been more annoying than I realised.&lt;/p&gt;

&lt;p&gt;Strictly speaking it isn't really any nearer my Holy Grail of a ToDo app. There is no desktop app, although apparently an Adobe Air (yuck!) app is in the works (mind you, being on a PPC Mac I'd likely be out of luck either way). However, since TeuxDeux isn't as aggressive as Gmail about re-logging in, it does work better as a pseudo desktop app using something like Fluid.app, Chrome applications, etc. At home I'm trying the approach of &lt;a href=&quot;http://www.swiss-miss.com/2009/12/teuxdeux.html&quot;&gt;setting TeuxDeux as my homepage&lt;/a&gt; which seems remarkably simple and clever, but I'd never thought of it before. I would do the same at work if it wasn't for the stupid proxy server authentication.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Debugging XSLT files for Webkit</title>
   <link href="http://atomicules.co.uk/2011/01/22/debugging-xslt-files-for-webkit.html"/>
   <updated>2011-01-22T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/22/debugging-xslt-files-for-webkit</id>
   <content type="html">
		
				 &lt;p&gt;Annoyingly Webkit browsers give &lt;a href=&quot;https://bugs.webkit.org/show_bug.cgi?id=15751&quot;&gt;bugger&lt;/a&gt; &lt;a href=&quot;https://bugs.webkit.org/show_bug.cgi?id=5446&quot;&gt;all&lt;/a&gt; feedback if there are XSLT errors. This was making it very difficult for me to track down an error in a XSL file because the same file was working fine elsewhere (Firefox, Opera, IE), but just resulting in a blank page in Webkit. However, after a bit of reading and re-reading about how &lt;a href=&quot;http://webkit.org/projects/xslt/index.html&quot;&gt;Webkit uses libxslt&lt;/a&gt; I finally clicked through to the &lt;a href=&quot;http://xmlsoft.org/XSLT/&quot;&gt;libxslt&lt;/a&gt; page itself and found &lt;a href=&quot;http://xsldbg.sourceforge.net/&quot;&gt;xsldbg&lt;/a&gt;.  It is &lt;a href=&quot;http://xsldbg.sourceforge.net/#Testing&quot;&gt;easy to use&lt;/a&gt;, all you do is keep typing &quot;continue&quot; and it will show you the error(s) in the file. A very handy tool if you are struggling with Webkit XSLT mysteries.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>An Update on the Light</title>
   <link href="http://atomicules.co.uk/2011/01/22/an-update-on-the-light.html"/>
   <updated>2011-01-22T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/22/an-update-on-the-light</id>
   <content type="html">
		
				 &lt;p&gt;The only negatives I've found with &lt;a href=&quot;http://atomicules.co.uk/2010/11/06/busch-muller-ixon-iq.html&quot;&gt;this light&lt;/a&gt; are the clear plastic window over the led indicator light and the plastic latch used to hold the case shut.&lt;/p&gt;

&lt;p&gt;Arguably I've abused my light and it's been used as a torch for a fair bit over the winter whilst shovelling snow and ice in the dark, which meant, inevitably, dropping the damn thing a few times.&lt;/p&gt;

&lt;p&gt;I lost the plastic cover somewhere in a load of snow in the dark so have just taped over the hole to keep in water proof (I don't need the led indicator, I can tell what setting I've got it on).&lt;/p&gt;

&lt;p&gt;And also, probably related to the number of drops it has had, the plastic latch that keeps the battery compartment shut broke off. This is much more annoying as it now means I have to tape the light shut every day until I can figure out if I can mend it (since I need to take the batteries out to charge them - a good argument for getting the charger you can plug straight into the light). The casing is also slightly sprung so keeping it tightly closed is tricky and if the casing opens slight the batteries can come out of contact resulting in no light (Aaargh!).&lt;/p&gt;

&lt;p&gt;It is still a good light. And the drops and impacts haven't stopped the light itself from working and I still struggle to tell whether a car is coming up behind me, or whether it is just my light ;-).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Wide Boy</title>
   <link href="http://atomicules.co.uk/2011/01/20/wide-boy.html"/>
   <updated>2011-01-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/20/wide-boy</id>
   <content type="html">
		
				 &lt;p&gt;Although the current mild weather is lulling me into a false sense of security (I'm sure more snow will be here soon), I can't but help turn thoughts towards spring and the day I can take off my winter tyres.&lt;/p&gt;

&lt;p&gt;However, I won't be racing back to skinny slicks. Although the 23mm tyres I had on last summer and autumn were nippy on the road (I &lt;a href=&quot;http://twitter.com/#!/atomicules/status/21042728881&quot;&gt;overtook someone on a Boardman Team bike&lt;/a&gt;), riding my wider (35c) winter tyres has taught me a valuable lesson: wider tyres = less broken spokes.&lt;/p&gt;

&lt;p&gt;I have to face facts, and that is, the first/last five miles of my commute are on terrible roads and riding rock hard, thin tyres just excerbates the broken spoke issue. And quite frankly I'm fed up of fixing them. It's no good getting home five minutes quicker if I'm going to have to spend half-an-hour to an hour replacing broken spokes.&lt;/p&gt;

&lt;p&gt;So I'm looking for something in the 30c to 32c size range. Not too wide, not too skinny (I've had broken spokes with 28s before so I consider them too skinny).&lt;/p&gt;

&lt;p&gt;And to try to keep the options down I'm going to stick to Schwalbe:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.schwalbe.co.uk/c2-1087-schwalbe-tires-cx-comp.html&quot;&gt;CX Comp&lt;/a&gt;,  30c, 430g.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.schwalbe.co.uk/c2-1073-schwalbe-tires-marathon.html&quot;&gt;Marathon&lt;/a&gt;, 32c, 580g.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.schwalbe.co.uk/c2-1071-schwalbe-tires-marathon-plus.html&quot;&gt;Marathon Plus&lt;/a&gt;, 32c, 800g.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.schwalbe.co.uk/c2-1070-schwalbe-tires-marathon-racer.html&quot;&gt;Marathon Racer&lt;/a&gt;, 30c, 325g.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Realistically I'll probably go with the CX Comp as they are cheap and fairly lightweight, although I'd really like to get the Marathon Racer.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>We Had Lunch Sandwiches Chocolate Raisins A</title>
   <link href="http://atomicules.co.uk/2011/01/20/we-had-lunch-sandwiches-chocolate-raisins-a.html"/>
   <updated>2011-01-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/20/we-had-lunch-sandwiches-chocolate-raisins-a</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;We had lunch: sandwiches, chocolate, raisins, a banana and some hard candies, but we had forgotten to bring anything to drink and the lunch exacerbated our thirst.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;em&gt;Ansel Adams, Rock and Surf.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;My very darling wife* got me Ansel Adam's Examples - The making of 40 Photographs for Christmas. She also got me The Camera, but so far Examples is the one I've really taken a shine to.&lt;/p&gt;

&lt;p&gt;Stories are probably what I like most about photography. I couldn't really care less about the technical details, but I just love to hear the story behind a photo and although I might have picked a rather inane quote on purpose just to make a point, when flicking through the book this is the one that I remembered the most. It just makes it all the more real and enjoyable for me.&lt;/p&gt;

&lt;p&gt;One of the most memorable and favourite photos on Flickr for me is &lt;a href=&quot;http://www.flickr.com/photos/neetss/4668407077/in/faves-i-5-m/&quot;&gt;this by Anita Jean&lt;/a&gt; just because I love the story and it has just stuck in my head ever since.&lt;/p&gt;

&lt;p&gt;I am also pleased to find out from reading Examples that I'm standing in good stead by also not having a clue when half my photos were taken. Who needs notes.&lt;/p&gt;

&lt;p&gt;* I'm not after anything, I just &lt;a href=&quot;http://twitter.com/atomicules/status/20894684184322048&quot;&gt;don't want her to get any more 'pets'&lt;/a&gt;.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>As Nutty As The Smell Of A Freshly Oiled Chain</title>
   <link href="http://atomicules.co.uk/2011/01/20/as-nutty-as-the-smell-of-a-freshly-oiled-chain.html"/>
   <updated>2011-01-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/20/as-nutty-as-the-smell-of-a-freshly-oiled-chain</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;As nutty as the smell of a freshly oiled chain&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;em&gt;Me&lt;/em&gt;. (I've run out of bike oil. The next nearest thing I have to hand: Sesame Oil.)&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Announcing Green Shoes Website!</title>
   <link href="http://atomicules.co.uk/2011/01/20/announcing-green-shoes-website.html"/>
   <updated>2011-01-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/20/announcing-green-shoes-website</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://green.shoesrb.com/&quot;&gt;&#187; Announcing Green Shoes Website!&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://tumblr.zacharyscott.net/post/2830770929/announcing-green-shoes-website&quot; class=&quot;tumblr_blog&quot;&gt;zzak&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;I'm very pleased to announce that &lt;a title=&quot;green_shoes sourcecode on github&quot; href=&quot;http://github.com/ashbb/green_shoes&quot;&gt;green_shoes&lt;/a&gt; finally has a home on the web! Designed to provide an overview of the project and direct people to find out more.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;Green Shoes&quot; href=&quot;http://green.shoesrb.com/&quot;&gt;&lt;img height=&quot;76&quot; width=&quot;315&quot; alt=&quot;green_shoes logo&quot; src=&quot;https://github.com/ashbb/green_shoes/raw/master/static/gshoes-heading-icon.png&quot;/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;I really need to find time to give Green Shoes a whirl. &lt;a title=&quot;Team Shoes: Satoshi Asakawa&quot; href=&quot;http://twitter.com/ashbb&quot;&gt;Ashbb&lt;/a&gt; has done some great work. I'm hopeful that since it is pure Ruby it should be possible to install/build on OSX PPC as well - I never got Shoes 3 to build (some of the work between Shoes 2 and 3, yep, but the final Shoes 3 release, nope)&lt;/p&gt;


				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Retarded Moment Of The Day Goes To Wondering Why</title>
   <link href="http://atomicules.co.uk/2011/01/19/retarded-moment-of-the-day-goes-to-wondering-why.html"/>
   <updated>2011-01-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/19/retarded-moment-of-the-day-goes-to-wondering-why</id>
   <content type="html">
		
				
				&lt;a href=&quot;https://github.com/atomicules/Pinboard-Tools-for-Google-Chrome&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_lf9u1sfalL1qzcagp.jpg&quot; alt=&quot;Retarded Moment Of The Day Goes To Wondering Why&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Retarded moment of the day goes to: Wondering why I couldn't get &lt;a href=&quot;http://code.google.com/chrome/extensions/content_scripts.html&quot;&gt;content scripts&lt;/a&gt; to load when trying to pass page content to an extension. I tried &lt;a href=&quot;http://code.google.com/chrome/extensions/messaging.html&quot;&gt;all&lt;/a&gt; &lt;a href=&quot;http://groups.google.com/group/chromium-extensions/browse_thread/thread/eab847f0a32ec25c/61ef3f54ca14c98c?pli=1&quot;&gt;kinds&lt;/a&gt; &lt;a href=&quot;http://stackoverflow.com/questions/1964225/accessing-current-tab-dom-object-from-popup-html&quot;&gt;of&lt;/a&gt; &lt;a href=&quot;http://stackoverflow.com/questions/2914973/how-to-grab-data-from-webpage-in-chrome-and-output-into-chrome-extension-popup&quot;&gt;things&lt;/a&gt;. Reloaded the extension a hundred times. Then it finally dawned on me: the content script is for the page (duh!) not the extension. Reloaded the tab and hey presto. &amp;lt;Incredibly ashamed face&amp;gt;.&lt;/p&gt;

&lt;p&gt;Anyway, since moving to &lt;a href=&quot;http://pinboard.in&quot;&gt;Pinboard&lt;/a&gt; I've been looking for a decent &lt;a href=&quot;http://pinboard.in/resources/#chrome&quot;&gt;Chrome extension&lt;/a&gt;, but most of them just seem to be glorified &lt;a href=&quot;http://pinboard.in/howto/#saving&quot;&gt;bookmarklets&lt;/a&gt; (&lt;a href=&quot;https://chrome.google.com/extensions/detail/nfccdohlgojifgadgnbjoejdfaalaehn&quot;&gt;an exception&lt;/a&gt;, but I'm not interested in searching). I did however notice that &lt;a href=&quot;https://github.com/jonnablaze/Pinboard-Tools-for-Google-Chrome&quot;&gt;one of them is on Github&lt;/a&gt; which just made it all too inviting to click 'Fork' and start playing.&lt;/p&gt;

&lt;p&gt;So, &lt;a href=&quot;https://github.com/atomicules/Pinboard-Tools-for-Google-Chrome&quot;&gt;I've started doing some little tweaks&lt;/a&gt; to load the bookmarking window in the extension popup, rather than have it opening in a separate window (there are &lt;a href=&quot;https://github.com/atomicules/Pinboard-Tools-for-Google-Chrome/commit/7222e1ebc49773f56fa7b0230835636ef949b74e&quot;&gt;some downsides to this approach&lt;/a&gt;, but this is how I like it) and it also pulls in selected text to the description field. Next on the list is fixing the Read Later option similarly so it doesn't open a new window.&lt;/p&gt;

&lt;p&gt;As an aside, before I got into tinkering with code, but when I had just started using and being interested in open source software, I used to get a wee bit upset at 'forking'. It would annoy me that rather then &quot;get along&quot; and contribute to one project, people would fork and you'd be stuck choosing between two (or more) options until one developed more than the other and became the obvious choice (&lt;a href=&quot;http://wiki.inkscape.org/wiki/index.php/FAQ#How_did_Inkscape_start.3F&quot;&gt;Inkscape and Sodipodi&lt;/a&gt; spring to mind). However, now I've got a bit more of a clue and what's more the advent of Git and (especially) Github really do make forking a feature; of all those Chrome extensions the easiest one to start modifying was the one on Github. And the &lt;a href=&quot;https://github.com/jonnablaze/Pinboard-Tools-for-Google-Chrome/network&quot;&gt;network&lt;/a&gt; ensures that even if my changes never get pulled back it's still linked in some way and findable by others.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Have Just A Little Bit Of A Crush On Zooey</title>
   <link href="http://atomicules.co.uk/2011/01/19/i-have-just-a-little-bit-of-a-crush-on-zooey.html"/>
   <updated>2011-01-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/19/i-have-just-a-little-bit-of-a-crush-on-zooey</id>
   <content type="html">
		
				
				
				&lt;iframe src=&quot;http://player.vimeo.com/video/18915786?portrait=0&amp;color=01AAEA&quot; width=&quot;500&quot; height=&quot;375&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;I have just a &lt;em&gt;little bit&lt;/em&gt; of a crush on Zooey.&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Cycle: A List of Biking Dos and Don'ts</title>
   <link href="http://atomicules.co.uk/2011/01/12/cycle-a-list-of-biking-dos-and-donts.html"/>
   <updated>2011-01-12T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/12/cycle-a-list-of-biking-dos-and-donts</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blogs.phoenixnewtimes.com/jackalope/2011/01/cycle_etiquette_101.php&quot;&gt;&#187; Cycle: A List of Biking Dos and Don'ts&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Well, let's just say that over the past month with all the snow and cold weather I completely broke rule 3. And it would have been mad otherwise!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>CoffeeScript on Windows</title>
   <link href="http://atomicules.co.uk/2011/01/10/coffeescript-on-windows.html"/>
   <updated>2011-01-10T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/10/coffeescript-on-windows</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.mnasyrov.com/coffeescript-on-windows-how-to-roast-coffee&quot;&gt;&#187; CoffeeScript on Windows&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I found this post by Mikhail Nasyrov from &lt;a href=&quot;http://stackoverflow.com/questions/3175561/coffeescript-on-windows/4021046#4021046&quot;&gt;an answer on Stackoverflow&lt;/a&gt;. It includes a clever little batch file to let you call the &lt;code&gt;coffee&lt;/code&gt; command from directories other than the bin directory using the normal Windows path syntax (as opposed to the cygwin syntax). This is all very clever, but still means you must pass the path of the file you wish to compile, etc, in the cygwin format.&lt;/p&gt;

&lt;p&gt;I thought I'd reverse this idea. I have a much simpler coffee.bat file which contains:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;&lt;span class=&quot;p&quot;&gt;@&lt;/span&gt;node &lt;span class=&quot;n&quot;&gt;/cygdrive/D/Users/me/code/github/coffee-script/bin/coffee&lt;/span&gt; %*
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;this way, if I add the coffee.bat directory to my Windows PATH, all I have to do is call&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;coffee -c filetocompile.coffee
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;from the directory containing the file I'm working on and it'll compile into the same place. Which also means I can do it straight from vim:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;:!&lt;/span&gt;coffee &lt;span class=&quot;p&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;c&lt;/span&gt; %
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;For single files, this works great for me. For anything more complicated Mikhail Nasyrov has some solutions towards the end of his blog post.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EDIT 11-Jan-2011:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This simple batch file works a treat with the &lt;a href=&quot;https://github.com/kchmck/vim-coffee-script&quot;&gt;vim-coffee-script&lt;/a&gt; plugin that can compile the current file on save. Ace!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>52 cameras in 52 weeks</title>
   <link href="http://atomicules.co.uk/2011/01/07/52-cameras-in-52-weeks.html"/>
   <updated>2011-01-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/07/52-cameras-in-52-weeks</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/photos/tony_kemplen/collections/72157623113584240/&quot;&gt;&#187; 52 cameras in 52 weeks&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Oh wow! Something to aspire to.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>In A World Of So Many Places There Are More Bloody</title>
   <link href="http://atomicules.co.uk/2011/01/03/in-a-world-of-so-many-places-there-are-more-bloody.html"/>
   <updated>2011-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/03/in-a-world-of-so-many-places-there-are-more-bloody</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;In a world of so many places there are more bloody wars than there are bloody races&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;- &lt;em&gt;A &lt;a href=&quot;http://blockheadskateboards.com/&quot;&gt;Blockhead&lt;/a&gt; Hardtimes T-Shirt that I owned many years ago&lt;/em&gt;. (So I think I recall it correctly. I don't know why this has popped into my head recently).&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>A Year in Review... Cycling</title>
   <link href="http://atomicules.co.uk/2011/01/03/a-year-in-review-cycling.html"/>
   <updated>2011-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/03/a-year-in-review-cycling</id>
   <content type="html">
		
				 &lt;p&gt;This is the year when cycling changed from being just how I get to work to being more of a lifestyle; basically because I'm spending anywhere between two and a half to four hours (those goddamn headwinds!) in the saddle each week day. So it is still how I get to work - I rarely cycle in addition to my commute - but 190 miles a week means I clocked up over  7500km last year. And seeing as how we only moved house seven months into the year (changing from a short commute to the long one), this year my total mileage will be even more. Crazy.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>A Year in Review... Code</title>
   <link href="http://atomicules.co.uk/2011/01/03/a-year-in-review-code.html"/>
   <updated>2011-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/03/a-year-in-review-code</id>
   <content type="html">
		
				 &lt;p&gt;I started off the year quite involved with &lt;a href=&quot;http://blog.shoesrb.com/&quot;&gt;Shoes&lt;/a&gt;, but over the year I've become less involved. This is due both to changes at home and changes at work. Coding in general at home is just impossible. I just can't get on the computer for any length of time - even writing this tricky and involves stealing the iPod Touch from my youngest who plays Sonic the Hedgehog obsessively. I can be stepping towards the computer and get called away to sew some buttons on a cardigan, or something else equally unpredictable. I leave earlier from home and get back later from work because of moving further away. So there is just no computing time at home.&lt;/p&gt;

&lt;p&gt;At work, in early 2010, I had a little side project going that was a Shoes app. So I managed to spend quite a bit of time (almost) legitimately tinkering with Shoes. But that wound up earlier this year, plus my job role changed and I lost a lot of &quot;free&quot; time. So not a lot of Shoes anymore, but Shoes is in very capable hands, far more capable than mine - I couldn't keep up with the pace of development and have never been able to get Shoes 3 to build on OSX PPC (and that's another thing, lagging behind on the technology front doesn't help: Windows XP at work and OSX PPC at home).&lt;/p&gt;

&lt;p&gt;The best I managed outside of work was two little apps: &lt;a href=&quot;http://atomicules.co.uk/2010/03/30/shoeset.html&quot;&gt;Shoeset&lt;/a&gt; and &lt;a href=&quot;http://atomicules.co.uk/2010/05/26/shoefiti-i-sat-on-this-for-awhile-because-i-was.html&quot;&gt;Shoefiti&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have still managed to do a fair bit of coding at work (the only problem of course is it's difficult to blog about it since it's at work). I just can't help myself from tinkering. Considering the size of the organisation, I thought for a long time that I couldn't be the only geek and there must be others like me that, for example, couldn't stand Internet Explorer and would write userscripts to fix intranet applications for Chrome and Firefox, but now I'm starting to think I am a bit unique (and not necessarily in a good way; it's not that I'm more clever, rather that I can't just &quot;do as I'm told&quot; - I think it's just a sign that ultimately I need to work for myself if I am to ever do anything truly challenging and interesting). So this year has seen...&lt;/p&gt;

&lt;p&gt;a lot of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JavaScript (custom &quot;plugins&quot; for web pages, user scripts and &lt;a href=&quot;http://atomicules.co.uk/2010/09/29/some-notes-on-developing-extensions-for-chrome-vs.html&quot;&gt;extensions for Chrome and Firefox&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;quite a bit of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java (An XMPP Bot using HTMLUnit to webscrape)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;and smidgens of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;XSLT (with some use of jQuery as a faster alternative to a pure XSLT approach to combining XML data sources)&lt;/li&gt;
&lt;li&gt;Ruby (with Mechanize and Ruby-Graphviz to web-scrape - &quot;oh for an API&quot; is a continuing theme at work - and then draw a organisation chart)&lt;/li&gt;
&lt;li&gt;HTML and CSS&lt;/li&gt;
&lt;li&gt;and SQL.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Which isn't entirely bad for someone who doesn't work in the IT function (I have tried: they won't have me!). Right towards the end of the year, I've started getting into the R Language again, since I can (and most certainly will) use it as part of my new role, over the approved and recommended apps like Minitab and Excel.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>A Year in Review... Art</title>
   <link href="http://atomicules.co.uk/2011/01/03/a-year-in-review-art.html"/>
   <updated>2011-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2011/01/03/a-year-in-review-art</id>
   <content type="html">
		
				 &lt;h2&gt;Photography&lt;/h2&gt;

&lt;p&gt;It's been a bad year. Due to reasons (holiday, moving house, increased cost of keeping my bike running) that don't really make any sense I pretty much had to put a hold on my photography for a year. So I've a month to go until I get back into it by sending a backlog of film off. One (very) shallow &quot;achievement&quot; would be getting &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4586247655/&quot;&gt;this&lt;/a&gt; to the front page of Explore during the spring 'roidweek, one of the few bits of photography I've done this year.&lt;/p&gt;

&lt;h2&gt;Music&lt;/h2&gt;

&lt;p&gt;As to music, as previously mentioned Last.fm seems to have stopped scrobbling for me, but it's still the best indication I have:&lt;/p&gt;

&lt;h3&gt;Top Ten Albums&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Ellie Goulding – Lights&lt;/li&gt;
&lt;li&gt;Two Door Cinema Club – Tourist History&lt;/li&gt;
&lt;li&gt;Audio Bullys – Higher Than The Eiffel&lt;/li&gt;
&lt;li&gt;Florence + the Machine – Lungs&lt;/li&gt;
&lt;li&gt;She &amp;amp; Him – Volume Two&lt;/li&gt;
&lt;li&gt;Freestylers – Pressure Point&lt;/li&gt;
&lt;li&gt;Mumford &amp;amp; Sons – Sigh No More&lt;/li&gt;
&lt;li&gt;Ou Est Le Swimming Pool – The Golden Year&lt;/li&gt;
&lt;li&gt;Freestylers – Adventures In Freestyle&lt;/li&gt;
&lt;li&gt;Shit Robot – From the Cradle to the Rave&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;I've not listened to Ellie and Mumford &amp;amp; Sons for the past few months, but must have clocked up some listens earlier last year (and data will be skewed towards the start of the year due to lack of recent scrobbles). I mostly listen to albums, so artists should be similar:&lt;/p&gt;

&lt;h3&gt;Top Ten Artists&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Freestylers&lt;/li&gt;
&lt;li&gt;Ellie Goulding&lt;/li&gt;
&lt;li&gt;Two Door Cinema Club&lt;/li&gt;
&lt;li&gt;Audio Bullys&lt;/li&gt;
&lt;li&gt;Catatonia&lt;/li&gt;
&lt;li&gt;Florence + the Machine&lt;/li&gt;
&lt;li&gt;She &amp;amp; Him&lt;/li&gt;
&lt;li&gt;Mumford &amp;amp; Sons&lt;/li&gt;
&lt;li&gt;Ou Est Le Swimming Pool&lt;/li&gt;
&lt;li&gt;La Roux&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Hey, look at that, Freestylers at the top again. That is probably due to having four or five albums on my iPod all the time so in shuffle, especially of highly rated tracks, Freestylers get a lot of plays. I predict my ears need a change and I don't think they'll be at the top next year.&lt;/p&gt;

&lt;h2&gt;Literature&lt;/h2&gt;

&lt;p&gt;Reading. I need to read some more books. I read &lt;a href=&quot;http://atomicules.co.uk/2010/01/21/kindle-books.html&quot;&gt;one thing via the Kindle app&lt;/a&gt; right at the start of the year. Depressing.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>The Last Roll Of Kodachrome I Didnt Realise</title>
   <link href="http://atomicules.co.uk/2010/12/30/the-last-roll-of-kodachrome-i-didnt-realise.html"/>
   <updated>2010-12-30T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/30/the-last-roll-of-kodachrome-i-didnt-realise</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.dwaynesphoto.com/&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_le91csJDFt1qzcagpo1_r1_500.jpg&quot; alt=&quot;The Last Roll Of Kodachrome I Didnt Realise&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://www.dwaynesphoto.com/&quot;&gt;The Last Roll of Kodachrome&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I didn't realise you could get a t-shirt!&lt;/p&gt;

&lt;p&gt;I did &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157623338750353/&quot;&gt;my one and only roll of Kodachrome&lt;/a&gt; back in 2009, giving myself plenty of time before this years deadline. Perhaps I could have left things a bit later, but then again some guy did get in a &lt;a href=&quot;http://www.nytimes.com/2010/12/30/us/30film.html?_r=3&amp;amp;hp&quot;&gt;last minute order of 1,580 rolls&lt;/a&gt; of Kodachrome, so maybe I was wise to do mine earlier afterall.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Hickensian Magazine Boneshaker 3 Jpg Cool</title>
   <link href="http://atomicules.co.uk/2010/12/30/hickensian-magazine-boneshaker-3-jpg-cool.html"/>
   <updated>2010-12-30T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/30/hickensian-magazine-boneshaker-3-jpg-cool</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.velorution.biz/shop/boneshaker-magazine-1/&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_le7lv8f8m11qz4h13o1_500.jpg&quot; alt=&quot;Hickensian Magazine Boneshaker 3 Jpg Cool&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://hickensian.com/post/2517121267/magazine-boneshaker-3-jpg&quot; class=&quot;tumblr_blog&quot;&gt;hickensian&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;Magazine - Boneshaker 3.jpg&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;Cool, not heard of &lt;a href=&quot;http://www.boneshakermag.com/&quot;&gt;Boneshaker Magazine&lt;/a&gt; before. I'd love to get something like this. It looks beautiful. &lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>You just can't carry a car through snow</title>
   <link href="http://atomicules.co.uk/2010/12/27/you-just-cant-carry-a-car-through-snow.html"/>
   <updated>2010-12-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/27/you-just-cant-carry-a-car-through-snow</id>
   <content type="html">
		
				 &lt;p&gt;Meant to write this with the last post, but as far as bike vs car vs snow goes, the bike has done well over the last few weeks. When the snow has drifted across the farm track even a 4x4 is no use. It's a tractor or nowt. Well not nowt, legs and carrying the bike has worked well. And when the car battery died because of the cold, the bike was used to get to the garage to pick up a new one. Same as getting to the local village shop when the car was out of action, it'd be a few hours walk, but cycling is not so bad.&lt;/p&gt;

&lt;p&gt;Ok, the last week before Christmas there was one day where I kindly accepted a lift from the driver of a massive 4x4 pickup truck, who strapped my bike on the back. I'd done the first five miles, but the snow was so churned up I was finding it very hard going (more walking, than cycling).&lt;/p&gt;

&lt;p&gt;But I still make that 2:1 for bike vs car.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Winter Cycling</title>
   <link href="http://atomicules.co.uk/2010/12/27/winter-cycling.html"/>
   <updated>2010-12-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/27/winter-cycling</id>
   <content type="html">
		
				 &lt;p&gt;Who knows if there will still be snow by the time I finish writing this. I don't know, I thought being off for Christmas would give me more time, not less, for getting some blog posts done.&lt;/p&gt;

&lt;p&gt;Anyway, some thoughts on winter cycling:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Taping up toe-clips&lt;/strong&gt; so you can wear boots. Your feet are going to be down a lot (also lots of getting on and off for me because of cars and narrow country lanes, made more narrow by the snow). No good having all that lovely grip from tyres only to fall over when you get off because of slippery soled trainers. Using clipless would be insanity.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Removing back brakes&lt;/strong&gt; to prevent snow build up - usually I'd say you want the back brake more (than the front) in winter. Last winter I replaced my (700c) front wheel with a mountain bike wheel so I had a bit of grip (I had slicks otherwise) and so didn't have a front brake and relied on the back and fixed gearing. However, as long as you have studded tyres (so you can use your front brake) and a fixed gear bike then you can remove your rear brake. But you'll still get snow build up at the front.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Studded Tyres&lt;/strong&gt;. &lt;a href=&quot;http://www.schwalbe.co.uk/c2-1217-schwalbe-tires-marathon-winter.html&quot;&gt;Schwalbe Marathon Winters&lt;/a&gt;. These are good tyres. Very good tyres. They are a compromise, but a good one. When the snow is deep or really churned then the tread depth is lacking and it is hard going, but on fresh snow or sheet ice they are just fantastic. And with the crazy stupid weather we have where it can go from 15cm of snow to completely thawed and back again over a few days these tyres are the best bet. On normal road surfaces they are pretty nippy once you get them up to speed. I've done over a 1000 miles on them and lost about 3 studs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Using 35c tyres on 13mm rims&lt;/strong&gt;. Well, I did say I was going to have to do it. I wouldn't recommend it. I had a rear tyre blow-out after about 270 miles, which meant a lovely 6 mile walk into work in the rain and wind. But since then, so far so good. I don't know for sure that the rim size mismatch was the cause, but I reckon it was a lot to do with it. It could have been triggered by the rear brake blocks rubbing on the tyre (since removed, see above), it could have been the insanely high winds I was leaning in to (bike wheels would have been at very odd angles and constantly switching from side to side), but a wider rim would have been more likely to keep the tyre on. So, it's a risk and that's why people don't do it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Gloves&lt;/strong&gt;. &lt;a href=&quot;http://www.blazewear.com/product_info.php?cPath=26&amp;amp;products_id=67&quot;&gt;Heated&lt;/a&gt;. I am convinced there is no point mucking &lt;a href=&quot;https://www.ironclad.com/products/uses.cqs?model_id=c14d756fa0ef9b37578f28fbbfceaf8e&quot;&gt;about&lt;/a&gt; &lt;a href=&quot;http://www.pearlizumi.com/publish/content/pi_2010/us/en/index/products/men/ride/accessories/0.-productCode-8820.html&quot;&gt;with&lt;/a&gt; &lt;a href=&quot;http://www.sealskinz.com/active-range/cycling/extra-cold-weather-cycle-gloves-with-gel&quot;&gt;anything&lt;/a&gt; &lt;a href=&quot;http://www.sealskinz.com/active-range/cycling/winter-handle-bar-mittens&quot;&gt;else&lt;/a&gt;. Unfortunately I don't have the cash (next year!) and so the best I've done is clingfilm around the fingers of my liner gloves (some PPE manual handling gloves from work) which I then wear in the cheap Thinsulate gloves I got from TK Maxx.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Tips for Winter Cycling: Alastair Humphreys</title>
   <link href="http://atomicules.co.uk/2010/12/27/tips-for-winter-cycling-alastair-humphreys.html"/>
   <updated>2010-12-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/27/tips-for-winter-cycling-alastair-humphreys</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.alastairhumphreys.com/2010/11/tips-winter-cycling/&quot;&gt;&#187; Tips for Winter Cycling: Alastair Humphreys&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://markmywords.tumblr.com/post/2070542703/tips-for-winter-cycling-alastair-humphreys&quot; class=&quot;tumblr_blog&quot;&gt;markmywords&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;This guy is barmy… but it just goes to show you can cycle all winter with the right gear.&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;Wow, at least my commute isn't that cold.&lt;/p&gt;


				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>An Instagramed</title>
   <link href="http://atomicules.co.uk/2010/12/27/an-instagramed.html"/>
   <updated>2010-12-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/27/an-instagramed</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_le2946WC4z1qdhcbyo2_500.jpg&quot; alt=&quot;An Instagramed&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;An &lt;a href=&quot;http://instagr.am/p/gAOi/&quot;&gt;Instagramed version&lt;/a&gt; of one of these.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Well, you can't scrobble tapes anyway</title>
   <link href="http://atomicules.co.uk/2010/12/26/well-you-cant-scrobble-tapes-anyway.html"/>
   <updated>2010-12-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/26/well-you-cant-scrobble-tapes-anyway</id>
   <content type="html">
		
				 &lt;p&gt;Last.fm seems to have decided to stop scrobbling anything for me, probably something to do with the knackered battery in my iPod Mini, but since the last post I've been listening to these (honest, guv):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Gold Panda - Lucky Shiner. This is much, much better on the second listen. Liking it a lot more now. The first time round I was a bit disppointed and couldn't see what the fuss was all about. But I don't think I was really paying attention. You (first track; confusingly the last track has same title but is different?!) is especially good.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Warpaint  - The Fool. Ermm..? Kind of reminds me of Throwing Muses in bits, but with daintier vocals, interestingly enough. Track 7, Baby would be nice for drifitng off to sleep to. Otherwise, not sure. Needs more listens perhaps.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Get Cape. Wear Cape. Fly - The missus likes it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Belle and Sebestian - Write About Love. Completely and utterly worth it solely for I Want the World to Stop - hey that would make a great funeral track (I should remember these songs, and put them in my will, because otherwise I'll forget; like that song from the Dropkick Murphys that I thought would make a great funeral track about 10 years ago and I can't remember which one now). Anyway, yes, sorry, great album just because of that song, but others good too.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;and reliving some old favourites:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Throwing Muses - Hunkpapa (wow Devils Roof, Dizzy) and Red Heaven (Furious!). Just great stuff. I remembered it from years ago. Reminds me of being in sixth form at school and I'd probably not listened to it in anger since about then, seeing as how it was on tape. But it is odd how I could just remember the opening to Furious, well not just remember but hear it as clear as day in my head. Good times.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pop Will Eat Itself - At Weird's Bar and Grill. From the same time in my life as Throwing Muses. I remember the first time I listened to this (many years ago) I was disappointed. PWEI definitely had a different live sound to their studio sound. More raw, rough, etc. But after aout the second listen I was hooked and god knows how many times I listened to this (I've still got it on tape). I soon preferred the live sound. This was awesome then and is still awesome now.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Hackety Hack: Merry Christmas (and a 1.0 announcement)</title>
   <link href="http://atomicules.co.uk/2010/12/26/hackety-hack-merry-christmas-and-a-1-0-announcement.html"/>
   <updated>2010-12-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/26/hackety-hack-merry-christmas-and-a-1-0-announcement</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.hackety-hack.com/post/2457961910/merry-christmas-and-a-1-0-announcement&quot;&gt;&#187; Hackety Hack: Merry Christmas (and a 1.0 announcement)&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://blog.hackety-hack.com/post/2457961910/merry-christmas-and-a-1-0-announcement&quot; class=&quot;tumblr_blog&quot;&gt;hackety&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;Merry Christmas, everyone! This year, I’ve got another present for you: Hackety Hack v1.0! You can get it on &lt;a href=&quot;http://hackety-hack.com&quot;&gt;version 2 of the Hackety Hack website&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;It’s been a long, long road since the v0.9 release last year. Many people have put in a lot of hard work to bring Hackety Hack v1.0 to fruition....&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;And there was me thinking it was hard work getting Turkey v1.0 and Goose v1.0 done in time for 3pm on Christmas Day.&lt;/p&gt;


				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Added 6 7 Million Bookmarks In The Last 24 Hours</title>
   <link href="http://atomicules.co.uk/2010/12/17/added-6-7-million-bookmarks-in-the-last-24-hours.html"/>
   <updated>2010-12-17T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/17/added-6-7-million-bookmarks-in-the-last-24-hours</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Added 6.7 million bookmarks in the last 24 hours.  That's more than in the entire preceding year&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;Goodbye Delicious, hello PinboardIN&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Wellplacedpixels Silvio Rizzis Reeder For</title>
   <link href="http://atomicules.co.uk/2010/12/03/wellplacedpixels-silvio-rizzis-reeder-for.html"/>
   <updated>2010-12-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/03/wellplacedpixels-silvio-rizzis-reeder-for</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_lcq73tQNS31qazfel.jpg&quot; alt=&quot;Wellplacedpixels Silvio Rizzis Reeder For&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://wellplacedpixels.com/post/2054364619/silvio-rizzis-reeder-for-mac&quot; class=&quot;tumblr_blog&quot;&gt;wellplacedpixels&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;Silvio Rizzi's &lt;a href=&quot;http://madeatgloria.com/brewery&quot;&gt;Reeder for Mac&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;I really could do with an Intel based Mac, I'm starting to miss out on some great looking apps.&lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Hickensian Mpls Tweedrun Jpg</title>
   <link href="http://atomicules.co.uk/2010/12/03/hickensian-mpls-tweedrun-jpg.html"/>
   <updated>2010-12-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/12/03/hickensian-mpls-tweedrun-jpg</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://1.bp.blogspot.com/_Zyw4LnjUXZA/StKtDb63ulI/AAAAAAAAAt0/a0ac9AOMcKM/s1600-h/MPLS_TweedRUN.jpg&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_lcsotxG3gJ1qz4h13o1_500.jpg&quot; alt=&quot;Hickensian Mpls Tweedrun Jpg&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://hickensian.com/post/2069687014/mpls-tweedrun-jpg&quot; class=&quot;tumblr_blog&quot;&gt;hickensian&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;[MPLS_TweedRUN.jpg]&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;&lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Best Bike Lock Ever This Is Just Ingenious Also</title>
   <link href="http://atomicules.co.uk/2010/11/26/best-bike-lock-ever-this-is-just-ingenious-also.html"/>
   <updated>2010-11-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/11/26/best-bike-lock-ever-this-is-just-ingenious-also</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/pTPFrww6zdA?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=pTPFrww6zdA&amp;amp;feature=youtu.be&quot;&gt;Best Bike Lock Ever&lt;/a&gt;. This is just ingenious. Also, see the &lt;a href=&quot;http://www.youtube.com/watch?v=kvc0A_cWUCU&amp;amp;feature=youtu.be&quot;&gt;making of video&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Via &lt;a href=&quot;http://twitter.com/bengoldacre/status/8204007457689600&quot;&gt;@bengoldacre&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Shelf theme for WordPress &amp;amp; Tumblr by Hicksdesign</title>
   <link href="http://atomicules.co.uk/2010/11/24/shelf-theme-for-wordpress-tumblr-by-hicksdesign.html"/>
   <updated>2010-11-24T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/11/24/shelf-theme-for-wordpress-tumblr-by-hicksdesign</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://hicksdesign.co.uk/journal/shelf-now-in-stock&quot;&gt;&#187; Shelf theme for WordPress &amp; Tumblr by Hicksdesign&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I love the Flickr Set documenting the development.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Vim R Plugin</title>
   <link href="http://atomicules.co.uk/2010/11/20/vim-r-plugin.html"/>
   <updated>2010-11-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/11/20/vim-r-plugin</id>
   <content type="html">
		
				 &lt;p&gt;I am really growing to love &lt;a href=&quot;http://www.r-project.org/&quot;&gt;R&lt;/a&gt;. I'd dabbled with it briefly awhile back, but owing to a change of role at work I now have cause to use it a lot more (certainly beats Minitab).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.rcommander.com/&quot;&gt;RCmdr&lt;/a&gt; is a great way of easing yourself into R as it allows you to pick up the commands and syntax. Pretty soon though, since R is basically a programming language, you are (well, if you are me) going to want to use Vim and it turns out there is excellent plugin: &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2628&quot;&gt;Vim R Plugin&lt;/a&gt; that allows you to pass the current file or selection to R (much the same way as selecting and submitting in RCmdr).&lt;/p&gt;

&lt;p&gt;When I installed it, it required &lt;a href=&quot;http://python.org/download/releases/2.7/&quot;&gt;Python 2.7&lt;/a&gt; and the corresponding &lt;a href=&quot;http://sourceforge.net/projects/pywin32/files/&quot;&gt;Pywin32&lt;/a&gt;, but I notice the latest release allows Python 3.1.&lt;/p&gt;

&lt;p&gt;There's one tiny problem that affected me when trying to send the selection or file to R. I got the following error (although the DOMAIN\username bit was my actual domain and username):&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;source(&quot;/tmp/r-plugin-DOMAIN\username/Rsource-5324-RCommander.R&quot;)
Error: '\u' is an unrecognized escape in character string starting &quot;/tmp/r-plugin-DOMAIN\u&quot;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Seems Vim R Plugin uses the results of &lt;code&gt;whoami&lt;/code&gt; to create the &lt;code&gt;VIMPLUGIN_TMPDIR&lt;/code&gt;, which houses the temporary files for sending commands to R, but for Windows users on a domain (i.e. corporate or institution users) &lt;code&gt;whoami&lt;/code&gt; returns the domain name with the username and the backslash screws up the filepath.&lt;/p&gt;

&lt;p&gt;I learnt that &lt;a href=&quot;https://github.com/vim-scripts&quot;&gt;Vim Scripts are on Github&lt;/a&gt;  - a nice consequence of figuring out a little &lt;a href=&quot;https://github.com/vim-scripts/Vim-R-plugin/commit/f70974bca041e574061b8293c999b025f52d7a93&quot;&gt;fix&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>'The Broken Spoke' and 'Always a Headwind, Never a Tailwind'</title>
   <link href="http://atomicules.co.uk/2010/11/20/the-broken-spoke-and-always-a-headwind-never-a.html"/>
   <updated>2010-11-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/11/20/the-broken-spoke-and-always-a-headwind-never-a</id>
   <content type="html">
		
				 &lt;p&gt;Some very good (and very apt) alternative names that would have been good for this blog.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Busch &amp;amp; Müller Ixon IQ</title>
   <link href="http://atomicules.co.uk/2010/11/06/busch-muller-ixon-iq.html"/>
   <updated>2010-11-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/11/06/busch-muller-ixon-iq</id>
   <content type="html">
		
				 &lt;p&gt;Last year I somehow got by on a combination of a Cateye Opticube, a £7 Bell Dawn Patrol light from Asda and the illumination provided by cars passing me (mainly that). But then again I only had about 3 miles of unlit roads.&lt;/p&gt;

&lt;p&gt;This year, with about 17.5 miles of unlit country lanes I decided (well, rather more the fortunate consequence of smashing my Asda light when falling off my bike, than &quot;decided&quot;) to get a better light. There are a hell of a lot of bike lights, but I'd narrowed down my choices to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.fenixtorch.co.uk/led_torches/fenix-ld20-r4.html&quot;&gt;Fenix LD20 R4&lt;/a&gt;, 205 lumens, £47.95 (plus £6.95 for a &lt;a href=&quot;http://www.fenixtorch.co.uk/led_torches/lockblock.html&quot;&gt;bike mount&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.hopegb.com/voir_visled1.html&quot;&gt;Hope Vision 1&lt;/a&gt;, 240 lumens, (varies, &lt;a href=&quot;http://www.hopegb.com/voir_visled1.html&quot;&gt;£71.99&lt;/a&gt; to &lt;a href=&quot;http://www.wiggle.co.uk/hope-vision-1-led-front-light/&quot;&gt;£81&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bumm.de/index-e.html?docu/192q-e.htm&quot;&gt;Busch &amp;amp; Muller Ixon IQ&lt;/a&gt;, 40 Lux, &lt;a href=&quot;http://www.bike24.com/1.php?content=8;navigation=1;menu=1000,5,66;product=6825&quot;&gt;€55.90&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The Hope Vision 1 and the Fenix are basically the same as far as light output goes, the main difference being the number of batteries each takes.&lt;/p&gt;

&lt;p&gt;I was put off the Fenix torch by the runtime (because it only takes 2 AA batteries). It's got an advertised 2hrs at full output, but this test result shows &lt;a href=&quot;http://light-reviews.com/fenix_ld20/&quot;&gt;just under one and half hours with 2000mAh Eneloops&lt;/a&gt;, my prefered kind of battery, since I already had some of the 7dayshop equivalents. My commute is around  the 1hr 20min mark, but has been known to stretch to 1hr 45mins with really bad head winds. The LD20 also shuts off completely rather than dimming down to the next level when batteries can no longer power the max output. I just didn't want to risk this on my commute. On a shorter commute I would have been more tempted to go with this option.&lt;/p&gt;

&lt;p&gt;The Hope Vision 1 gets around 3 hours at full output thanks to the additional batteries, however, reading reviews this requires high power batteries, rather than those around 2100 mAh (&lt;a href=&quot;http://www.bellatisport.com/shop/category/137/product/1389/HOPE_Vision_LED-1_ADVENTURE_head_lamp.html&quot;&gt;this review of the Hope Vision 1 headlamp&lt;/a&gt; says 2.5 hours with 2100mAh batteries). Also a few reviews mention manufacturing quality issues such as &lt;a href=&quot;http://www.bikeradar.com/gear/category/accessories/lights/front/product/vision-single-led-32403&quot;&gt;blobs of glue on the led/lens&lt;/a&gt;. And the battery holder design doesn't seem to be great (only really a concern if replacing batteries out on the road). The other thing that put me off, in addition to the price, is that it suffers the same problem as the Fenix and shuts off completely, rather than automatically switching to lower light output as batteries deplete. Bit risky for some bits of my journey.&lt;/p&gt;

&lt;p&gt;The B&amp;amp;M Ixon IQ can't be as bright as the Hope or Fenix simply because it has a quoted run time of five hours on max power using 2100mAh batteries. However, five hours means I can use one set of batteries for my commute in and back home with plenty of time to spare even on the windiest and therefore slowest days. This &lt;a href=&quot;http://yacf.co.uk/forum/index.php?topic=11751.0&quot;&gt;test by YACF&lt;/a&gt; compared a load of lights including the Fenix and Hope, but with the dynamo version of the B&amp;amp;M lights. The &lt;a href=&quot;http://www.bumm.de/index-e.html?docu/174q-e.htm&quot;&gt;Lumotec IQ Fly&lt;/a&gt; is the dynamo equivalent of the Ixon IQ since it is 40 Lux (the &lt;a href=&quot;http://www.bumm.de/index-e.html?docu/175q-e.htm&quot;&gt;Lumotec IQ cyo&lt;/a&gt; is 60 Lux). You can see that the Ixon IQ centre spot brightness is about 80% of the Hope Vision 1 and Fenix. However, owing to having an actual proper reflector design that spreads and places the light a bit better, it's brightness at 1 metre out from centre actually exceeds the Hope and Fenix.&lt;/p&gt;

&lt;p&gt;The Ixon IQ is a well designed and engineered bit of kit. The battery holder is intergrated: the top hinges open allowing the batteries to be slotted into place. Rather than shine the LED directly out of the front of the torch, the LED shines downwards onto a reflector. This reflector is designed to put a nice patch of light on the road (rather than shine light out in a cone). You can even buy it with a charger that you plug directly into the light so you don't have to take out the batteries; and thus also can use a &quot;&lt;a href=&quot;http://www.bumm.de/index.html?docu/492rk-e.htm&quot;&gt;ride and charge&lt;/a&gt;&quot; kit to make it dynamo-esque.&lt;/p&gt;

&lt;p&gt;I'm using it for unlit and unmarked country lanes. The only time I find it lacking is on soaking wet black tarmac; then it is still necessary to play a spot of &quot;guess the pothole&quot;. On dry roads it's ace. And on lighter coloured (grey) wet roads it's fine as well. When you get onto roads with cateyes and white lines it lights up for hundreds of metres and even though the reflector puts most of the light on the road, you can also clearly see reflective street signs hundreds of metres away.&lt;/p&gt;

&lt;p&gt;The new version (&lt;a href=&quot;http://www.bumm.de/index-e.html?docu/193q-e.htm&quot;&gt;Ixon IQ Fly&lt;/a&gt;) is only 10 Lux brighter, but €129,90 and also doesn't use standard AA batteries. So to me it would make far more sense to get two Ixon IQs at €55,90 as then you get 80 Lux. That really isn't necessary for road use, but would be great all the same (maybe someday).&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Cyclists All Notice One Another So When We See</title>
   <link href="http://atomicules.co.uk/2010/10/27/cyclists-all-notice-one-another-so-when-we-see.html"/>
   <updated>2010-10-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/27/cyclists-all-notice-one-another-so-when-we-see</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Cyclists all notice one another, so when we see something that looks somewhat like a bicycle yet places the rider in an odd position with his feet kicking at the air as if he's defending himself from an attacking eagle, we become confused and disoriented&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;a href=&quot;http://www.guardian.co.uk/lifeandstyle/2010/oct/24/bike-snobs-guide-cycling-tribes&quot;&gt;The bike snob's guide to cycling tribes | Life and style | guardian.co.uk&lt;/a&gt;&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Porridge for P-p-power!</title>
   <link href="http://atomicules.co.uk/2010/10/24/porridge-for-p-p-power.html"/>
   <updated>2010-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/24/porridge-for-p-p-power</id>
   <content type="html">
		
				 &lt;p&gt;Whilst on a food related note. A lot of folk seem to have hydration issues cycling, and even on my 19 mile commute would take in fluids. Me, it would just make me need the loo even more than I do; If I ever do any longer distance riding I'm avoiding fluids as much as possible otherwise I'd be spending all my time off the bike.&lt;/p&gt;

&lt;p&gt;What I do have an issue with though is food. I get soooo hungry. Which means when I get to work I want to eat all the food I have, but I need to have enough sense and willpower to leave something to eat for before the journey home. The only success I've had here is with packets of porridge. Anything like biscuits, fruit, sandwiches or cereal bars are just too tempting by convenience and I end up eating them. But porridge requires me to get off my arse and go and make it. Fortunately it's not too inconvenient and we've got a microwave and bowls and spoons at work.&lt;/p&gt;

&lt;p&gt;The flavoured porridge sachets are great because they taste good with water (more available to me than milk) and only take a couple of minutes in the microwave.&lt;/p&gt;

&lt;p&gt;In order of preference:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.dorsetcereals.co.uk/porridge/&quot;&gt;Dorset Cereals&lt;/a&gt;. Tastes as good as it looks. Still looks and tastes great with water because has flavoured oats and bits of fruit in it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.quaker.co.uk/ProdOatsoVariety.aspx&quot;&gt;Quaker Oats Oat So Simple&lt;/a&gt;. Nice enough. The  new Sweet Cinnamon one is lovely. And you can get ones with bits in similar to - although not as fruity as - the Dorset Cereals.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.pawridge.co.uk/&quot;&gt;Quaker Oats Paw Ridge&lt;/a&gt;. Least favourite as it going along the lines of Ready Brek and is milled finer. For some reason kids are supposed to like it like this. But made with water looks too much like wallpaper paste; tastes fine though.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Of Custard</title>
   <link href="http://atomicules.co.uk/2010/10/24/of-custard.html"/>
   <updated>2010-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/24/of-custard</id>
   <content type="html">
		
				 &lt;p&gt;I like the idea of having a theme to a blog and thought custard and cycling would go hand in hand (humour me) and was honestly intending to post some custard related stuff; perhaps pictures of the sumptuous puddings we've been having of late. But the problem is, as soon as they are made they are eaten - I do not have the patience to get a camera and grab a shot.&lt;/p&gt;

&lt;p&gt;All in all, winter cycling sucks. Ok, a slightly less sweaty back is a nice plus, but I am - so far - enjoying this winter due wholly to the puddings:&lt;/p&gt;

&lt;p&gt;We've had three rhubarb and one plum crumble from the fruit of the garden. Two gooey chocolate puddings. All with custard - of course!&lt;/p&gt;

&lt;p&gt;No pics. You'll just have to imagine how yummy they are.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Home-made Overshoes</title>
   <link href="http://atomicules.co.uk/2010/10/24/home-made-overshoes.html"/>
   <updated>2010-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/24/home-made-overshoes</id>
   <content type="html">
		
				 &lt;p&gt;My cheapskate approach to life crosses all boundaries. I'd like some proper overshoes, in the same way I'd like proper cycling shoes and clipless pedals. But: Ho, hum. As it is, late summer I had a silly idea to cut the bottoms of my waterproofs off and make them into waterproof overshoes (plastic bag on feet styley). I was still wearing shorts so it kind of made sense, but I forgot that waterproof overshoes aren't going to work if water can run in the top of them!&lt;/p&gt;

&lt;p&gt;So, I got some new waterproof trousers. And cut my old ones in half along the crotch seam (so I had two  separate legs). I then sewed the waist band back up so it would grip around the top of my calf (just below my knee). Because these were my old waterproofs which were cut off at knee length, this meant they were now the right length to cover my feet when pulled up to the knee. So I sewed the bottom so they were fitted a bit underneath the sole of my shoe. And that's all. Getting them on and off is a bit awkward: with shoes off I can pull the &quot;waist band&quot; bit over my foot, and then stick my foot through the scalloped opening caused by the crotch seam, put my shoe on and put it back through the opening. Then it's just a matter of pulling them up and trying to get the &quot;fitted&quot; bit in place on my sole. There are entirely crap for walking in as you'd imagine, but for a few steps ok. The idea is that when I place my foot in the toe clip the excess material hanging off the front of my foot gets tucked underneath. This mostly works, allow a bit more sewing to &quot;fit&quot; them here wouldn't go amiss.&lt;/p&gt;

&lt;p&gt;Unlike the puddings, I should get a camera and post a pic of these monstrosities! Because they do work.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>He Hadnt Gone A Yard When Bang With Open Jaws</title>
   <link href="http://atomicules.co.uk/2010/10/24/he-hadnt-gone-a-yard-when-bang-with-open-jaws.html"/>
   <updated>2010-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/24/he-hadnt-gone-a-yard-when-bang-with-open-jaws</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;He hadn’t gone a yard when– Bang! With open Jaws, a Lion sprang, And hungrily began to eat The Boy: beginning at his feet.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;a href=&quot;http://www.gutenberg.org/ebooks/27424&quot;&gt;Cautionary tales for children - Hilaire Belloc, 1870-1953&lt;/a&gt;.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Red-R | visual programming for R</title>
   <link href="http://atomicules.co.uk/2010/10/19/red-r-visual-programming-for-r.html"/>
   <updated>2010-10-19T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/19/red-r-visual-programming-for-r</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.red-r.org/&quot;&gt;&#187; Red-R | visual programming for R&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This looks really interesting. Nodal based GUI and workflow to using R. The only thing is, I couldn't get it working properly. I managed to read in an Excel file, but couldn't do a simple barplot. Tried the supplied Histogram widget, which showed a graph for a default column, but I couldn't get it to update for another column, etc. Tried a Generic Plot, but couldn't enter any data into the boxes. I'm guessing it's still very much under development. Back to &lt;a href=&quot;http://rcommander.com/&quot;&gt;Rcmdr&lt;/a&gt; it is.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>The London Fixed Gear And Single</title>
   <link href="http://atomicules.co.uk/2010/10/11/the-london-fixed-gear-and-single.html"/>
   <updated>2010-10-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/11/the-london-fixed-gear-and-single</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/buro9/5069348456/in/set-72157625011133209/&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_la4iti0qan1qdhcbyo1_500.jpg&quot; alt=&quot;The London Fixed Gear And Single&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;The &lt;a href=&quot;http://www.lfgss.com&quot;&gt;London Fixed Gear and Single Speed&lt;/a&gt; photo montage from their stand at the Cycle Show 2010, Earl's Court.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(Photo &lt;a href=&quot;http://www.flickr.com/photos/buro9/5069348456/in/set-72157625011133209/&quot;&gt;DSC_0004&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/buro9/&quot;&gt;the boy on the bike&lt;/a&gt;, blogged via permission of CC &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/&quot;&gt;BY-NC-SA&lt;/a&gt; license)&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>My iPod Mini Lives</title>
   <link href="http://atomicules.co.uk/2010/10/10/my-ipod-mini-lives.html"/>
   <updated>2010-10-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/10/my-ipod-mini-lives</id>
   <content type="html">
		
				 &lt;p&gt;One of mine and the missus' best drunken rambling ideas ever was that, rather than watch some averagely funny film we've seen umpteen times before, we should spend Saturday nights listening to some music - each of us picking something new for us to listen to. Unfortunately like many a good drunken idea it has never actually happened and now we just end up watching x-factor with the girls. Such is life.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Shit Robot - From the Cradle to the Rave&lt;/em&gt;. Like judging a porridge by it's packaging I just knew by the name this would be anything but Shit. Love it. Lots.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Blood Red Shoes - Fire Like This&lt;/em&gt;. Gets off to a right good start with Don't Ask, but then... well it just seems to pass by and end. I've tried listening to it a couple of times and it's the same: great start then before I realise it, it's finished  and I've not noticed it. Not sure what's up with that. This is probably why I'm never that enthusiastic to check out music recommended by Last.fm - it's just not quite there (I don't think).&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Bombay Bicycle Club - I Had the Blues but Shook Them Free&lt;/em&gt;. Had this for a while and never got around to listening. Wasn't in the mood for it. Still not really. Always Like This is awesome, but the only stand out for me.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Ou Est Le Swimming Pool - The Golden Year&lt;/em&gt;. How incredibly sad really the whole story with their lead singer. Wonder if they will carry on? Great album though. Had the Kings of Perignon track for quite awhile - think it was in Annie Mac's Top Ten Track's at one point which is how I found it.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Beatbullyz - Human Nature&lt;/em&gt;. Where did I hear of these? Must have been on Huw Stephen's podcast. I went and found Keyz to Life, Wham and 6 Music to a Stereo. Great tracks. The album is ok, but not as good as those tracks. Bit too well produced for it's own good.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Two Door Cinema Club - Tourist History&lt;/em&gt;. This is where I am absolutely, totally and irrevocably wrong about Last.fm recommendations. Oh why did I ignore these for so long? Thanks to the excellent video for Come Back Home for prompting me to go and listen. Superb album.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;The Drums - The Drums&lt;/em&gt;. I had Let's Go Surfing free from iTunes for awhile and listened and never thought much of it. Then I saw the video (NME channel, same time as Two Door Cinema Club), which isn't actually that much, but for whatever reason made me hear the song again and I like it. However, it is probably the best on the album (I say probably though, and same feelings go for Blood Red Shoes, because perhaps I just haven't listened to them properly yet - after all I didn't think much of Let's Go Surfing the first time round).&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Smoke Fairies - Frozen Heart&lt;/em&gt;. Which just goes to show that just because they are pretty girls and TLOBF mentioned them, that I shouldn't necessarily listen to them. Not my cup of tea.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Mad Caddies - Keep it going&lt;/em&gt;. Sadly, it seems they haven't. Oh well, there's always Duck and Cover and Just One More which I shall never tire from listening to.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Crystal Castles - Crystal Castles II&lt;/em&gt;. Argh! Noise! Not for me. I think I remembered these (from the NME channel one night) quite a bit better than they actually are.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Invert a subset selection when using grepl in R</title>
   <link href="http://atomicules.co.uk/2010/10/09/invert-a-subset-selection-when-using-grepl-in-r.html"/>
   <updated>2010-10-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/09/invert-a-subset-selection-when-using-grepl-in-r</id>
   <content type="html">
		
				 &lt;p&gt;One of those embarrassing Doh! moments to share with the world.&lt;/p&gt;

&lt;p&gt;I was trying to &lt;a href=&quot;http://sekhon.berkeley.edu/library/base/html/subset.html&quot;&gt;subset&lt;/a&gt; some data using &lt;a href=&quot;http://sekhon.berkeley.edu/library/base/html/grep.html&quot;&gt;grepl&lt;/a&gt;, but wanted to do a negated search. So any column not beginning with &quot;08&quot; (they all began with &quot;0&quot; something).&lt;/p&gt;

&lt;p&gt;Which you can do with:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;grepl(&quot;0(?!8)&quot;,Dataset$Some.Column, perl=T)&lt;/code&gt; (negative lookahead)
or &lt;code&gt;grepl(&quot;^0[^8]&quot;,Dataset$Some.Column, perl=T)&lt;/code&gt; (negated character class)&lt;/p&gt;

&lt;p&gt;But, because grepl is returning a vector of &quot;Yays&quot; or &quot;Nays&quot; there is a much, much simpler approach. Just do:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;!(grepl(&quot;^08&quot;,Dataset$Some.Column))&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Doh!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Im Slightly In Love And If Im Really Honest</title>
   <link href="http://atomicules.co.uk/2010/10/08/im-slightly-in-love-and-if-im-really-honest.html"/>
   <updated>2010-10-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/08/im-slightly-in-love-and-if-im-really-honest</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://dorsetcereals.co.uk/porridge/&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_l9xy6xZhSc1qzcagp.jpg&quot; alt=&quot;Im Slightly In Love And If Im Really Honest&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I'm slightly in love, and if I'm really honest about it, probably more so with the packaging than the porridge (although the cranberry &amp;amp; raspberry one is &lt;em&gt;nice&lt;/em&gt;).&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Why do so many people still buy road bikes with drop bars but never ride in the dropped position?</title>
   <link href="http://atomicules.co.uk/2010/10/06/why-do-so-many-people-still-buy-road-bikes-with-drop.html"/>
   <updated>2010-10-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/06/why-do-so-many-people-still-buy-road-bikes-with-drop</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://groups.google.com/group/rec.bicycles.tech/browse_thread/thread/461cb8c44b0d3a2a/ff8322e7c18351b1#ff8322e7c18351b1&quot;&gt;&#187; Why do so many people still buy road bikes with drop bars but never ride in the dropped position?&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I just kind of stumbled across this massive thread from 2009 in rec.bicycles.tech, but it is interesting to me since I'm fairly new to drops (ok, I had a racer as a kid, but it's been well over a 20 year gap since using them). The whole reason I fitted drop handlebars to my current bike was so that I could ride in the drops most of the time. What is the point otherwise? Might as well have bullhorns. I don't have my handlebars way below my seat height though. That way I can get down into the drops and stay there for the headwinds and be comfortable at the same time. Mind you, I don't really have brake hoods (since my brakes are on the cross bar) so perhaps that's why I don't ride in the 'hoods' position so much.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Sometimes I Cant But Help Think The Slow Signs</title>
   <link href="http://atomicules.co.uk/2010/10/05/sometimes-i-cant-but-help-think-the-slow-signs.html"/>
   <updated>2010-10-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/05/sometimes-i-cant-but-help-think-the-slow-signs</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/fatboyke/2668411239/&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_l9chkyCIUx1qdhcbyo1_500.jpg&quot; alt=&quot;Sometimes I Cant But Help Think The Slow Signs&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Sometimes I can't but help think the &quot;SLOW&quot; signs on the road are taunting me. The only time I seem to notice them are when I'm crawling along into a headwind and therefore going &quot;SLOW&quot;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(Photo &lt;a href=&quot;http://www.flickr.com/photos/fatboyke/2668411239/&quot;&gt;Slow Down .......You Clown!!&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/fatboyke/&quot;&gt;fatboyke&lt;/a&gt;, blogged via permission of CC &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/&quot;&gt;BY-NC-SA&lt;/a&gt; license)&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Road Rage</title>
   <link href="http://atomicules.co.uk/2010/10/04/road-rage.html"/>
   <updated>2010-10-04T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/04/road-rage</id>
   <content type="html">
		
				 &lt;p&gt;Animosity between motorists and cyclists is just a natural part of cycling and driving. Motorists hate cyclists for getting in the way and holding them up for 5 secs and cyclists hate motorists because of the whole &lt;a href=&quot;http://www.stop-smidsy.org.uk/&quot;&gt;SMIDSY&lt;/a&gt; thing.&lt;/p&gt;

&lt;p&gt;I had my first sufferance of road rage recently. I'm not a 100% innocent party, more like 95%: I cycled up the outside of a line of traffic at a roundabout to get to the front (strictly speaking probably shouldn't do that, but it's not &lt;em&gt;that&lt;/em&gt; bad) and then since I was in front it forced the car that was in front to follow me out into the roundabout and so at that point in time I had probably added about an extra 5 secs to his journey time. I can only think something snapped in this guy's head (perhaps motorists don't mind cyclists as long as they act subserviently) and he beeped me all the way round the roundabout and so I, in turn, flipped him my fingers behind me back - again not that innocent but not &lt;em&gt;that&lt;/em&gt; bad). This just made him worse, so when we exited the roundabout he overtook straight away, but then pulled and braked in front of me to slow me down. I just merrily pulled out and overtook him - I'm not sure what he was trying to accomplish (he could have done that all the way home and it would have negligible impact on my journey time), I think perhaps he wanted me to stop so he could get out of his car and  &quot;talk&quot; to me, as when he overtook me again he wound down his window and was shouting at me, but because of the distance between us and the noise of the traffic I couldn't hear him. Anyway, this continued up the dual carriageway, him pulling in front, me going round - at one point I went off the road onto a path and he pulled off the road across my path into the entrance of a petrol station. I just cycled round the back of his car, carried on a bit, and got back on the road. When he caught up (knob), he shouted something else at me and I said as loud as I could that I couldn't hear him. And at that point I think he gave up, and realised he'd wasted far more of his time than the 5 secs I'd caused him at the roundabout, and drove off. Twat.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Photographing cyclocross: let there be mud!</title>
   <link href="http://atomicules.co.uk/2010/10/04/photographing-cyclocross-let-there-be-mud.html"/>
   <updated>2010-10-04T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/04/photographing-cyclocross-let-there-be-mud</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://manfrottoschoolofxcellence.com/2010/05/30/kristof-ramon-photographing-cyclocross-let-there-be-mud/&quot;&gt;&#187; Photographing cyclocross: let there be mud!&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Cyclocross does look like a lot of fun, but my legs just couldn't do the running side of it.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>I don’t pay road tax | At War With The Motorist</title>
   <link href="http://atomicules.co.uk/2010/10/04/i-dont-pay-road-tax-at-war-with-the-motorist.html"/>
   <updated>2010-10-04T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/04/i-dont-pay-road-tax-at-war-with-the-motorist</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://waronthemotorist.wordpress.com/2010/10/04/i-dont-pay-road-tax/&quot;&gt;&#187; I don’t pay road tax | At War With The Motorist&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I'm in two minds at the minute as to how to behave with motorists. Especially considering the recent road rage incident. I think I'm going to try to be less aggressive. I'm not necessarily going to sit in traffic queues, but if a motorist starts being aggressive because I've dared overtake them I'm going to try to be passive rather than aggravate the situation. After all, they have a bigger chunk of metal to throw about.&lt;/p&gt;

&lt;p&gt;Generally I'd consider myself a considerate road user. I cycle a lot of country lanes where a car can't (or shouldn't anyway!) just overtake, so if I hear or see (lights) a car behind me, I have been pulling over to let them pass. Some even say thanks!&lt;/p&gt;

&lt;p&gt;And my best ever yet was when a lady driver had broken down in the middle of a roundabout during rush hour. All the car drivers where just weaving their way around her. Who stopped to push her car off the roundabout and into a lay-by out of harms way? Oh yeah, that would be me, a cyclist.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Its Like Ballet For Angry Gorillas On Little</title>
   <link href="http://atomicules.co.uk/2010/10/03/its-like-ballet-for-angry-gorillas-on-little.html"/>
   <updated>2010-10-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/03/its-like-ballet-for-angry-gorillas-on-little</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;It’s like ballet for angry gorillas on little fairy bicycles made out of wishes.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;a href=&quot;http://www.reddit.com/r/bicycling/comments/dacq3/if_you_havent_seen_a_match_sprint_before_watch/&quot;&gt;loquacious on Match Sprinting (Cycling)&lt;/a&gt; &lt;em&gt;(via &lt;a href=&quot;http://dhotson.tumblr.com/post/1227996807/its-like-ballet-for-angry-gorillas-on-little&quot;&gt;dhotson&lt;/a&gt;)&lt;/em&gt;&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Dhotson Incredible O Blackalicious</title>
   <link href="http://atomicules.co.uk/2010/10/03/dhotson-incredible-o-blackalicious.html"/>
   <updated>2010-10-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/10/03/dhotson-incredible-o-blackalicious</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/MvPnM2Q1nwU?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/1227446522/incredible-o-blackalicious-alphabet&quot; class=&quot;tumblr_blog&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;Incredible! :-O&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=MvPnM2Q1nwU&quot;&gt;Blackalicious - Alphabet Aerobics&lt;/a&gt; (via &lt;a href=&quot;http://youtube.com/user/giftstribution&quot;&gt;giftstribution&lt;/a&gt;)&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;I still love the Quannum Spectrum album I have. The Blackalicious One of Kind track is one of the standouts. &lt;/p&gt;

&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Spinning</title>
   <link href="http://atomicules.co.uk/2010/09/30/spinning.html"/>
   <updated>2010-09-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/30/spinning</id>
   <content type="html">
		
				 &lt;p&gt;What the hell is this all about? When I first heard this term in connection with the gym I never twigged it had anything to do with cycling. I didn't know what it was, but assumed it was something more exciting that sitting on an exercise bike, which is up there with running on a treadmill as one of the the most pointless boring things to do ever. I just do not understand the point in it. Why not, you know, actually go out for a run or a bike ride? Lost on me...&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Touching Toes</title>
   <link href="http://atomicules.co.uk/2010/09/29/touching-toes.html"/>
   <updated>2010-09-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/29/touching-toes</id>
   <content type="html">
		
				 &lt;p&gt;I've never been very supple. I can't ever remember being able to touch my toes as a kid, the nearest I could ever get was half way to two thirds down my shins, and this even though I was pretty sporty as a kid. I just kind of thought that was me.&lt;/p&gt;

&lt;p&gt;One of the weirdest things that's happened as a result of my longer commute is increased suppleness. I can touch my toes, get my fingers on the floor. It's amazing. Like a new party trick for me. I don't know if it's because of the longer miles, more hill climbs (and therefore standing up) or faster bits on the route so I get a really high cadence (fixed gear bike),
but since I started it's really stretched out my legs.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Some Notes on Developing Extensions for Chrome vs Firefox</title>
   <link href="http://atomicules.co.uk/2010/09/29/some-notes-on-developing-extensions-for-chrome-vs.html"/>
   <updated>2010-09-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/29/some-notes-on-developing-extensions-for-chrome-vs</id>
   <content type="html">
		
				 &lt;p&gt;I recently developed a pretty basic extension for Chrome for something at work and then ported it to Firefox. Getting the whole thing working in Chrome probably took a day, Firefox took me a a couple of weeks longer (not continuous development time mind you, this was a little side project). But I got stuck a lot on Firefox, whereas I didn't with Chrome.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Number of files&lt;/em&gt;. As it stands at the moment. The Chrome extension has zero folders, three files: a png icon, a json configuration file, and a html file (also contains the css and javascript). In Firefox I have 5 folders, and 12 files. Ok, Firefox pushes you down the correct route for localisation from the get-go, but still!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Icons&lt;/em&gt;. In Chrome you simply dump in the icon file and it works. In Firefox they have half implemented this for display in the AddOns dialog, but you then have to include it again as a toolbar button, etc. And a css file to point to it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;UI&lt;/em&gt; - I have to admit I was a bit wary of developing a Chrome extension as they all look so good, I didn't realise you get that contained popup window as a default without having to lift a finger. In Firefox I'm currently stuck. I have an XUL window (started with a dialog), but I want a popup so need to look at panels (I think). Almost too much choice. How are you supposed to know what to use? For my extension the Chrome popup approach has the benefits of acting as a natural way to refresh that window (if you click outside of it, it disappears, the user doesn't have to manually close and re-open it).&lt;/p&gt;

&lt;p&gt; In Chrome you are working purely with HTML, so a simple web form is as follows:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; &amp;lt;body onload=&quot;initialise()&quot;&amp;gt;
     &amp;lt;form action=&quot;javascript:somefunction(document.getElementById('sometext').value)&quot; method=&quot;POST&quot; &amp;gt;
         &amp;lt;input type=&quot;text&quot; name=&quot;sometext&quot; id =&quot;sometext&quot; value=&quot;&quot;&amp;gt;
         &amp;lt;input type=&quot;submit&quot; name=&quot;submit&quot; id=&quot;submit&quot; value=&quot;Submit&quot;&amp;gt;
     &amp;lt;/form&amp;gt;
 &amp;lt;/body&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt; In Firefox you end you with something like:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;
 &amp;lt;?xml-stylesheet href=&quot;chrome://global/skin/&quot; type=&quot;text/css&quot;?&amp;gt;
 &amp;lt;?xml-stylesheet href=&quot;chrome://myfirefoxextension/skin/myfirefoxextension.css&quot; type=&quot;text/css&quot;?&amp;gt;

 &amp;lt;!DOCTYPE window SYSTEM &quot;chrome://myfirefoxextension/locale/myfirefoxextension.dtd&quot;&amp;gt;
 &amp;lt;window id=&quot;myfirefoxextension-dialog&quot; 
     xmlns=&quot;http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul&quot;
     xmlns:html=&quot;http://www.w3.org/1999/xhtml&quot;
     autosize=&quot;true&quot;
     resizable=&quot;no&quot;

     onload=&quot;initialise();&quot;
     title=&quot;&amp;amp;dialog.title;&quot;&amp;gt;

     &amp;lt;script src=&quot;myfirefoxextension.js&quot;/&amp;gt;

     &amp;lt;html:body id=&quot;body&quot;&amp;gt;
         &amp;lt;html:form action=&quot;javascript:somefunction(document.getElementById('sometext').value)&quot; method=&quot;POST&quot; id=&quot;form&quot; &amp;gt;
             &amp;lt;html:input type=&quot;text&quot; name=&quot;sometext&quot; id =&quot;sometext&quot; value=&quot;&quot; /&amp;gt;
             &amp;lt;html:input type=&quot;submit&quot; name=&quot;submit&quot; id=&quot;submit&quot; value=&quot;submit&quot; /&amp;gt;
         &amp;lt;/html:form&amp;gt;
         &amp;lt;html:p id=&quot;logintxt&quot;&amp;gt;You need to &amp;lt;html:a href=&quot;http://somewebsite.com&quot; target=&quot;_blank&quot;&amp;gt;logon to some website&amp;lt;/html:a&amp;gt; first.&amp;lt;/html:p&amp;gt;
     &amp;lt;/html:body&amp;gt;
 &amp;lt;/window&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Configuration files&lt;/em&gt;. Apart from me always forgetting commas in the json file, the Chrome configuration file is much, much simpler than in Firefox. I can understand what all of it means:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; {
     &quot;name&quot;: &quot;My simple extension&quot;,
     &quot;version&quot;: &quot;0.0.1&quot;,
     &quot;description&quot;: &quot;Does something ace.&quot;,
     &quot;browser_action&quot;: {
         &quot;default_icon&quot;: &quot;icon.png&quot;,
         &quot;popup&quot;: &quot;popup.html&quot;
     },
     &quot;permissions&quot;: [
         &quot;https://xml.website.com/*&quot;,
         &quot;http://a.website.com/*&quot;,
         &quot;tabs&quot;
     ]

 }
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt; In Firefox you have an &lt;code&gt;install.rdf&lt;/code&gt; file:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;
 &amp;lt;RDF xmlns=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:em=&quot;http://www.mozilla.org/2004/em-rdf#&quot;&amp;gt;
   &amp;lt;Description about=&quot;urn:mozilla:install-manifest&quot;&amp;gt;
     &amp;lt;em:id&amp;gt;myfirefoxextension@domain.com&amp;lt;/em:id&amp;gt;
     &amp;lt;em:type&amp;gt;2&amp;lt;/em:type&amp;gt;
     &amp;lt;em:name&amp;gt;myfirefoxextension&amp;lt;/em:name&amp;gt;
     &amp;lt;em:version&amp;gt;0.0.1&amp;lt;/em:version&amp;gt;
     &amp;lt;em:creator&amp;gt;Me&amp;lt;/em:creator&amp;gt;
     &amp;lt;em:contributor&amp;gt;&amp;lt;/em:contributor&amp;gt;
     &amp;lt;em:description&amp;gt;Do something ace&amp;lt;/em:description&amp;gt;
     &amp;lt;em:targetApplication&amp;gt;
       &amp;lt;Description&amp;gt;
         &amp;lt;em:id&amp;gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&amp;lt;/em:id&amp;gt; &amp;lt;!-- Firefox --&amp;gt;
         &amp;lt;em:minVersion&amp;gt;3.6&amp;lt;/em:minVersion&amp;gt;
         &amp;lt;em:maxVersion&amp;gt;3.6.*&amp;lt;/em:maxVersion&amp;gt;
       &amp;lt;/Description&amp;gt;
     &amp;lt;/em:targetApplication&amp;gt;
   &amp;lt;/Description&amp;gt;
 &amp;lt;/RDF&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt; and a &lt;code&gt;chrome.manifest&lt;/code&gt; file:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; content   myfirefoxextension                 chrome/content/
 skin      myfirefoxextension   classic/1.0   chrome/skin/
 locale    myfirefoxextension   en-US         chrome/locale/en-US/
 overlay   chrome://browser/content/browser.xul   chrome://myfirefoxextension/content/ff-overlay.xul
 style chrome://global/content/customizeToolbar.xul chrome://myfirefoxextension/skin/overlay.css
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt; I still don't fully understand these or the syntax. These are not the kind of things you want to create yourself (a small mistake and the extension won't load) hence why Mozilla provide an &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/tools/builder&quot;&gt;extension generator&lt;/a&gt;. This is a neat idea (but also shows you it's more complicated than it needs to be), and in my experience it wouldn't work, I had to replace the generated javascript code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Development tools / environment&lt;/em&gt; - Chrome gets the superb Webkit developer tools for free. The popup window can be inspected just like any other window, which means you also get a javascript console for free. This helps tracking down errors and debugging much easier.&lt;/p&gt;

&lt;p&gt; Firefox, you are out of luck. With some &lt;a href=&quot;http://blog.mozilla.com/addons/2009/01/28/how-to-develop-a-firefox-extension/&quot;&gt;changes to configuration files&lt;/a&gt; you can get some errors reported in the error console (Tools &gt; Error Console), but no Firebug to inspect the XUL window, etc.&lt;/p&gt;

&lt;p&gt; Which also brings me to: In Chrome (and Firefox) you can load an 'unpacked' extension (i.e. you don't need to zip up your files and install each time you want to test), but in Chrome you can edit your code and simply reload the extension. In Firefox you have to quit and restart.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Quick and dirty&lt;/em&gt; - In Chrome you can do&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; document.body.innerHTML = '&amp;lt;p&amp;gt;You need to log on to &amp;lt;a href=&quot;http://somewebsite.com&quot; target=&quot;_blank&quot;&amp;gt;somewebsite&amp;lt;/a&amp;gt; first&amp;lt;p&amp;gt;'
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt; In Firefox, you have to do things 'properly':&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; var link = document.createElementNS(&quot;http://www.w3.org/1999/xhtml&quot;,&quot;a&quot;); //from http://www.techjini.com/blog/2006/01/12/identifying-and-displaying-hyperlinks-in-xul/
 link.setAttribute(&quot;href&quot;, somelink);
 link.setAttribute(&quot;target&quot;, &quot;_blank&quot;);
 link.setAttribute(&quot;style&quot;, &quot;color: rgb(0,0,255); text-decoration:underline&quot;);
 var txt = document.createTextNode(sometext);
 link.appendChild(txt);
 document.getElementById('body').appendChild(link);
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;The only pluses I give Firefox is that it was easier to get the current URL:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;locationURL&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;window&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;opener&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;gBrowser&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;contentDocument&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;location&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;href&lt;/span&gt;  &lt;span class=&quot;c1&quot;&gt;//thanks to  http://forums.mozillazine.org/viewtopic.php?f=19&amp;amp;t=778165&amp;amp;start=0 &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;than in Chrome:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;   &lt;span class=&quot;nx&quot;&gt;chrome&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;tabs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getSelected&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;tab&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;//thanks to http://stackoverflow.com/questions/1979583/how-can-i-get-the-url-for-a-google-chrome-tab/1979709#1979709&lt;/span&gt;
                &lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tablink&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tab&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;and that in Firefox it is easy to copy text to the clipboard:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kr&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;gClipboardHelper&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;Components&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;classes&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;@mozilla.org/widget/clipboardhelper;1&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getService&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;Components&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;interfaces&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;nsIClipboardHelper&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;  &lt;span class=&quot;c1&quot;&gt;//from https://developer.mozilla.org/en/Using_the_Clipboard&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;gClipboardHelper&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;copyString&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;sometext&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;whereas in Chrome the support is in an &lt;a href=&quot;http://code.google.com/chrome/extensions/experimental.clipboard.html&quot;&gt;experimental API&lt;/a&gt; and requires the user to by on the development channel of Chrome.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Ive Just Started A Newblog To Post Cycling</title>
   <link href="http://atomicules.co.uk/2010/09/29/ive-just-started-a-newblog-to-post-cycling.html"/>
   <updated>2010-09-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/29/ive-just-started-a-newblog-to-post-cycling</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_l9i2ds5OyG1qzcagp.jpg&quot; alt=&quot;Ive Just Started A Newblog To Post Cycling&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I've just started a newblog to post &lt;a href=&quot;http://custardycling.co.uk&quot;&gt;cycling related stuff&lt;/a&gt; to (I briefly thought about re-inventing this blog again due to the recent lapse in anything even remotely related to art or code, but decided against it) and so spent a bit of time setting up a tumblr theme (using this one as a template). I did all the development in Chrome and just assumed that nowadays if it worked in Chrome it would just look the same in Firefox and Opera, etc (and I don't give a crap about IE).&lt;/p&gt;

&lt;p&gt;But it seems that isn't the case. It looks pants in Gecko 1.9 ,and in Gecko 2.0 doesn't get the rounded corners even though I thought &lt;a href=&quot;https://developer.mozilla.org/en/CSS/-moz-border-radius&quot;&gt;Gecko 2.0 now supported the CSS3 selectors&lt;/a&gt; instead of the &lt;code&gt;-moz&lt;/code&gt; prefixed ones. If I use the &lt;code&gt;-moz&lt;/code&gt; prefixes I can get the site looking as intended in Firefox 4. I think I might just leave it like that. Haven't figured out why the header and footer colours don't show in Gecko 1.9 - it really is quite a simple layout, nothing fancy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EDIT:&lt;/strong&gt; Ah, ok, this is to do with &lt;a href=&quot;http://diveintohtml5.org/semantics.html#unknown-elements&quot;&gt;parsing HTML5 elements&lt;/a&gt;. Doing:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;css&quot;&gt;&lt;span class=&quot;nt&quot;&gt;article&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;aside&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;details&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;figcaption&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;figure&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;footer&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;header&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;hgroup&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;menu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;nav&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;section&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;display&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;block&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;solves all of the problems in Gecko 1.9. Interestingly, I thought there were also issues with a child selector of &lt;code&gt;body&gt;footer&lt;/code&gt; in Gecko 1.9, even though &lt;code&gt;body&gt;header&lt;/code&gt; worked, but turns out this is just a glitch in the Tumblr customise/preview mode. In this mode the footer displays all wrong (even using an id to select it rather than the child selector, the width and position is still screwed up), but once published it's all ok. Bizarre!&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Bitbucket joins Atlassian</title>
   <link href="http://atomicules.co.uk/2010/09/29/bitbucket-joins-atlassian.html"/>
   <updated>2010-09-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/29/bitbucket-joins-atlassian</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.bitbucket.org/2010/09/29/bitbucket-joins-atlassian/&quot;&gt;&#187; Bitbucket joins Atlassian&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;blockquote&gt;&lt;p&gt;All accounts now have unlimited private and public repositories with unlimited storage. You can now get a 5-user private code repository account for free… forever&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I'm an entrenched &lt;a href=&quot;http://github.com&quot;&gt;Github&lt;/a&gt; user now, using the Micro plan, mainly because it has always &lt;em&gt;just worked&lt;/em&gt; for me from behind a corporate firewall. I tried &lt;a href=&quot;http://bitbucket.org&quot;&gt;Bitbucket&lt;/a&gt; and &lt;a href=&quot;http://codaset.com/&quot;&gt;Codaset&lt;/a&gt; out when I was trying to pick someone to use, and it's all very well having free plans that give you private repositories, but I couldn't get either to work reliably from work. Still though, Bitbucket are now offering the equivalent of Github's Small plan ($12/month) for free - interesting times.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Cant Have A Blog About Cycling Without A Photo Of</title>
   <link href="http://atomicules.co.uk/2010/09/28/cant-have-a-blog-about-cycling-without-a-photo-of.html"/>
   <updated>2010-09-28T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/28/cant-have-a-blog-about-cycling-without-a-photo-of</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_l9ffr9pzWy1qdhcbyo1_500.jpg&quot; alt=&quot;Cant Have A Blog About Cycling Without A Photo Of&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Can't have a blog about cycling without a photo of the bike, can you? So here it is. This is what it &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4011639393/&quot;&gt;looked like&lt;/a&gt; when it was pretty much as new, about a year ago.&lt;/p&gt;

&lt;p&gt;It's a &lt;a href=&quot;http://www.halfords.com/webapp/wcs/stores/servlet/product_storeId_10001_catalogId_10151_productId_551267_langId_-1_categoryId_165534&quot;&gt;Carrera Subway Zero&lt;/a&gt; (so nothing flashy), I got through the cycle to work scheme. The following bits and pieces added:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Some cheap as chips toe clips from eBay (would love clipless, but out of my price range)&lt;/li&gt;
&lt;li&gt;Some Ritchey Comp Logic drop handlebars to help with getting a bit lower into the wind, also much comfier over the longer distances. &lt;a href=&quot;http://www.sjscycles.co.uk/ritchey-ritchey-comp-logic-anatomic-drop-handlebars-318mm-clamp-prod15734/&quot;&gt;£20 from SJS&lt;/a&gt;. Complete with the &lt;a href=&quot;http://www.sjscycles.co.uk/velox-cotton-cloth-adhesive-handlebar-tape-black-prod12629/&quot;&gt;cheapest bar tape&lt;/a&gt; I could find.&lt;/li&gt;
&lt;li&gt;A new rear wheel, &lt;a href=&quot;http://www.rigida.com/en/products/road/rims-4/flyer&quot;&gt;Rigida Flyer rims&lt;/a&gt; with  King Kong track hub (&lt;a href=&quot;http://www.sjscycles.co.uk/wheel-rear-fixed-free-king-kong-219r-rear-track-hub-and-silver-rigida-rim-prod20925/&quot;&gt;£70 from SJS&lt;/a&gt;). Only got this because I destroyed the original wheel (well, the hub anyway - story for another time). Two good things about this wheel, no make that three: &lt;strong&gt;1)&lt;/strong&gt; sealed bearings, &lt;strong&gt;2)&lt;/strong&gt; it came with a 16 tooth sprocket - the Subway Zero is a 42:15 fixed and a 42:16 freewheel ratio. Since I've ridden fixed ever since I'd got home from Halfords I was fine with a new wheel being fixed only (the freewheel on the original wheel just rusted solid through lack of use) and the one tooth difference in fixed ratio has made the world of difference in coping with headwinds, etc. &lt;strong&gt;3)&lt;/strong&gt; It comes with proper tracknuts; that is a nut that grips both sides of the frame. The original wheel didn't and even with the chain tugs the chain slackened after a few weeks of riding.&lt;/li&gt;
&lt;li&gt;A &lt;a href=&quot;http://www.sjscycles.co.uk/zefal-zefal-swan-road-rear-mudguard-prod20592/&quot;&gt;Zefal Swan Road Mudguard&lt;/a&gt; for £10. I only wanted the rear, but some how got the front as well. The front is pretty pointless, it doesn't do anything, but the rear works great - soggy bottoms are no fun after a few miles. It actually looks pretty good for a mudguard and can be attached and detached in seconds. Great for commuting, but no good if you were riding in a pack, etc as the bike behind would still get sprayed. I'd actually like full length mud guards, but again, quite expensive.&lt;/li&gt;
&lt;li&gt;Vittoria Rubino 23mm slick tyres. &lt;a href=&quot;http://www.sjscycles.co.uk/vittoria-vittoria-rubino-slick-rigid-tyre-anthracite-700-x-23-(23-622&quot;&gt;£11 from SJS&lt;/a&gt;-prod18668/). The bike comes with 28mm tyres and I actually wasn't intending to go with anything thinner, but these were the cheapest decent tyres I could find. For winter, I'm going to get some &lt;a href=&quot;http://www.bike24.com/1.php?content=8;navigation=1;menu=1000,2,103,104;product=7243&quot;&gt;Schwalbe Marathon Winter tyres from bike24&lt;/a&gt; (can't find a UK stockist). Strictly speaking the rims on the wheels &lt;a href=&quot;http://www.sheldonbrown.com/tire_sizing.html#width&quot;&gt;should only go up to 25mm&lt;/a&gt; wide tyres, but seeing as how the bike ships with 28mm tyres I'm going to risk a 35mm tyre. New rims/wheels just for winter are out of the question. A &lt;a href=&quot;http://www.boardmanbikes.com/cx/CX_Pro.html&quot;&gt;cross bike I'd love&lt;/a&gt;, comes with &lt;a href=&quot;http://bike.com/mavic-cxp-23-black-32-holes-mavic-bike-rims&quot;&gt;Mavic CXP23 rims&lt;/a&gt; and 35mm tyres and yet the rims are ERTO 622x15 and so should only go up to 32mm in theory. So I reckon it's worth a go.&lt;/li&gt;
&lt;/ul&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>100% Lycra Free</title>
   <link href="http://atomicules.co.uk/2010/09/27/100-lycra-free.html"/>
   <updated>2010-09-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/27/100-lycra-free</id>
   <content type="html">
		
				 &lt;p&gt;Since I've never considered myself a proper cyclist I've never owned or worn Lycra (have you seen the price of cycling jerseys?). And over shorter distances it doesn't really matter what you wear. Top hat and tails will do you fine. I really thought though I'd need some cycling shorts for some comfort and padding over the longer distances, and these were top of my wish/want list. But owing to having to spend money on other, unexpected things like a new wheel and handlebars, it's now been over two months wearing normal t-shirts and shorts and no ill effects. So this is just to say that yes, you can spend a whopping amount of cash if you want to get into (or perhaps more 'fit' into cycling; be taken 'seriously'), but you don't have to - the end result is you still get from point A to point B.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Her Majesty's Right Cun...</title>
   <link href="http://atomicules.co.uk/2010/09/25/her-majestys-right-cun.html"/>
   <updated>2010-09-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/25/her-majestys-right-cun</id>
   <content type="html">
		
				 &lt;p&gt;The HMRC recently '&lt;a href=&quot;http://www.hmrc.gov.uk/manuals/eimanual/eim21667a.htm&quot;&gt;clarified&lt;/a&gt;' part of the &lt;a href=&quot;http://www.cycletoworkalliance.org.uk/&quot;&gt;cycle2work&lt;/a&gt; scheme. Which is all well and good, but the net effect has been that my employer has effectively withdrawn the scheme until further notice. Googling around, this seems to have happened elsewhere as well. This wouldn't have been so bad if I hadn't of been expecting to pick up a new bike this year after we moved house. The first couple of weeks cycling I mostly seemed to have good weather with little wind, or a tailwind, and I was thinking, &quot;It's not actually that bad doing this on a fixed gear bike, maybe I could just keep doing it?&quot; (although I still wanted a spare bike for those horrible occasions when I find a flat tyre in the morning so I could just hop on the spare instead of changing inner tubes and being late; I was just considering getting another fixed gear). But then the headwinds started and that was it, I was getting me some gears!&lt;/p&gt;

&lt;p&gt;And then the HMRC go and screw everything up. And so fixed gear it has been and fixed gear it will continue to be. And in fairness I can cope with the headwinds now, I'm just slow. But I would still like a spare.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Line of Best Fit Podcast</title>
   <link href="http://atomicules.co.uk/2010/09/02/line-of-best-fit-podcast.html"/>
   <updated>2010-09-02T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/09/02/line-of-best-fit-podcast</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.thelineofbestfit.com/2010/09/the-line-of-best-fit-podcast-september/&quot;&gt;&#187; Line of Best Fit Podcast&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Well! I never knew they did a podcast. Subscribed. Now I just need to find time to listen.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Shoes 3 Policeman released!</title>
   <link href="http://atomicules.co.uk/2010/08/24/shoes-3-policeman-released.html"/>
   <updated>2010-08-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/08/24/shoes-3-policeman-released</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://whyday.tumblr.com/post/979051903/shoes-3-policeman-0-r1514-released&quot; class=&quot;tumblr_blog&quot;&gt;whyday&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;The Shoes team has announced the Whyday release of Shoes 3.&lt;/p&gt;

&lt;p&gt;Learn more at &lt;a href=&quot;http://shoes.heroku.com&quot;&gt;http://shoes.heroku.com&lt;/a&gt;, or download at &lt;a href=&quot;http://shoes.heroku.com/downloads&quot;&gt;&lt;a href=&quot;http://shoes.heroku.com/downloads&quot;&gt;http://shoes.heroku.com/downloads&lt;/a&gt;&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Never quite got round to posting this on whyday, so to save me the effort I'll belatedly reblog from the whyday blog itself.&lt;/p&gt;

&lt;p&gt;It's difficult to name names without fear of missing someone out, or mis-crediting someone, but there are some names that have stuck in my head: A huge amount of credit goes to &lt;a href=&quot;http://ashbb.github.com/&quot;&gt;ashbb&lt;/a&gt; who, in my opinion, has almost single-handedly kept Shoes development going since Shoes 2. But credit also due to &lt;a href=&quot;http://www.steveklabnik.com/&quot;&gt;Steve Klabnik&lt;/a&gt; (of &lt;a href=&quot;http://hacketyhack.heroku.com/&quot;&gt;HacketyHack&lt;/a&gt;, which uses Shoes and so really he had no choice but to help) who built on &lt;a href=&quot;http://atomicules.co.uk/2010/05/06/tying-our-shoelaces.html&quot;&gt;previous efforts&lt;/a&gt; and got it working on OSX Snow Leopard, &lt;a href=&quot;http://werehosed.mvmanila.com/&quot;&gt;Cecil Coupe&lt;/a&gt; (for Linux expertise and wisdom), &lt;a href=&quot;http://devyn.heroku.com/&quot;&gt;Devyn Cairns&lt;/a&gt; (for keeping the community going), &lt;a href=&quot;http://d.hatena.ne.jp/tnobuhito&quot;&gt;tnobuhito&lt;/a&gt; for Japanese manual, &lt;a href=&quot;http://github.com/wilkie&quot;&gt;Wilkie&lt;/a&gt; for some Vista fixes, and &lt;a href=&quot;http://zem.novylen.net/&quot;&gt;Martin DeMello&lt;/a&gt; for improving the rakefile.&lt;/p&gt;

&lt;p&gt;One day, when all the house move has settled down (we do now have the computer out and on its own desk), I shall see if I can sort out a Shoes 3 build for OSXPPC. In the meantime though, if you follow the &lt;a href=&quot;http://librelist.com/browser/shoes/&quot;&gt;mailing list&lt;/a&gt;, thoughts are already on Shoes 4!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Lost in Pixels' pinhole 'Clamera'</title>
   <link href="http://atomicules.co.uk/2010/08/24/lost-in-pixels-pinhole-clamera.html"/>
   <updated>2010-08-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/08/24/lost-in-pixels-pinhole-clamera</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/photos/lostinpixels/4921255688/&quot;&gt;&#187; Lost in Pixels' pinhole 'Clamera'&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;And the &lt;a href=&quot;http://www.flickr.com/photos/lostinpixels/4921388846/&quot;&gt;resulting image&lt;/a&gt;. Fabulous!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>More Money More</title>
   <link href="http://atomicules.co.uk/2010/08/23/more-money-more.html"/>
   <updated>2010-08-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/08/23/more-money-more</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/nationalarchives/4901175581/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4095/4901175581_6515a8b235.jpg&quot; alt=&quot;More Money More&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/nationalarchives/4901175581/&quot;&gt;More Money, More Fun&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/nationalarchives/&quot;&gt;The National Archives&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href=&quot;http://www.nationalarchives.gov.uk/legal/copyright.htm#flickr&quot;&gt;No known copyright restrictions&lt;/a&gt;. Catalogue reference:  &lt;a href=&quot;http://www.nationalarchives.gov.uk/catalogue/displaycataloguedetails.asp?CATLN=6&amp;amp;CATID=1978479&amp;amp;SearchInit=4&amp;amp;SearchType=6&amp;amp;CATREF=inf+13/254&quot;&gt;INF 13/254&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Lumen Print Pushing</title>
   <link href="http://atomicules.co.uk/2010/08/10/lumen-print-pushing.html"/>
   <updated>2010-08-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/08/10/lumen-print-pushing</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/lostinpixels/4854387093/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4100/4854387093_25b480779d.jpg&quot; alt=&quot;Lumen Print Pushing&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.flickr.com/photos/lostinpixels/4854387093/&quot;&gt;Lumen print - Pushing Daises&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/photos/lostinpixels/&quot;&gt;lost in pixels&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;How beautiful is that?&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Blogged via permission of CC &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/&quot;&gt;BY-NC-ND&lt;/a&gt; license&lt;/em&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>This Is From Almost Two Years Ago But Is Just</title>
   <link href="http://atomicules.co.uk/2010/07/23/this-is-from-almost-two-years-ago-but-is-just.html"/>
   <updated>2010-07-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/23/this-is-from-almost-two-years-ago-but-is-just</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/2834882579/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3113/2834882579_9c1099db90.jpg&quot; alt=&quot;This Is From Almost Two Years Ago But Is Just&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;This is from (almost) two years ago, but is just to say farewell to what has seemed like my own personal sunset generator. I shall miss this field and the views. Especially the convenience!&lt;/p&gt;

&lt;p&gt;On to new fields and new views from tomorrow.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>ResophNotes - Quick Notes on Windows</title>
   <link href="http://atomicules.co.uk/2010/07/22/resophnotes-quick-notes-on-windows.html"/>
   <updated>2010-07-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/22/resophnotes-quick-notes-on-windows</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.resoph.com/ResophNotes/Welcome.html&quot;&gt;&#187; ResophNotes - Quick Notes on Windows&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I've wanted (I think*) something like this on Windows for awhile: a client that syncs with &lt;a href=&quot;http://simplenoteapp.com/&quot;&gt;Simplenote&lt;/a&gt;. I actually like the look of Simple Software &lt;a href=&quot;http://ufridman.org/notes.html&quot;&gt;Notes&lt;/a&gt; better (after all, simpler is better), but I can't use it at work because it doesn't include proxy support whereas ResophNotes does.&lt;/p&gt;

&lt;p&gt;* I say &lt;em&gt;think&lt;/em&gt; because I'd had Resophnotes for awhile, but hadn't used it because I wasn't sure I wanted any personal information synchronised on my work machine - I try to keep personal info off it as much as possible. But then I found out there was a portable version of Resophnotes so I've given that a whirl. But I guess then I need to think about encrypting my USB drive. And also, 15MB seems overkill for something as 'simple' as simplenote. So I might just return to using the web interface as a desktop app via Chrome. Oh decisions!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Minimise Class Icons In Diagrams If Enabled Then</title>
   <link href="http://atomicules.co.uk/2010/07/22/minimise-class-icons-in-diagrams-if-enabled-then.html"/>
   <updated>2010-07-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/22/minimise-class-icons-in-diagrams-if-enabled-then</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Minimise Class icons in diagrams. If enabled, then the attributes and operations compartiments will not be shown in the classes on the generated class diagrams. Note: This item is checked by default, and is overseen by many users, which are then surprised by the result.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;em&gt;&lt;a href=&quot;http://argouml-stats.tigris.org/documentation/manual-0.26/ch10s03.html#s3.ref.menu_import_sources&quot;&gt;argouml-stats: 10.3. The File Menu&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So something is enabled by default that surprises many users? That doesn't strike me as good interface design. Anyway, thanks to a bit of googling and &lt;a href=&quot;http://www.velocityreviews.com/forums/showpost.php?p=582247&amp;amp;postcount=10&quot;&gt;this forum post&lt;/a&gt; I figured it out.&lt;/p&gt;

&lt;p&gt;I've only got a simple Java app and really didn't want to have to install Netbeans or Eclipse just to generate a Class Diagram, so I'm glad I got &lt;a href=&quot;http://argouml.tigris.org/&quot;&gt;ArgoUML out&lt;/a&gt; figured.&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Currently Entertaining My Ears</title>
   <link href="http://atomicules.co.uk/2010/07/22/currently-entertaining-my-ears.html"/>
   <updated>2010-07-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/22/currently-entertaining-my-ears</id>
   <content type="html">
		
				 &lt;p&gt;I need to get my life so it's single piece flow, but in the meantime I seem to be working in batches. And this batch is music.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.sviib.com/&quot;&gt;School of Seven Bells - Disconnect from Desire&lt;/a&gt;. When &lt;a href=&quot;http://www.thelineofbestfit.com/2010/07/school-of-seven-bells-disconnect-from-desire/&quot;&gt;something&lt;/a&gt; &lt;a href=&quot;http://hicksdesign.co.uk/journal/school-of-seven-bells-disconnect-from-desire-&quot;&gt;gets&lt;/a&gt; &lt;a href=&quot;http://www.thelineofbestfit.com/2010/07/tlobf-interview-school-of-seven-bells/&quot;&gt;mentioned&lt;/a&gt; enough it's worth checking out, but after first listen (It was at work and I was totally &quot;in the zone&quot;, so not paying full attention, trying to get some JavaScript in XSLT to work cross browser: Chrome, Firefix and IE6 - yes IE6. But Firefox gave me as much grief!) I can only say it's ok-ish. Need to listen again. Was a bit like background music, but that could be because it was. It's a bit - no, very - Stereolab-ish (especially on Babelonia). Which isn't a bad thing, but I've not listened to Stereolab in years. Perhaps it'll grow on me after a few more listens - if I notice it's playing. And, also, &quot;electronic dance-floor beats&quot;? Where? I missed them.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.herbaliser.com/&quot;&gt;Herbaliser - Herbal Tonic&lt;/a&gt;. Sensual Woman. Awesome. Been listening to this track for many years. Have no idea how I came across it, probably back in days of Napster, so a lovely surprise that this popped up whilst listening to this album. Made me smile. Made my day.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://thechemicalbrothers.com/&quot;&gt;Chemical Brothers - Further&lt;/a&gt;. From Brothers Gonna Work It Out (whichever track those lyrics are actually from; that's the first time I recall hearing the Chemical Brothers) up to Push the Button, loved it all. But that weird Salmon Dance thing really put me off. This is more of a return to form. Bit slow to get going, but skip about the first 6 minutes and it's there - of course to be fully appreciated probably requires you to be stood in a field off your tits.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.mumfordandsons.com/&quot;&gt;Mumford &amp;amp; Sons - Sign No More&lt;/a&gt;. Got the free track on iTunes ages ago, wasn't that fussed. Also, bit disapponted to find out they aren't really a &quot;Mumford&quot; and sons; not even related! But, have been watching Glastonbury and T in The Park on the box and The Cave is just so good to watch live - more so because the  crowds just look so happy. So I love The Cave and the rest of the album is ok too. Reminds me a bit of Fleet Foxes, but much better.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://massiveattack.com/&quot;&gt;Massive Attack - Heligoland&lt;/a&gt; - Meh, sounds just like 100th Window to me, so a bit dark and depressing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.pendulum.com/&quot;&gt;Pendulum - Immersion&lt;/a&gt; - I feel a little bit wrong to be listening to these. Like I shouldn't be allowed (Am I too old?). But I love the stuff they do with Freestylers and I remembered watching them last year (on the telly) at a festival and, much like watching Mumford &amp;amp; Sons, it just looked like a hell of a lot of fun. I like Waterclour,  But otherwise. Not quite for me.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.audiobullys.com/&quot;&gt;Audio bullies - Higher Than the Eiffel&lt;/a&gt; - Awesome. There's your electronic dance floor beats. This is going to get some listens.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>On Camping vs Sinatra</title>
   <link href="http://atomicules.co.uk/2010/07/20/on-camping-vs-sinatra.html"/>
   <updated>2010-07-20T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/20/on-camping-vs-sinatra</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://librelist.com/browser//hacketyhack/2010/7/20/on-camping-vs-sinatra/&quot;&gt;&#187; On Camping vs Sinatra&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://judofyr.net/&quot;&gt;Magnus Holm's&lt;/a&gt; email to the &lt;a href=&quot;http://librelist.com/browser/hacketyhack/&quot;&gt;Hackety Hack mailing list&lt;/a&gt;. His email is written in Ruby so you can download and run it. Mind blown.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Back to Spreadsheets?</title>
   <link href="http://atomicules.co.uk/2010/07/07/back-to-spreadsheets.html"/>
   <updated>2010-07-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/07/07/back-to-spreadsheets</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://www.wesabe.com&quot;&gt;Wesabe are shutting down&lt;/a&gt;. Which is disappointing, more than annoying; I feel worse for the guys who ran it. Credit to them though, and confirming my belief that I made the right choice with them (even if they are closing):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;They've always offered quick, painless data export - So I've not lost anything I've put in.&lt;/li&gt;
&lt;li&gt;They are open-sourcing their code - If you are going out, do it with style!&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;At the time, I thought they didn't have a business plan, but it turns out &lt;a href=&quot;http://bankingkismet.wordpress.com/2009/11/25/wesabe-launches-springboard/&quot;&gt;they did&lt;/a&gt; (And while it's still around, the &lt;a href=&quot;http://blog.wesabe.com/2009/11/23/introducing-getspringboard-com/&quot;&gt;announcement from Wesabe&lt;/a&gt; themselves).&lt;/p&gt;

&lt;p&gt;And on the face of it, it seems like a great idea: take a product built and tested on end users (lots of end users since it was offered for free) and sell to banks. Basically any financial institution could provide a Wesabe interface and functionality for their users with minimal implementation.&lt;/p&gt;

&lt;p&gt;But then you've got to remember just how crap banks are. They don't give a shit about their punters so they are hardly going to splash out the cash for something that benefits their customers more than them. Shame though as the banks could do with dragging into the 21st century: &lt;em&gt;cough&lt;/em&gt; Smile the 'Internet' (?!) bank.&lt;/p&gt;

&lt;p&gt;What next? I really don't want to use &lt;a href=&quot;http://atomicules.co.uk/2009/07/07/ditching-spreadsheets-for-budgeting.html&quot;&gt;spreadsheets&lt;/a&gt; again. And Mint is still 100% useless outside of the US. But I have found three new alternatives:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.pocketsmith.com/&quot;&gt;Pocketsmith&lt;/a&gt; (free and pay) - Looks interesting as they have a different (calendar) based approach and also focus more on forecasting - which is what I am most interested in. Whereas Wesabe was primarily analysing historical spending (although I managed to do limited forecasting with it using manual cash accounts).&lt;/p&gt;

&lt;p&gt;  Giving these a whirl at the moment. Bit tricky to get going; Lots of screens, functionality, etc. Much steeper learning curve and so I am still trying to figure out if I'm using it right; for instance I have a forecast calendar (that is currently wildly optimistic) and a transaction calendar that shows what my bank balance currently is. I would have thought I should be able to get them to match up, well at least be able to use the forecast events to see how I will be next week, etc. But I haven't figured this out yet. Perhaps I manually adjust the forecast balance for a particular day?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.greensherpa.com/&quot;&gt;Greensherpa&lt;/a&gt; (pay only, but with 30 day free trial) - I'm not adverse to paying and they have good privacy (but here, I'll talk more about Pocketsmith).&lt;/p&gt;

&lt;p&gt;  I like how Pocketsmith do this: Have a fully functional free account, so gets you in and using it, but to make it really useful you have to pay to upgrade (so you can export data and add more than eight budget events, because eight isn't really enough; although you can (and should) consolidate events - I.e. If all your utility bills come out on the 1st of every month then group the whole lot as one budget event and match all merchants to this one event. Utility bills tend to be fixed; it isn't a 'budget' you really want to track).&lt;/p&gt;

&lt;p&gt;  Also, 30 days can go by quite quickly. I've had an account with Pocketsmith for 12 days now, but haven't had the time to use it everyday and so still haven't figured it out.&lt;/p&gt;

&lt;p&gt;  And lastly, Pocketsmith's middle plan (the upgrade from Free) is cheaper than Greensherpa.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://www.lovemoney.com/onlinebanking/&quot;&gt;lovemoney&lt;/a&gt; (Free, supported through targeted advertising, etc - you have to fill out a profile to register) - Missed this one last time round. UK based with UK bank support. &lt;a href=&quot;http://www.lovemoney.com/feedback/onlinebanking/thread/128585/wesabe-exodus&quot;&gt;Can't import data&lt;/a&gt;, but with automatic bank support I was tempted to try this.&lt;/p&gt;

&lt;p&gt;  The good: Worked flawlessly with Smile and (I think) pulled in the whole last 12 months of transactions (all that is available). Also made some attempt to automatically categorise payments. You can also set the month start date (which I've done, but is now confusingly reporting me as being in the red - not figured that one out yet).&lt;/p&gt;

&lt;p&gt;  The bad: No manual entry, not even a cash account so impossible to budget/forecast even on a most basic level like I did in Wesabe. But still, since it's automatic, might just let this one run until they add more functionality and see if I can work out Pocketsmith in the meantime.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>110 Format lives again</title>
   <link href="http://atomicules.co.uk/2010/06/29/110-format-lives-again.html"/>
   <updated>2010-06-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/06/29/110-format-lives-again</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.adox.de/ADOX_Filme/Pocketfilm/110.html&quot;&gt;&#187; 110 Format lives again&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;em&gt;- via &lt;a href=&quot;http://www.flickr.com/groups/110/discuss/72157621784612065/72157624375641636/&quot;&gt;choschiba in the Flickr 110 Format group&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Adox are hand making 110 film cartridges. Available for pre-order. Plus, it looks like they are in &lt;a href=&quot;http://www.adox.de/ADOX_Filme/ADC200/Instamatic.html&quot;&gt;talks to take over 126 format production&lt;/a&gt;, if all goes well it would be available again in 2012.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Photo Blogged With Kind Permission Of</title>
   <link href="http://atomicules.co.uk/2010/06/25/photo-blogged-with-kind-permission-of.html"/>
   <updated>2010-06-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/06/25/photo-blogged-with-kind-permission-of</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/iri5/4109028367/in/set-72157611954107572/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2723/4109028367_d9d6549d7c.jpg&quot; alt=&quot;Photo Blogged With Kind Permission Of&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;em&gt;Photo blogged with kind permission of &lt;a href=&quot;http://www.flickr.com/photos/iri5/&quot;&gt;iri5&lt;/a&gt; (and on that note if you want to reblog, it really wouldn't do any harm to ask her permission, she seems very nice).&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It's not exactly uncommon for me to see or come across things that are better than anything I could do, be it bits of code or bits of art or anything else. We are surrounded by people who are better than ourselves. That's a good thing as long as you let it give you hope and let it inspire you, or at the very least just enjoy what other people can do.&lt;/p&gt;

&lt;p&gt;But then there's the things you come across that are not only good, but also fall into the category of something I'd never-in-a-million-years have thought of doing.&lt;/p&gt;

&lt;p&gt;It's difficult to pick an overall favourite from &lt;a href=&quot;http://www.flickr.com/photos/iri5/sets/72157611954107572/&quot;&gt;The Ghost in a Machine&lt;/a&gt; set, but I'm going to with this one (this &lt;a href=&quot;http://www.flickr.com/photos/iri5/4263763692/in/set-72157611954107572/&quot;&gt;work-in-progress&lt;/a&gt; one a close second), since I was a bit partial to Nine Inch Nails back in the day and the Broken EP was on tape, but recorded on one side only (well, that's how I recall it, but &lt;a href=&quot;http://en.wikipedia.org/wiki/Broken_(EP&quot;&gt;Wikipedia&lt;/a&gt;) says side two was 15mins of silence and then two hidden tracks - I can't recall if we ever twigged that as kids; wonder if my old school friend still has the cassette?; it was in the days where we would take turns to buy albums and then lend them to each other to tape; ah! high speed dubbing - ripping CDs or downloading from iTunes is just not the same).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.iri5.com/&quot;&gt;iri5&lt;/a&gt; is an Georgia based artist who is amazingly talented. And I've detracted far too much with my inane ramblings.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>10 Years in Tech: iPhone 4 vs iMac G3</title>
   <link href="http://atomicules.co.uk/2010/06/25/10-years-in-tech-iphone-4-vs-imac-g3.html"/>
   <updated>2010-06-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/06/25/10-years-in-tech-iphone-4-vs-imac-g3</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.macstories.net/news/2000-imac-compared-to-the-iphone-4/&quot;&gt;&#187; 10 Years in Tech: iPhone 4 vs iMac G3&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This is interesting. Especially to me, since I owned an iMac G3*; of slightly lower spec than the one in the article as well. I loved that sage iMac (and the iSub I had with it), it was the first time I realised you could smile just by sitting in front of a computer. I'd (obviously) never experienced that will the beige Windows boxes I'd used before; almost with a SGI machine I'd used at work. It's not just the comparison of specs that is interesting: the iPhone costs half of what the iMac cost me; which is probably still the single most expensive item I've bought myself.&lt;/p&gt;

&lt;p&gt;Ten years ago it was foreseeable that iMacs would be way better down the road, but that mobile phones, cameras and GPS units would be small add-ons to a handheld computer? It will be interesting to see what other gadgets are obsoleted in ten years time. The computer is king at the moment.&lt;/p&gt;

&lt;p&gt;And interesting that I came across this article as I post this. Who'd have thought that &lt;a href=&quot;http://www.mobilecrunch.com/2010/06/22/the-sad-tale-of-nokias-sinking-market-cap-where-i-come-over-all-nostalgic/&quot;&gt;Nokia would  be like this&lt;/a&gt;? And basically because mobile phones (as a standalone item) are dead (not counting luddite-me with my Motorola F3).&lt;/p&gt;

&lt;p&gt; * Unfortunately I don't own an iPhone 4.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Polaroid &gt; Digital</title>
   <link href="http://atomicules.co.uk/2010/06/22/polaroid-digital.html"/>
   <updated>2010-06-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/06/22/polaroid-digital</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://news.bbc.co.uk/go/rss/-/1/hi/world/us_and_canada/10355526.stm&quot;&gt;&#187; Polaroid > Digital&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;It just is.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Mudhoney UK Tour</title>
   <link href="http://atomicules.co.uk/2010/06/10/mudhoney-uk-tour.html"/>
   <updated>2010-06-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/06/10/mudhoney-uk-tour</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.thelineofbestfit.com/2010/06/mudhoney-confirm-uk-tour-dates/&quot;&gt;&#187; Mudhoney UK Tour&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Wow. I didn't even realise they were still going. Brings back memories - not that I've seen them; never did get to see them live when I was really into them (school years), but I associate them with good times. Plus Pokin' Around is on my (now defunct) Muxtape (basically my all time favourites mixtape).&lt;/p&gt;

&lt;p&gt;Unfortunately I think my gig days are over, which is a shame as this is actually in reach.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Rex The Dog Synthpop Set Recorded Live At</title>
   <link href="http://atomicules.co.uk/2010/05/31/rex-the-dog-synthpop-set-recorded-live-at.html"/>
   <updated>2010-05-31T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/31/rex-the-dog-synthpop-set-recorded-live-at</id>
   <content type="html">
		
				 &lt;p&gt;&lt;object type=&quot;application/x-shockwave-flash&quot; data=&quot;http://player.soundcloud.com/player.swf?url=http%3A%2F%2Fsoundcloud.com%2Frexthedog1980%2Frex-may-2010-musicalia&quot; style=&quot;width: 100%&quot; height=&quot;81&quot;&gt;&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://soundcloud.com/rexthedog1980/rex-may-2010-musicalia&quot;&gt;Rex the Dog - Synthpop set recorded live at Musicalia May 2010&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This is ace. Ghostbusters and Kids in America. Genius.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Shoefiti I Sat On This For Awhile Because I Was</title>
   <link href="http://atomicules.co.uk/2010/05/26/shoefiti-i-sat-on-this-for-awhile-because-i-was.html"/>
   <updated>2010-05-26T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/26/shoefiti-i-sat-on-this-for-awhile-because-i-was</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://github.com/atomicules/shoefiti&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_l315r7ufnU1qzcagp.jpg&quot; alt=&quot;Shoefiti I Sat On This For Awhile Because I Was&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://github.com/atomicules/shoefiti&quot;&gt;Shoefiti&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I sat on this for awhile because I was hoping to make it better before I 'released' it, but I've come across two major roadblocks: &lt;em&gt;1)&lt;/em&gt; I'm not very good &lt;em&gt;2)&lt;/em&gt; I don't have a lot of time. So I decided I might as well just make it public now.&lt;/p&gt;

&lt;p&gt;It's a simple Shoes browser for &lt;a href=&quot;librelist.com/&quot;&gt;Librelist&lt;/a&gt;. When I started it, it was quite a clever idea as the &lt;a href=&quot;http://librelist.com/browser/&quot;&gt;Librelist Archive Browser&lt;/a&gt; was just a list of lists and a calendar. You had to select the list and then guess which days had messages by clicking on the calendar. I modelled this app on that interface, but with the benefit that the calendar indicated which days had messages.&lt;/p&gt;

&lt;p&gt;Of course, since then, the Librelist browser has improved greatly (although there is a significant delay/bug in recent messages not appearing) by implementing a threaded style view of archives.&lt;/p&gt;

&lt;p&gt;Should I ever &lt;em&gt;a)&lt;/em&gt; get clever and/or &lt;em&gt;b)&lt;/em&gt; get lots of time, I'd still like to improve this, just for me.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>My Flickr All Time Search Stats Since Late 2007</title>
   <link href="http://atomicules.co.uk/2010/05/21/my-flickr-all-time-search-stats-since-late-2007.html"/>
   <updated>2010-05-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/21/my-flickr-all-time-search-stats-since-late-2007</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://flickr.vispillo.org/output-authed/1274097387973.html&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_l2micbgGOU1qzcagpo1_r1_500.png&quot; alt=&quot;My Flickr All Time Search Stats Since Late 2007&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;My Flickr all time search stats, since late 2007, click on the image to get more info.&lt;/p&gt;

&lt;p&gt;Awhile ago Flickr &lt;a href=&quot;http://blog.flickr.net/en/2009/03/16/stats-for-today-and-more-yesterdays/&quot;&gt;changed from providing all-time stats&lt;/a&gt; to a rolling 28 days. They then &lt;a href=&quot;http://blog.flickr.net/en/2010/03/03/historical-referrer-data/&quot;&gt;made available for download&lt;/a&gt;, for a limited time, the historical all-time data. This 'limited time' comes to the an end at 01-Jun-2010, and to be honest I wasn't going to bother downloading almost sixty Excel/CSV files dating back to 2007, because the likelihood was I'd never do anything with them. But then I heard about &lt;a href=&quot;http://www.flickr.com/services/apps/72157623630152423&quot;&gt;flickrstats&lt;/a&gt; by &lt;a href=&quot;http://www.flickr.com/services/apps/by/vispillo&quot;&gt;visp&lt;/a&gt;, simply authenticate the app and it gets you files for you, analyses them, and presents them in a lovely graph. Visp has also put together a &lt;a href=&quot;http://www.flickr.com/photos/vispillo/4611408243/&quot;&gt;demo video&lt;/a&gt; of it in action.&lt;/p&gt;

&lt;p&gt;So if you are a Flickr Pro member, it's well worth using this app before the 01-Jun.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>HacketyHack is a Ruby Summer of Code Project</title>
   <link href="http://atomicules.co.uk/2010/05/21/hacketyhack-is-a-ruby-summer-of-code-project.html"/>
   <updated>2010-05-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/21/hacketyhack-is-a-ruby-summer-of-code-project</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://rubysoc.org/projects&quot;&gt;&#187; HacketyHack is a Ruby Summer of Code Project&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://shoes.heroku.com/&quot;&gt;Shoes&lt;/a&gt; is the &quot;soul&quot; of &lt;a href=&quot;http://hacketyhack.heroku.com/&quot;&gt;HacketyHack&lt;/a&gt;. This is fantastic news.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Vim Colour Schemes</title>
   <link href="http://atomicules.co.uk/2010/05/12/vim-colour-schemes.html"/>
   <updated>2010-05-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/12/vim-colour-schemes</id>
   <content type="html">
		
				 &lt;p&gt;Owing to having to set-up Vim again on my work machine, I decided to have a look around to see if I could find a better colour scheme than &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1492&quot;&gt;pyte&lt;/a&gt;, which I've been using for awhile.&lt;/p&gt;

&lt;p&gt;It seems there are a few good dark background ones (I didn't find any other light background ones):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.infinitered.com/entries/show/8&quot;&gt;IR_Black&lt;/a&gt; - Very good.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://dengmao.wordpress.com/2007/01/22/vim-color-scheme-wombat/&quot;&gt;wombat&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://slinky.imukuppi.org/zenburnpage/&quot;&gt;zenburn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Of those I like IR_Black best, but I think I'll likely toogle between pyte and IR_Black as overall I'm definitely more of a light background guy and don't really get the whole &quot;view on black&quot; obsession.&lt;/p&gt;

&lt;p&gt;I also went looking to see if the toolbar icons could be improved, because they are pretty terrible on Windows and was surprised to find someone &lt;a href=&quot;http://zaaghad.blogspot.com/2009/10/nice-gvim-toolbar-icons-for-windows.html&quot;&gt;had tackled this already&lt;/a&gt;, but I've decided to hide the toolbar as I don't really ever use it. So that solves that problem.&lt;/p&gt;

&lt;p&gt;And note to self:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;guioptions&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-=&lt;/span&gt;T  &lt;span class=&quot;c&quot;&gt;&amp;quot;remove toolbar&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;colorscheme&lt;/span&gt; ir_black &lt;span class=&quot;c&quot;&gt;&amp;quot;set default colour scheme&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;




			
   </content>
 </entry>
 
 <entry>
   <title>Shoes policeman builds for Linux</title>
   <link href="http://atomicules.co.uk/2010/05/12/a.html"/>
   <updated>2010-05-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/12/a</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://twitter.com/ashbb/status/13735045248&quot;&gt;&#187; Shoes policeman builds for Linux&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://ashbb.github.com/&quot;&gt;ashbb&lt;/a&gt; is now knocking out &lt;a href=&quot;http://www.rin-shun.com/shoes/index.html&quot;&gt;recent Shoes builds&lt;/a&gt; for Linux as well as Windows. That just leaves us with OSX Snow Leopard to go...&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Some Ubuntu 10.04 Notes...</title>
   <link href="http://atomicules.co.uk/2010/05/11/some-ubuntu-10-04-notes.html"/>
   <updated>2010-05-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/11/some-ubuntu-10-04-notes</id>
   <content type="html">
		
				 &lt;p&gt;...due to my &lt;a href=&quot;http://twitter.com/atomicules/status/13262677183&quot;&gt;unexpected&lt;/a&gt; &lt;a href=&quot;http://twitter.com/i5m/status/13262725543&quot;&gt;Ubuntu&lt;/a&gt; &lt;a href=&quot;http://twitter.com/atomicules/status/13377189047&quot;&gt;trial&lt;/a&gt; at work.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It's bloody good. Looks lovely. I'd quite happily use this full time if I had that choice/option (not like there's any competition with XP, but I mean I'd also switch from OSX for this; Was never a fan of the brown theme, preferring &lt;a href=&quot;http://www.linuxmint.com/&quot;&gt;Mint&lt;/a&gt;, but I prefer this new theme to Mint).&lt;/li&gt;
&lt;li&gt;Does multiple monitor support pretty much no problem. (The first time I set them up, laptop (1440x900) and monitor (1280x1024), I had a few glitches getting the settings to work: I had to apply the settings a few times and toggle between settings, etc until it worked ok. But subsequent times it worked first go. Bizarre.)&lt;/li&gt;
&lt;li&gt;You can &lt;a href=&quot;http://gaarai.com/2009/11/03/move-gnome-panels-to-a-different-monitor-in-ubuntu/&quot;&gt;move the menus bars to the 'main' monitor&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;To get &lt;a href=&quot;http://www.lastpass.com&quot;&gt;Lastpass&lt;/a&gt; working, had to launch from terminal and be sure to export HTTPS_PROXY before hand&lt;/li&gt;
&lt;li&gt;Non-persistant LiveUSBs aren't that bad afterall: I used to use &lt;a href=&quot;http://www.slax.org&quot;&gt;Slax&lt;/a&gt; a fair bit, because it's small, looks good and I could have a persistant install on a 1GB usb stick (I don't have the min 2gb for a persitant Ubuntu install :-( ). But then I twigged, there's not that much downside to a LiveUSB install in cloud-computing land: I've just moved my Firefox profile onto another USB stick and I can reconnect to that each time I used the LiveUSB; tweaking other settings each time isn't so bad.&lt;/li&gt;
&lt;li&gt;Be VERY careful when installing to an external USB drive from the LiveUSB. The default settings will happily trounce the MBR of the internal drive. And although in &lt;a href=&quot;http://community.mcafee.com/message/98075&quot;&gt;theory&lt;/a&gt; this is &lt;a href=&quot;http://community.mcafee.com/message/4235&quot;&gt;fixable&lt;/a&gt;, in mine it wasn't. Whole laptop had to be re-imaged. Ooops.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Firefox 4: the HTML5 parser – inline SVG and MathML</title>
   <link href="http://atomicules.co.uk/2010/05/11/firefox-4-the-html5-parser-inline-svg-and-mathml.html"/>
   <updated>2010-05-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/11/firefox-4-the-html5-parser-inline-svg-and-mathml</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://hacks.mozilla.org/2010/05/firefox-4-the-html5-parser-inline-svg-speed-and-more/&quot;&gt;&#187; Firefox 4: the HTML5 parser – inline SVG and MathML&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;It's good to see Gecko pulling some punches at Webkit (I love Webkit, but I &lt;em&gt;don't&lt;/em&gt; want it to become the only rendering engine. Webkit, at least Chrome developer build, doesn't render the MathML properly from &lt;a href=&quot;http://hsivonen.iki.fi/test/moz/html5-hacks-demo.html&quot;&gt;the inline MathML and SVG example&lt;/a&gt;, and the SVG not at all).&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>There Ends Another</title>
   <link href="http://atomicules.co.uk/2010/05/07/there-ends-another.html"/>
   <updated>2010-05-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/07/there-ends-another</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4586247655/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4029/4586247655_b439f73ce6.jpg&quot; alt=&quot;There Ends Another&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;There ends another &lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2010/&quot;&gt;Roidweek&lt;/a&gt;. It's been fun, as ever - that's my third one now. I got four (maybe five) shots I'm really happy with. Which isn't too great considering there's only ten in a pack, but I wanted to be a bit braver with the camera and try things like multiple exposures, wide angle lens (plus tape to hold it on) and manually exposing using the f/58 aperture - none of those attempts came out great, but it was still fun trying.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Tying our Shoelaces</title>
   <link href="http://atomicules.co.uk/2010/05/06/tying-our-shoelaces.html"/>
   <updated>2010-05-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/06/tying-our-shoelaces</id>
   <content type="html">
		
				 &lt;p&gt;It might be collectively slow progress, but progress &lt;em&gt;is&lt;/em&gt; being made on the next version of &lt;a href=&quot;http://shoes.heroku.com&quot;&gt;Shoes&lt;/a&gt;, Policeman.&lt;/p&gt;

&lt;p&gt;Ashbb, continues his &lt;a href=&quot;http://github.com/ashbb/shoes_hack_note/&quot;&gt;excellent work&lt;/a&gt; on the Windows side of things. &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoeswithmingw&quot;&gt;MinGW is now the recommended build route&lt;/a&gt;, which although currently a bit more buggy that the old WDK route, should make things easier in the future.&lt;/p&gt;

&lt;p&gt;OSX was struggling. Although I am really interested in Shoes, I have no discernible OSX programming skills (you can even drop the OSX from that if you want ;-) ) and only have limited access to OSX PPC (and PPC Macs are the way of the dinosaur). So although I could build and test on OSX PPC, everyone else was on 10.6, but unable to build because of the Carbon code Shoes used. We tried the route of building as 32-Bit and got no where. Now, all of a sudden, things are looking great:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We have &lt;a href=&quot;http://github.com/summitpush&quot;&gt;someone&lt;/a&gt; who has popped up to do &lt;a href=&quot;github.com/shoes/shoes/wikis/recentbuilds&quot;&gt;10.5 Intel Builds&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;I finally got a chance to &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoesonosx&quot;&gt;rebuild&lt;/a&gt; and update the &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoesonosxppc&quot;&gt;deps for OSX PPC&lt;/a&gt;. And can now knock out &lt;a href=&quot;github.com/shoes/shoes/wikis/recentbuilds&quot;&gt;recent builds&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;And a &lt;a href=&quot;http://github.com/mkelly&quot;&gt;saviour&lt;/a&gt; appeared who could actually &lt;a href=&quot;http://github.com/mkelly/shoes/commit/f9ef6bb9f8dce97784eeddaed1c459db64cece95&quot;&gt;re-write the Carbon stuff&lt;/a&gt; in Cocoa and get it to build on Snow Leopard.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Packaging, arguably one of the desirable features of Shoes was (is) a messy situation on Policeman due to changes in Ruby 1.9, but &lt;a href=&quot;http://github.com/ashbb/shoes/commit/7c106b1e858462eddf6bcf6335584b2ac694af7a&quot;&gt;ashbb&lt;/a&gt; and &lt;a href=&quot;http://github.com/ccoupe/shoes/commit/7e0ac87ee760695e72a8f4f9bfb67618ff114114&quot;&gt;Cecil Coupe&lt;/a&gt; have made progress there.&lt;/p&gt;

&lt;p&gt;Fingers crossed we can release Policeman soon, although we might have to release with just Shy file packaging first of all.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Shoes and a Shotgun</title>
   <link href="http://atomicules.co.uk/2010/05/06/shoes-and-a-shotgun.html"/>
   <updated>2010-05-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/06/shoes-and-a-shotgun</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://github.com/hansineffect/Shoes-and-a-Shotgun&quot;&gt;&#187; Shoes and a Shotgun&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Whilst on the Shoes news, came across this recently which looks interesting:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&quot;Shoes-and-a-shotgun is an app for Shoes that runs a Thin web-server locally with Ryan Tomayko’s Shotgun for easy reloading.&quot;&lt;/p&gt;&lt;/blockquote&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Roidweek Http Www Flickr Com Groups Polaroidwee</title>
   <link href="http://atomicules.co.uk/2010/05/05/roidweek-http-www-flickr-com-groups-polaroidwee.html"/>
   <updated>2010-05-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/05/roidweek-http-www-flickr-com-groups-polaroidwee</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4582562954/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3317/4582562954_1ac46fb64c.jpg&quot; alt=&quot;Roidweek Http Www Flickr Com Groups Polaroidwee&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2010/&quot;&gt;Roidweek&lt;/a&gt; fun. Loving it.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>More</title>
   <link href="http://atomicules.co.uk/2010/05/05/more.html"/>
   <updated>2010-05-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/05/05/more</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4581934757/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3323/4581934757_8b00fd9fa8.jpg&quot; alt=&quot;More&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;More &lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2010/&quot;&gt;Roidweek&lt;/a&gt; fun.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Idlewild to split… Who cares? | The Line Of Best Fit</title>
   <link href="http://atomicules.co.uk/2010/04/27/idlewild-to-split-who-cares-the-line-of-best-fit.html"/>
   <updated>2010-04-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/27/idlewild-to-split-who-cares-the-line-of-best-fit</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.thelineofbestfit.com/2010/04/idlewild-to-split-who-cares/&quot;&gt;&#187; Idlewild to split… Who cares? | The Line Of Best Fit&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Read this a couples of days after I saw &lt;a href=&quot;http://kisskitty.tumblr.com/post/544134870/idlewild-when-i-argue-i-see-shapes-i-feel-so&quot;&gt;kisskitty's post&lt;/a&gt;. How odd.&lt;/p&gt;

&lt;p&gt;Anyway, I have Captain and Hope is Important on my iPod. So &quot;I don't care&quot;.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>I Am the Mob!</title>
   <link href="http://atomicules.co.uk/2010/04/27/i-am-the-mob.html"/>
   <updated>2010-04-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/27/i-am-the-mob</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;https://twitter.com/atomicules/status/11603631951&quot;&gt;Ellie Goulding inspired&lt;/a&gt; I decided to dig out my Catatonia stuff and give it another listen. It must have been &lt;em&gt;awhile&lt;/em&gt; since I'd not a single mp3 in iTunes, having never ripped any from my CDs (of which I've a few).&lt;/p&gt;

&lt;p&gt;I got hooked on Catatonia with the &lt;a href=&quot;http://en.wikipedia.org/wiki/Way_Beyond_Blue&quot;&gt;Way Beyond Blue&lt;/a&gt; album, but &lt;em&gt;like&lt;/em&gt; &lt;a href=&quot;http://atomicules.co.uk/2010/04/27/idlewild-to-split-who-cares-the-line-of-best-fit.html&quot;&gt;Idlewild&lt;/a&gt; they seemed to progressively lose the shine for me with each additional album. &lt;a href=&quot;http://en.wikipedia.org/wiki/International_Velvet_(album&quot;&gt;International Velvet&lt;/a&gt;) has perhaps the most rubbish opening song of any album ever, but it does have I Am the Mob on it which redeems everything (I could listen to that forever - oh and Don't Need the Sunshine). &lt;a href=&quot;http://en.wikipedia.org/wiki/Equally_Cursed_and_Blessed&quot;&gt;Equally Cursed and Blessed&lt;/a&gt; is kind of a nothing album for me (Storm the Palace and Dazed, Beautiful and Bruised are alright). And &lt;a href=&quot;http://en.wikipedia.org/wiki/Paper_Scissors_Stone_(album&quot;&gt;Paper, Scissors, Stones&lt;/a&gt;), well not even the &quot;screechy vocals&quot; (and Cery's voice is best like that)  of Is Everybody Here on Drugs? does it for me - I like the artwork more than the album.&lt;/p&gt;

&lt;p&gt;All that though, doesn't detract from the how good Sweet Catatonia, Lost Cat and Bleed still are, and the good memories of the gig in Bradford - I may well have seen them more than once, but that's the only one I can remember: Everyone stood at the end of the gig, facing the stage, waiting for them to come back on and I looked out of the window to the side and saw them wandering out of the building. So I waved, shrugged my shoulders and went to the bar.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Kisskitty Idlewild When I Argue I See Shapes</title>
   <link href="http://atomicules.co.uk/2010/04/24/kisskitty-idlewild-when-i-argue-i-see-shapes.html"/>
   <updated>2010-04-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/24/kisskitty-idlewild-when-i-argue-i-see-shapes</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/xPNFApou5_4?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://kisskitty.tumblr.com/post/544134870/idlewild-when-i-argue-i-see-shapes-i-feel-so&quot; class=&quot;tumblr_blog&quot;&gt;kisskitty&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=xPNFApou5_4&amp;amp;feature=player_embedded#!&quot;&gt;Idlewild - When I Argue I See Shapes&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;i feel so old.&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;Ha. I feel older. But: good times. Been very much on a retro trip lately. Will have to dig out these CDs as well.&lt;/p&gt;

&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Pencil vs Camera</title>
   <link href="http://atomicules.co.uk/2010/04/23/pencil-vs-camera.html"/>
   <updated>2010-04-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/23/pencil-vs-camera</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/photos/benheine/sets/72157623723956821/detail/&quot;&gt;&#187; Pencil vs Camera&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;em&gt;via&lt;/em&gt; &lt;a href=&quot;http://blog.flickr.net/en/2010/04/23/pencil-vs-camera/&quot;&gt;Flickr Blog&lt;/a&gt;. These are cool!&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Writing a Binary Search</title>
   <link href="http://atomicules.co.uk/2010/04/21/writing-a-binary-search.html"/>
   <updated>2010-04-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/21/writing-a-binary-search</id>
   <content type="html">
		
				 &lt;p&gt;Or subtitled: Why turn down a chance to completely embarrass myself on the internet?&lt;/p&gt;

&lt;p&gt;I read this post on &lt;a href=&quot;http://reprog.wordpress.com/2010/04/19/are-you-one-of-the-10-percent/&quot;&gt;Binary search&lt;/a&gt; on the &lt;a href=&quot;http://reprog.wordpress.com&quot;&gt;Reinvigorated Programmer&lt;/a&gt; blog (In trying to learn more programming, I thought it wouldn't hurt to read some programming blogs; plus as an unexpected bonus &lt;a href=&quot;http://reprog.wordpress.com/2010/04/17/victory-of-the-daleks-11th-doctor-episode-3/&quot;&gt;he likes Doctor Who&lt;/a&gt;) and thought I'd have a crack at it. However, the rules were a bit hard for me, namely:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&quot;NO TESTING until after you’ve decided your program is correct.&quot;&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Even with Ruby, which I'm vaguely familiar with, I knew I couldn't possibly write even the most basic program without resorting to trying out stuff in IRB. It's the same as simple maths (times tables, etc) and spelling for me - I make no attempt to memorise this stuff when it's easy to use a calculator, dictionary, etc. So that's how my programming works. I can write a vague outline of the logic required in note form, but I need to use IRB or (if in another language) break my programme into chunks to compile and test, etc.&lt;/p&gt;

&lt;p&gt;So, an honest a first attempt as possible (with just checking things like &quot;How do ranges work in arrays again?&quot; in IRB (told you it was embarrassing)) would be as follows:&lt;/p&gt;

&lt;h2&gt;First Attempt&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;c1&quot;&gt;#Assumes a pre-sorted array&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down &lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Find middle value of array&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down &lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#delete top half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;c1&quot;&gt;#delete bottom half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Do we need to know where we found it?&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;This doesn't work, the main problem being that I didn't understand/forgot/didn't-think-about-it-properly how the loop would check its condition. With &lt;code&gt;m&lt;/code&gt; being updated at the start of the loop, it's too late - the loop has begun so it'll carry on and never break out of a loop.&lt;/p&gt;

&lt;p&gt;Oh well, a bad first guess. At least with that out of the way I could try again, but this time I could test as I went along.&lt;/p&gt;

&lt;h2&gt;Second Attempt&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Find middle index of array&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#delete top half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;c1&quot;&gt;#delete bottom half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down &lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value found is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Target was &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Do we need to know where we found it?&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;The main change is moving the update of &lt;code&gt;m&lt;/code&gt; from top of loop to end. This got it basically working. I then decided (and I don't &lt;em&gt;think&lt;/em&gt; this is a requirement of the task set) to report out the index of the array where the result was found (because to me there didn't seem to be a lot of point searching for something without knowing where it is).&lt;/p&gt;

&lt;h2&gt;Third attempt&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Duplicate array so we have a copy of the original&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dup&lt;/span&gt;

    &lt;span class=&quot;c1&quot;&gt;#Find middle index of array&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#tracking index&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;tidx= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#delete top half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;c1&quot;&gt;#delete bottom half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; 
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value found is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Target was &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Index of value is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value at index is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;I'd mucked up splitting the arrays and had overlapping ranges, &lt;code&gt;0..m&lt;/code&gt; and &lt;code&gt;m..-1&lt;/code&gt; so fixed that here as well. This attempt seemed to be working ok, but having accidentally seen a bit of &lt;a href=&quot;http://reprog.wordpress.com/2010/04/21/binary-search-redux-part-1/&quot;&gt;the next post&lt;/a&gt; that dealt with common bugs in other people's attempts at this problem, I knew there were things I'd not done: such as dealing with elements not in the array, etc. So that would be the next effort. Fair enough I wouldn't have got this with my first &quot;paper&quot; attempt anyway, but I would have twigged pretty soon with testing (and as I said, testing is how I develop).&lt;/p&gt;

&lt;h2&gt;Fourth attempt:&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Duplicate array so we have a copy of the original&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dup&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Find middle index of array&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#round down&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#tracking index&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;tidx= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#delete top half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;c1&quot;&gt;#delete bottom half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;floor&lt;/span&gt; 
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#if not found&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;break&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value not found&amp;quot;&lt;/span&gt;      
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value found is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Target was &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Index of value is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value at index is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;This still wasn't completely right though. I.e. the index was not always right.&lt;/p&gt;

&lt;h2&gt;Fifth attempt&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Duplicate array so we have a copy of the original&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dup&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Find middle index of array&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#tracking index&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;tidx= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;c1&quot;&gt;#delete top half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;c1&quot;&gt;#delete bottom half&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; 
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;subtractidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; 
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#if not found&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;break&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value not found&amp;quot;&lt;/span&gt;        
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;tidx= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value found is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Target was &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Index of value is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value at index is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;orig&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;tidx&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
 &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Trying to get the index correct, but still crap. I did discover though that I didn't need the &lt;code&gt;floor&lt;/code&gt; method to round down, as that was happening anyway (see, further embarrassment). Decided to give up figuring this (index tracking) out. Must be a simpler way. Rather than split the array up, just change the range we are looking at:&lt;/p&gt;

&lt;h2&gt;Sixth (and final-ish) attempt&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Assume search suceeds&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#initial lower, upper and middle indexes&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;l&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;u&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;until&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Visualise the search&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;l= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;u= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Which half contains target?&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;u&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#Set new upper boundary&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; 
            &lt;span class=&quot;n&quot;&gt;l&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#set new lower boundary&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;l&lt;/span&gt; &lt;span class=&quot;c1&quot;&gt;#set new mid point&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Break if not found / out-of-range&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
            &lt;span class=&quot;k&quot;&gt;break&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;#Visualise search&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;l= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;m= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;u= &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;u&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;found&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value not found&amp;quot;&lt;/span&gt;        
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Value found is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Target was &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Index found at is &amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_s&lt;/span&gt;        
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
 &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Ok, so pretty happy with that. Seems to work ok. It's longer than it needs to be thanks to all the &lt;code&gt;puts&lt;/code&gt; statements, but I like seeing how it arrives at the solution. Seems to find values, return correct indexes, deal with values not in the array. But what about single element or zero element arrays (also &lt;a href=&quot;http://reprog.wordpress.com/2010/04/21/binary-search-redux-part-1/&quot;&gt;accidentally peeked at&lt;/a&gt;)? Whoops no good.&lt;/p&gt;

&lt;p&gt;e.g.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;n&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;all just loop continuously, and&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;n&quot;&gt;binsearch&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;throws an error.&lt;/p&gt;

&lt;p&gt;Zero length arrays are not such a worry, easy to check for that up front (even for me!), but the single element one going into a continuous loop is a more of a concern. A crappy, but simple fix would be:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;length&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Joy to the world&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;#Best stop things now&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;break&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;But I'm sure there is a more elegant way?&lt;/p&gt;

&lt;h2&gt;Finally&lt;/h2&gt;

&lt;p&gt;I'd like to be able to use a get out clause:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;I am confident that nearly everyone who reads this blog is already familiar with the binary search algorithm&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;and say &quot;Well, nope I'm not familiar&quot;, which I'm not, but I did understand the principle of the search. Really this just harks back to school Maths (which was a while ago for me) and iterative searches, etc. &quot;Binary Search&quot; is just different terminology. So no excuse really - I should have been able to figure it out. Perhaps what I should have done was forget the programming language aspect and just write it down logically/mathematically. Ah well, eager beaver and that.&lt;/p&gt;

&lt;p&gt;Guess I have a long way to go yet if I want to be a programmer.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>‘Roid Week 2010, May 3 – 7 « Flickr Blog</title>
   <link href="http://atomicules.co.uk/2010/04/21/roid-week-2010-may-3-7-flickr-blog.html"/>
   <updated>2010-04-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/21/roid-week-2010-may-3-7-flickr-blog</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.flickr.net/en/2010/04/21/roidweek2010/&quot;&gt;&#187; ‘Roid Week 2010, May 3 – 7 « Flickr Blog&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Yay! It's almost that time again. And by hook or by crook I'm getting some film for this (even if it means my back log of 35mm film waiting another month).&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Indicommons iPhone Appp</title>
   <link href="http://atomicules.co.uk/2010/04/14/indicommons-iphone-appp.html"/>
   <updated>2010-04-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/14/indicommons-iphone-appp</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/services/apps/72157621903615751/&quot;&gt;&#187; Indicommons iPhone Appp&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/commons/&quot;&gt;The Commons&lt;/a&gt; is arguably the best feature of Flickr and at the sametime (still?) the most underated (at least it feels that way to me). &lt;a href=&quot;http://www.indicommons.org&quot;&gt;Indicommons&lt;/a&gt; is a site that was set-up by fans of The Commons to do their best to address this underated-ness and promote The Commons to the world.&lt;/p&gt;

&lt;p&gt;Although I follow the RSS feed for Indicommons and have a &lt;a href=&quot;http://www.flickr.com/photos/nationalarchives/&quot;&gt;couple&lt;/a&gt; of &lt;a href=&quot;http://www.flickr.com/photos/nationalgalleries/&quot;&gt;institutions&lt;/a&gt; as contacts on Flickr, I still don't pay as much attention to it as I would like to, or indeed, should.&lt;/p&gt;

&lt;p&gt;This app is not new news (unless you are me) as it's been around since last August, but I'm hoping it helps me give The Commons and Indicommons the attention they deserve.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Antipodean - Force directed graph layout in JavaScript</title>
   <link href="http://atomicules.co.uk/2010/04/14/antipodean-force-directed-graph-layout-in-javascript.html"/>
   <updated>2010-04-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/14/antipodean-force-directed-graph-layout-in-javascript</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://dhotson.tumblr.com/post/520720950/force-directed-graph-layout-in-javascript&quot;&gt;&#187; Antipodean - Force directed graph layout in JavaScript&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;blockquote&gt;
&lt;p&gt;I had a go at implementing a simple force directed graph layout algorithm in JavaScript.&lt;br&gt;&lt;a href=&quot;http://dhotson.github.com/springy.html&quot;&gt;Try it out&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://dhotson.github.com/springy.html&quot;&gt;&lt;img src=&quot;http://media.tumblr.com/tumblr_l0v8oqP8Ve1qz7e23.png&quot; style=&quot;border: none;&quot;&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;So what does this &lt;a href=&quot;http://en.wikipedia.org/wiki/Force-based_algorithms&quot;&gt;force directed&lt;/a&gt; stuff mean anyway? Basically, it uses a physics simulation to figure out how to show the graph/network decently.&lt;/p&gt; &lt;p&gt;In particular, it simulates a bunch of...&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;At work, I've been doing a fair bit of Javascript - in the form of UserScripting for Chrome - to 'fix' bits of the intranet that are IE specific. I was starting to think I was getting quite clever...&lt;/p&gt;


&lt;p&gt;...put right back in my place.&lt;/p&gt;


&lt;p&gt;This is ace.&lt;/p&gt;


				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Skateboardanimation Http Vimeo Com 8461831 By</title>
   <link href="http://atomicules.co.uk/2010/04/09/skateboardanimation-http-vimeo-com-8461831-by.html"/>
   <updated>2010-04-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/09/skateboardanimation-http-vimeo-com-8461831-by</id>
   <content type="html">
		
				
				
				&lt;iframe src=&quot;http://player.vimeo.com/video/8461831?portrait=0&amp;color=01AAEA&quot; width=&quot;500&quot; height=&quot;375&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://vimeo.com/8461831&quot;&gt;Skateboardanimation&lt;/a&gt; by &lt;a href=&quot;http://vimeo.com/singer&quot;&gt;Tilles Singer&lt;/a&gt; (&lt;em&gt;via&lt;/em&gt; &lt;a href=&quot;http://twitter.com/DaveGorman/status/11813047050&quot;&gt;@davegorman&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Truly fab. Really clever idea. I still love skateboarding and for someone to combine that with stop motion animation: wow!&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Wellplacedpixels Mowgliis Itsy This Is Nice</title>
   <link href="http://atomicules.co.uk/2010/04/07/wellplacedpixels-mowgliis-itsy-this-is-nice.html"/>
   <updated>2010-04-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/07/wellplacedpixels-mowgliis-itsy-this-is-nice</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_kztsptKzZO1qazfelo1_400.png&quot; alt=&quot;Wellplacedpixels Mowgliis Itsy This Is Nice&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://wellplacedpixels.com/post/472982590/mowgliis-itsy&quot; class=&quot;tumblr_blog&quot;&gt;wellplacedpixels&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;Mowglii's &lt;a href=&quot;http://mowglii.com/itsy/&quot;&gt;Itsy&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;This is nice, simple and small and has replaced Tweetie for me (on the rare occasions I'm actually on my Mac).&lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Java, HTMLUnit and catching setTimeout exceptions</title>
   <link href="http://atomicules.co.uk/2010/04/07/java-htmlunit-and-catching-settimeout-exceptions.html"/>
   <updated>2010-04-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/07/java-htmlunit-and-catching-settimeout-exceptions</id>
   <content type="html">
		
				 &lt;p&gt;Colour as bleeding obvious, but in &lt;a href=&quot;http://htmlunit.sourceforge.net/&quot;&gt;HTMLUnit&lt;/a&gt; I could not figure out how to &quot;&lt;a href=&quot;http://sourceforge.net/mailarchive/message.php?msg_id=4884C3E5.9090309@yahoo.fr&quot;&gt;just use WebClient.setTimeout(int)&lt;/a&gt;&quot;.&lt;/p&gt;

&lt;p&gt;I was searching for something like this:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;java&quot;&gt;&lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;webClient&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTimeout&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;60000&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;HtmlPage&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;page&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;HtmlPage&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;webClient&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getPage&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;http://somepage&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;catch&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;TimeoutError&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;//Try again, or abort, etc&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Except &lt;code&gt;TimeoutError&lt;/code&gt; is made-up. I was sure &lt;code&gt;setTimeout()&lt;/code&gt; must cause an exception, otherwise what the hell was the point of it? But no amount of searching would give me the answer, I'd either end up &lt;a href=&quot;http://sourceforge.net/mailarchive/message.php?msg_id=BAY117-W21EBC7315CB5626E528C56D68A0@phx.gbl&quot;&gt;on the trail&lt;/a&gt; to &quot;&lt;a href=&quot;http://sourceforge.net/mailarchive/message.php?msg_id=4884C3E5.9090309@yahoo.fr&quot;&gt;just use WebClient.setTimeout(int)&lt;/a&gt;&quot; or finding &lt;a href=&quot;http://sourceforge.net/mailarchive/message.php?msg_id=26197231.post@talk.nabble.com&quot;&gt;my exact question&lt;/a&gt;, but with no answer at all.&lt;/p&gt;

&lt;p&gt;Turns out all I needed to do was to piece together these two bits of information:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://htmlunit.sourceforge.net/apidocs/com/gargoylesoftware/htmlunit/WebClient.html#setTimeout(int&quot;&gt;setTimeout&lt;/a&gt;) Sets the timeout of the &lt;strong&gt;WebConnection&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://htmlunit.sourceforge.net/apidocs/com/gargoylesoftware/htmlunit/WebConnection.html&quot;&gt;WebConnection&lt;/a&gt; - Throws: &lt;strong&gt;IOException&lt;/strong&gt; - if an IO error occurs&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Yes, handling timeouts is as simple as&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;java&quot;&gt;&lt;span class=&quot;k&quot;&gt;try&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;webClient&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTimeout&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;60000&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;HtmlPage&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;page&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;HtmlPage&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;webClient&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getPage&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;http://somepage&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;catch&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;IOException&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;//This catches a timeout error as well&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;(Thankfully I figured this out before I asked on Stackoverflow - because it turns out there &lt;em&gt;is&lt;/em&gt; such a thing as a stupid question)&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Taps</title>
   <link href="http://atomicules.co.uk/2010/04/06/taps.html"/>
   <updated>2010-04-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/06/taps</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4463871446/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4071/4463871446_fb388085dc.jpg&quot; alt=&quot;Taps&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Like These Two Best From The Lomo</title>
   <link href="http://atomicules.co.uk/2010/04/06/i-like-these-two-best-from-the-lomo.html"/>
   <updated>2010-04-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/06/i-like-these-two-best-from-the-lomo</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4463095557/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2798/4463095557_db3267a765.jpg&quot; alt=&quot;I Like These Two Best From The Lomo&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I like these two best from the &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157623697448540/&quot;&gt;Lomo Fisheye&lt;/a&gt; I got for Christmas.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Vim and xmllint on Windows.</title>
   <link href="http://atomicules.co.uk/2010/04/05/vim-and-xmllint-on-windows.html"/>
   <updated>2010-04-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/04/05/vim-and-xmllint-on-windows</id>
   <content type="html">
		
				 &lt;p&gt;I had occasion to get this working again. Not that it's hard mind you, just that I gave up too easily last time. I'd been logging an xml response from a Java programme and ended up with a massive xml file all on one line. Obviously not ideal if you want to search through the file.&lt;/p&gt;

&lt;p&gt;Googling lead to &lt;a href=&quot;http://vim.wikia.com/wiki/Format_your_xml_document_using_xmllint&quot;&gt;xmllint&lt;/a&gt;, and last time I didn't even try after reading about Windows difficulties.&lt;/p&gt;

&lt;p&gt;Turns out it's simple.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Just download &lt;a href=&quot;http://code.google.com/p/xmllint/downloads/list&quot;&gt;xmllint for Windows&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Simply place the executable in the same directory as the xml files for the lazy approach&lt;/li&gt;
&lt;li&gt;&lt;code&gt;:% !xmllint.exe % --format&lt;/code&gt; from within vim. (The syntax on the wiki page was wrong (for windows at least), &lt;code&gt;:! xmllint.exe --format %&lt;/code&gt; tries to load the file &quot;--format&quot;, need to swop the order of the % and the flag. Also the leading % is required (referring to the currently open file) as otherwise it'll run it through xmllint, but will not actually replace the contents of the file you have open.)&lt;/li&gt;
&lt;li&gt;Done&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;But then I read &lt;a href=&quot;http://vim.wikia.com/wiki/Pretty-formatting_XML&quot;&gt;another wiki page&lt;/a&gt; and found this much more clever approach:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;:%s/&amp;gt;&amp;lt;/&amp;gt;\r&amp;lt;/g
:0
=:$
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The &lt;code&gt;%&lt;/code&gt; means search the whole file, performing a search and replace using this syntax: &lt;code&gt;s/search/replace/g&lt;/code&gt;. So it's searching for &quot;&gt;&amp;lt;&quot; and replacing with the same, but with the addition of &lt;code&gt;\r&lt;/code&gt; which simply means split line at this point. Dead clever. Requiring nothing more than vim itself. The rest (&lt;code&gt;:0&lt;/code&gt; and &lt;code&gt;=:$&lt;/code&gt;) is just moving back to the start of the file and indenting it all.&lt;/p&gt;

&lt;p&gt;(I've been a good boy and edited the wiki)&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Shoeset</title>
   <link href="http://atomicules.co.uk/2010/03/30/shoeset.html"/>
   <updated>2010-03-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/30/shoeset</id>
   <content type="html">
		
				 &lt;p&gt;A little &lt;a href=&quot;http://shoes.heroku.com&quot;&gt;Shoes&lt;/a&gt; app that generates tag clouds for a user's chosen set on Flickr.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/services/apps/72157623408545587/&quot;&gt;&lt;img src=&quot;http://farm5.static.flickr.com/4047/4438251586_acde764cf1.jpg&quot; title=&quot;Shoeset&quot; alt=&quot;Shoeset&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This was basically a geek solution to me asking myself, &quot;I wonder what films I had best results with at those weddings?&quot; Since I tend to use sets for events, and a mix of film and cameras at events, this worked well for me.&lt;/p&gt;

&lt;p&gt;Uses the excellent &lt;a href=&quot;http://github.com/hanklords/flickraw#&quot;&gt;Flickraw&lt;/a&gt; gem and this &lt;a href=&quot;http://snippets.dzone.com/posts/show/6027&quot;&gt;TagCloud&lt;/a&gt; class. It's the first time I've used Flickraw, the last time I did anything with the Flickr API was a few years ago using &lt;a href=&quot;http://www.maxdunn.com/RoR+and+Flickr&quot;&gt;rflickr in a rails app&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Note that in order not to have &lt;a href=&quot;http://developer.yahoo.com/flickr/&quot;&gt;too many queries per second&lt;/a&gt;, the app pauses for 1 second on each photo in the set (So probably no good for people with huge sets, but what can you do...). Probably full of bugs (a few fixed in v0.0.2), but it was just for fun (I never profess to know what I'm doing).&lt;/p&gt;

&lt;p&gt;Since it really is quite simple, there's nothing that interesting about the code. Although this was the first time I'd used threading in Shoes: there is no single flickr api command to get the tags for all photos in a set so it's necessary to iterate through each photo and get the tags, this is done in a separate thread so that a progress bar can be updated outside of the thread. The problem with having this threaded is that it was possible for the user to set of multiple queries at the same time, so (in v0.0.2) I had to put in a &lt;a href=&quot;http://github.com/atomicules/shoeset/commit/2a1778f05b55911cc2931e772f480ab8a3c58454&quot;&gt;check to see whether a query was already running&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And although very simple, I like the &lt;a href=&quot;http://github.com/atomicules/shoeset/blob/master/cloud.rb#L42-L46&quot;&gt;use of reverse! on an array&lt;/a&gt; to alternate text colours:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;n&quot;&gt;color&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;steelblue&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;deeppink&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;#No idea why I spelt that the &amp;#39;wrong&amp;#39; way&lt;/span&gt;
&lt;span class=&quot;vi&quot;&gt;@wordcount&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each_key&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;word&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;font_size&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;vi&quot;&gt;@wordcount&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;word&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;*&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ratio&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;round&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;cloud&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;sx&quot;&gt;%Q{para &amp;quot;&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;word&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;sx&quot;&gt;&amp;quot;, :size =&amp;gt; &lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;font_size&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;sx&quot;&gt;, :stroke =&amp;gt; &lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;sx&quot;&gt;; }&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;reverse!&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;The most interesting thing, for me, about doing this app was learning about headers in Shoe shy files. I packaged the app up on a Windows machine as a Shy file, which should be platform independent. However, it wouldn't work on my OSX PPC machine. And vice versa. After a bit of investigation I discovered that the bulk of the Shy file was valid, it was just the header that was causing trouble. The &lt;a href=&quot;http://github.com/shoes/shoes/blob/master/lib/shoes/shy.rb#L30-L34&quot;&gt;header of the Shy file&lt;/a&gt; contains three parameters: the file type (Shy, so you can't simply rename an arbitrary file as .shy), the Version (should Shoes ever change file formats, etc) and the byte number offset for the end of the header (i.e. where to start reading the actual application files from). It was this last parameter that was causing the trouble and if I manually overrode it I could get the Shy file to open on both platforms.&lt;/p&gt;

&lt;p&gt;I finally tracked it down to &lt;a href=&quot;http://github.com/shoes/shoes/blob/master/lib/shoes/shy.rb#L15&quot;&gt;this&lt;/a&gt;:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;no&quot;&gt;LAYOUT&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;A4SL&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;freeze&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;These parameters are used in &lt;a href=&quot;http://ruby-doc.org/core/classes/Array.html#M002222&quot;&gt;Array.pack&lt;/a&gt; and &lt;a href=&quot;http://ruby-doc.org/core/classes/String.html#M000760&quot;&gt;String.unpack&lt;/a&gt;. The problem is that &lt;strong&gt;S&lt;/strong&gt;hort integers and &lt;strong&gt;L&lt;/strong&gt;ong integers are done in &lt;a href=&quot;http://en.wikipedia.org/wiki/Endianness#Examples_of_storing_the_value_0A0B0C0Dh_in_memory&quot;&gt;native byte order&lt;/a&gt;. So for Windows, etc this was little-endian, but on OSX PPC this was big-endian. Fixing was as simple as &lt;a href=&quot;http://github.com/ashbb/shoes/commit/4ab9ee2f86e0f240d5e7915888dd8db3cdca836b&quot;&gt;always forcing little-endian, &quot;A4vV&quot;&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>When will pixels become obsolete?</title>
   <link href="http://atomicules.co.uk/2010/03/29/when-will-pixels-become-obsolete.html"/>
   <updated>2010-03-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/29/when-will-pixels-become-obsolete</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://kilianvalkhof.com/2008/design/when-will-pixels-become-obsolete/&quot;&gt;&#187; When will pixels become obsolete?&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I guess the answer is never?&lt;/p&gt;

&lt;p&gt;Came across this, from 2008, when I was recently re-jigging my site and wondering whether there was actually any reason anymore to swop everything over to EMs from the pixels I'd inherited with the theme - which I'd been intending to do since day 1, but you know: laziness and all - seeing as how modern browsers such as Chrome will zoom all the content anyway, regardless of whether you've used pixels or EMs. And after a great deal of reading I have come to the conclusion: It just doesn't matter anymore.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://webkit.org/blog/57/css-units/&quot;&gt;CSS pixels and EMs aren't that different&lt;/a&gt; anyway. It is possible to do fluid layouts with both. And although Chrome will only do full page zoom, not text zoom, other major browsers (I don't consider IE to be 'major') that do offer text zoom will zoom pixels.&lt;/p&gt;

&lt;p&gt;However, now I've made the E(m)ffort I'm not changing back (you know: laziness and all).&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Young Love</title>
   <link href="http://atomicules.co.uk/2010/03/24/young-love.html"/>
   <updated>2010-03-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/24/young-love</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4455160013/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4037/4455160013_ba8646cc0c.jpg&quot; alt=&quot;Young Love&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Young Love.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Snow Leopard and Gems 'wrong architecture'</title>
   <link href="http://atomicules.co.uk/2010/03/24/snow-leopard-and-gems-wrong-architecture.html"/>
   <updated>2010-03-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/24/snow-leopard-and-gems-wrong-architecture</id>
   <content type="html">
		
				 &lt;p&gt;Not that I'm on Snow Leopard yet (ever??), but should you get an error such as:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&quot;hpricot_scan.bundle: mach-o, but wrong architecture&quot;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Or any other gem, doesn't have to be Hpricot, then it is, as the error message says, because of a mismatch between the architecture of Ruby and the gem. And on Snow Leopard this is most likely because you are using a 32-bit version of Ruby and the gem has built as 64-bit (as is the default on Snow Leopard). And this has most likely come about because in 10.5 you followed one of the &lt;a href=&quot;http://hivelogic.com/articles/ruby-rails-leopard&quot;&gt;Hivelogic articles&lt;/a&gt; and installed a version of Ruby that is still your default after upgrading to 10.6. The quick way to check is to do&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;which ruby
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;if it returns &lt;strong&gt;/usr/local/bin/ruby&lt;/strong&gt; then you need to change your PATH so you are using the Apple installed 64-bit version in &lt;strong&gt;/usr/bin&lt;/strong&gt;, or follow the &lt;a href=&quot;http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard/&quot;&gt;new Hivelogic article&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If the above isn't your case, then use the &lt;a href=&quot;http://ss64.com/osx/file.html&quot;&gt;file&lt;/a&gt; command to find out what the architecture mismatch is:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;file /path/to/gem/eg/hpricot_scan.bundle
file /path/to/ruby
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;32-bit binaries will return &lt;strong&gt;Mach-O executable i386&lt;/strong&gt; and 64-bit &lt;strong&gt;Mach-O 64-bit executable x86_64&lt;/strong&gt;. Because, as unlikely as it is, it's possible that you are &lt;a href=&quot;http://stackoverflow.com/questions/1367380/snow-leopard-64-bit-ruby-gem-problem/#comment-1214390&quot;&gt;accidentally building your gems as 32 Bit&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Pride Rock</title>
   <link href="http://atomicules.co.uk/2010/03/23/pride-rock.html"/>
   <updated>2010-03-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/23/pride-rock</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4423820052/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2601/4423820052_4464313a2f.jpg&quot; alt=&quot;Pride Rock&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Pride Rock.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Coffee And Cake Ilford Xp2 Super Is What It Says</title>
   <link href="http://atomicules.co.uk/2010/03/23/coffee-and-cake-ilford-xp2-super-is-what-it-says.html"/>
   <updated>2010-03-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/23/coffee-and-cake-ilford-xp2-super-is-what-it-says</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4423016417/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2695/4423016417_03688bf8a2.jpg&quot; alt=&quot;Coffee And Cake Ilford Xp2 Super Is What It Says&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Coffee and Cake.
Ilford XP2 Super is what it says on the tin.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>31.536.000 SECONDS</title>
   <link href="http://atomicules.co.uk/2010/03/23/31-536-000-seconds.html"/>
   <updated>2010-03-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/23/31-536-000-seconds</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.the-impossible-project.com/resources/projects_downloads/text/Press%20Kit%2022%20March.pdf&quot;&gt;&#187; 31.536.000 SECONDS&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;(Link to PDF Press Release).&lt;/p&gt;

&lt;p&gt;Great news for Polaroid fans, although seeing as how SX-70 and 600 series cameras weren't exactly going cheap on eBay before, I think I'll have to just stick to peel apart film for the foreseeable future.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Spring Cleaning</title>
   <link href="http://atomicules.co.uk/2010/03/18/spring-cleaning.html"/>
   <updated>2010-03-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/18/spring-cleaning</id>
   <content type="html">
		
				 &lt;p&gt;As I mentioned in my &lt;a href=&quot;http://atomicules.co.uk/2010/03/09/google-buzz-is-was-anyway-perfectly-private-enough.html&quot;&gt;last post&lt;/a&gt;, I've taken the opportunity to use Google Buzz to clean-up my website. I've removed the side bar that featured Twitter, Delicious, Google Reader, Last.fm and Flickr widgets and instead have replaced with a simple link to my Buzz profile page. Makes for a much cleaner site. The only thing Buzz doesn't do yet is pull in info from Last.fm, but I wasn't keeping the sidebar around just for that. And hopefully Last.fm will make some changes to their site so it works with Buzz.&lt;/p&gt;

&lt;p&gt;Since I had no sidebar I moved the remaining about/description and 'meta' links up into a header. I'd already &lt;a href=&quot;http://diveintohtml5.org/semantics.html&quot;&gt;HTML5-ified&lt;/a&gt; things awhile ago, but I'd never really fixed the CSS from when I started from the &lt;a href=&quot;http://customthemes.tumblr.com/post/70461310/prowhite-by-josh-jenkins-based-on-black-and-blue&quot;&gt;Pro-White theme&lt;/a&gt;. This time I've made a concerted effort to 'fix' the CSS; I've gone through and changed everything to EMs, and made a load of tweaks to make the text layout more readable (I was never keen on the line spacing, etc before). I'm pretty chuffed with how it looks now. I'm sure I've still got some redundant CSS, or stuff I could consolidate, but that will do for now.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>HTML5 Outliner Extension for Chrome</title>
   <link href="http://atomicules.co.uk/2010/03/18/html5-outliner-extension-for-chrome.html"/>
   <updated>2010-03-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/18/html5-outliner-extension-for-chrome</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;https://chrome.google.com/extensions/detail/afoibpobokebhgfnknfndkgemglggomo&quot;&gt;&#187; HTML5 Outliner Extension for Chrome&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Really nifty little plug-in, not only for checking your HTML5 Outlines, but also for navigating HTML5 sites.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>H&amp;amp;FJ: Four Techniques for Combining Fonts</title>
   <link href="http://atomicules.co.uk/2010/03/18/h-fj-four-techniques-for-combining-fonts.html"/>
   <updated>2010-03-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2010/03/18/h-fj-four-techniques-for-combining-fonts</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.typography.com/email/2010_03/index_tw.htm&quot;&gt;&#187; H&amp;FJ: Four Techniques for Combining Fonts&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/456769803/h-fj-four-techniques-for-combining-fonts&quot; class=&quot;tumblr_blog&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://cameronmoll.tumblr.com/post/456733070/h-fj-four-techniques-for-combining-fonts&quot; class=&quot;tumblr_blog&quot;&gt;cameronmoll&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Hoefler &amp;amp; Frere-Jones:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Here are four tips for navigating the typographic ocean, all built around H&amp;FJ’s Highly Scientific First Principle of Combining Fonts: keep one thing consistent, and let one thing vary.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Positively bookmarkworthy. This is great stuff, and the examples are top-notch.&lt;/p&gt;
&lt;/blockquote&gt;&lt;/blockquote&gt;




&lt;p&gt;A bit like when I learnt, many moons ago now, what shades of Magic Markers to buy together.   With that knowledge comes one downside: the realisation that to get good results you are going to have to spend a lot of cash. &lt;/p&gt;


				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Google Buzz Is (was anyway) Perfectly Private Enough, Thankyou</title>
   <link href="http://atomicules.co.uk/2010/03/09/google-buzz-is-was-anyway-perfectly-private-enough.html"/>
   <updated>2010-03-09T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/03/09/google-buzz-is-was-anyway-perfectly-private-enough</id>
   <content type="html">
		
				 &lt;p&gt;I've missed the boat entirely with this as Google have addressed some of the 'issues' now, but anyway I started writing the post so I'll finish it. There were basically three points I wanted to make:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Spamming of &quot;trending topics&quot; by a plethora of websites / news outlets. Everyone seemed to jump on the Google Buzz Bash Bandwagon at the launch. And although there were &lt;a href=&quot;http://www.theregister.co.uk/2010/02/16/google_buzz_security_bug/&quot;&gt;legitmate&lt;/a&gt; (but realistically minor issues) it was hard to sift these out from the &lt;a href=&quot;http://www.theregister.co.uk/2010/02/17/epic_on_google_buzz/&quot;&gt;noise&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Privacy is as much the end users responsibility as it is Google's. Quite awhile ago now I moved to having a 'formal' gmail address, which I used for friends and family and job sites, job applications, etc. And also an 'internet-persona' address that I use everywhere else. I realised that, when I started signing up to sites like Twitter and Tumblr and it offers to &quot;find people from your address book&quot;, well, that also works in reverse as well! So perhaps I didn't want a potential employer finding my Tumblr blog or Twitter feed and I had best not mix my real name and an internet persona. I can't say I've been 100% infallible over the years, but as a general rule I have one address for one thing, and one for another.&lt;/p&gt;

&lt;p&gt; So when Google Buzz launched I had no public profile (intentional) with my formal account, no automatic followers and only three people (one of them my missus) I was signed up to follow, none of which are using Buzz. No privacy worries there then.&lt;/p&gt;

&lt;p&gt; Regarding mobile locations, I have to say Buzz mobile does look scarily accurate with locations like &quot;28-43 Somewhere St&quot;. But Buzz makes it plainly obvious that you are posting with location, allows you to pick alternative locations. Or turn off the location altogether. Or make the post private - which isn't something you can selectively do on Twitter.&lt;/p&gt;

&lt;p&gt; This issue seems like a legitimate one at first: &lt;a href=&quot;http://lifehacker.com/5470513/how-buzz-exposes-private-email-addresses-in-replies&quot;&gt;How Buzz Exposes Private Email Addresses in Replies&lt;/a&gt;, but it isn't Buzz's fault. Anyone who knows you can expose your details if they happen to have them. You have to trust others not to be plonkers.&lt;/p&gt;

&lt;p&gt; The EFF report on &lt;a href=&quot;http://www.eff.org/deeplinks/2010/02/google-buzz-privacy-update&quot;&gt;Google abusing their position&lt;/a&gt;. And as a rule I'd be inclined to believe and trust the EFF, in subjects they are far more qualified than me to speak about. Apart from the bit where they quote the Register as a source. What happened there? El Reg is a good read, but EFF, come on! So Google slightly abused their position. How unsuprising. They are a business afterall. You can't trust any large corporation (think your employer). You should always safeguard yourself.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I like Google Buzz. Not so much for the social aspect, more for the ease of consolidation of an online presence. It's something I've been trying to do on my websites for years through sidebars, headers and footers, using pre-built javascript snippets, or custom queries, i.e. to say &quot;this is my blog, my internet presence home, but here is everything else I do&quot;. Buzz makes this remarkably easy. I'm thinking of tidying up my website now to take advantage of it. I'll just keep my blog posts here and link to Buzz, just on the off chance that someone might want to be as nosey as me.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Java Smack API and  java.io.EOFException</title>
   <link href="http://atomicules.co.uk/2010/02/26/java-smack-api-and-java-io-eofexception.html"/>
   <updated>2010-02-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/26/java-smack-api-and-java-io-eofexception</id>
   <content type="html">
		
				 &lt;p&gt;I came across this confusing error using the &lt;a href=&quot;http://www.igniterealtime.org/projects/smack/&quot;&gt;Smack API&lt;/a&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;java.io.EOFException: no more data available - expected end tag &amp;lt;/stream:stream&amp;gt; to close start tag &amp;lt;stream:stream&amp;gt; from line 1, parser stopped on END_TAG seen ...EZah/08YglY=\' xmlns=\'http://jabber.org/protocol/caps\'/&amp;gt;&amp;lt;/presence&amp;gt;... @1:2797
at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3035)
at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046)
at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)
at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:36
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Turns out this was because I was trying to send a message containing the string &quot;&amp;amp;nbsp;&quot;.&lt;/p&gt;

&lt;p&gt;I was pulling data from an xml document, that unfortunately rather than containing nothing where there was no entry for an element, contained four &quot;&amp;amp;nbsp;&quot;.&lt;/p&gt;

&lt;p&gt;It seems even trying to pass one   makes Smack throw a major wobbly.&lt;/p&gt;

&lt;p&gt;Figuring out the error took ages. Fixing was easy as I just stripped out all &quot;&amp;amp;nbsp;&quot; characters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EDIT:&lt;/strong&gt; It's ampersands in general that causes the problem (makes more sense really). What's more, I can't figure out a way to catch the &quot;java.io.EOFException&quot;. I get &quot;never thrown in body of corresponding try statement&quot; if I try (no pun intended!) to catch it where the Bot is connecting. So I don't think anything can be done apart form make sure you are never passing Ampersands via Smack.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>How-to recover from checksum mismatch errors in SVN</title>
   <link href="http://atomicules.co.uk/2010/02/26/how-to-recover-from-checksum-mismatch-errors-in-svn.html"/>
   <updated>2010-02-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/26/how-to-recover-from-checksum-mismatch-errors-in-svn</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://andrew.hedges.name/blog/2009/01/25/how-to-recover-from-checksum-mismatch-errors-in-svn&quot;&gt;&#187; How-to recover from checksum mismatch errors in SVN&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Very handy, and not as scary as I first thought. I'll add that to fix the error I had to replace the svn-base file &lt;em&gt;and&lt;/em&gt; the file itself. E.g: say I have this directory:&lt;/p&gt;

&lt;pre&gt;
+-trunk/
 |
 |-file.java
 |
+-.svn/
    |
    +-text-base/
     |
     |-file.java.svn-base
&lt;/pre&gt;


&lt;p&gt;I had to copy both file.java.svn-base and file.java in order to resolve the checksum mismatch.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Related To The Previous Post I Guess I Should</title>
   <link href="http://atomicules.co.uk/2010/02/23/related-to-the-previous-post-i-guess-i-should.html"/>
   <updated>2010-02-23T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/23/related-to-the-previous-post-i-guess-i-should</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4369243760/sizes/l/in/set-72157623338750353/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4025/4369243760_90328626ac.jpg&quot; alt=&quot;Related To The Previous Post I Guess I Should&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Related to the previous post, I guess I should mention the rest of &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157623338750353/&quot;&gt;my Kodachrome shots&lt;/a&gt;. With the demise of Kodachrome I knew I had to shoot one roll before it was gone for good, and realistically I knew I'd have to limit myself to just one roll. So I was determined to make it a good one.&lt;/p&gt;

&lt;p&gt;I would have liked to have got it scanned sooner, but I have to try and spread out the film costs through the year. With the hiccups I had with my Praktica and Yashica over Christmas I was feeling pretty fed-up with my photography so I decided now was the right time to get the Kodachrome scanned as I knew that would cheer me up.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Took This Last Summer Whilst Out For A Bike</title>
   <link href="http://atomicules.co.uk/2010/02/23/i-took-this-last-summer-whilst-out-for-a-bike.html"/>
   <updated>2010-02-23T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/23/i-took-this-last-summer-whilst-out-for-a-bike</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4369256670/in/set-72157623338750353/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4044/4369256670_9d5baf0a0e.jpg&quot; alt=&quot;I Took This Last Summer Whilst Out For A Bike&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I took this last summer whilst out for a bike ride, but it was on Kodachrome so it took awhile to come back and then the slides just sat in my wardrobe until I had the cash to send them off for scanning. So eight months later I'm trying to remember where the hell I took this. All I can say is &quot;Who needs GPS when there's &lt;a href=&quot;http://maps.google.co.uk/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=udny+station&amp;amp;sll=57.266978,-2.099762&amp;amp;sspn=0.011649,0.024848&amp;amp;ie=UTF8&amp;amp;hq=&amp;amp;hnear=Udny+Station,+Ellon,+Aberdeenshire,+United+Kingdom&amp;amp;ll=57.295452,-2.095771&amp;amp;spn=0.005866,0.012424&amp;amp;t=h&amp;amp;z=16&amp;amp;layer=c&amp;amp;cbll=57.295239,-2.096237&amp;amp;panoid=GOaXKaYjoVqQD_b2K57m0g&amp;amp;cbp=12,94.05,,0,3.29&quot;&gt;Google Street View&lt;/a&gt;&quot;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>More Of A Lounger</title>
   <link href="http://atomicules.co.uk/2010/02/16/more-of-a-lounger.html"/>
   <updated>2010-02-16T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/16/more-of-a-lounger</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4355899536/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2702/4355899536_69ae97883d.jpg&quot; alt=&quot;More Of A Lounger&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Had A Clever Idea To Use My Flash With My</title>
   <link href="http://atomicules.co.uk/2010/02/16/i-had-a-clever-idea-to-use-my-flash-with-my.html"/>
   <updated>2010-02-16T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/16/i-had-a-clever-idea-to-use-my-flash-with-my</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4355900524/&quot;&gt;
				
					&lt;img src=&quot;http://farm5.static.flickr.com/4058/4355900524_f8986c1a81.jpg&quot; alt=&quot;I Had A Clever Idea To Use My Flash With My&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I had a clever idea to use my &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4203775004/&quot;&gt;flash with my Yashica&lt;/a&gt;, and use a low iso film so I could shoot wide open (&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/2095293478/&quot;&gt;My flash&lt;/a&gt; is only basic so aperture is determined by film speed). Unfortunately it all went a bit &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4357119233/&quot;&gt;wrong&lt;/a&gt;. It seems I over diffused my flash, making it as effective as a candle. This photo is the best recovered.&lt;/p&gt;

&lt;p&gt;I did not have a brilliant Christmas for Photograpy: My Praktica 35mm shutter broke, but in a clever way so that it took me four rolls of film to realise. Aaargh!&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Java, Vim and Windows</title>
   <link href="http://atomicules.co.uk/2010/02/11/java-vim-and-windows.html"/>
   <updated>2010-02-11T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/02/11/java-vim-and-windows</id>
   <content type="html">
		
				 &lt;p&gt;I've been having a bit of a play about with Java at work and creating a Jabber Bot. It's yet-another-side project of mine, but it is for work and about as legitimate as side projects can get. It's been a nice intro to Java as there are plenty of &lt;a href=&quot;http://www.freddyvazquez.com/Simple_XMPP_Jabber_Bot_Java_Smack_API.html&quot;&gt;examples&lt;/a&gt; out there and I actually have a real app to produce at the end; I find just doing tutorials gets me no where.&lt;/p&gt;

&lt;p&gt;After I got over the initial shock of squiggly brackets (It looks way harder than it is), I've actually learnt a couple of things in a couple of weeks that I've not learnt in five years of playing with Ruby (the benefit of Java being so fussy):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Using &lt;strong&gt;Classes&lt;/strong&gt;. Somehow I've managed to be remarkably lazy in Ruby and write an app with a thousand lines of code without really having to use classes (I use just one, based on this to &lt;a href=&quot;http://thread.gmane.org/gmane.comp.lang.ruby.modules.mechanize.user/375&quot;&gt;post arbitrary data with Mechanize&lt;/a&gt;). Other than that the code is just all methods. Although I have now relented and split stuff into modules.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Logging&lt;/strong&gt; - I've never logged anything in Ruby, having  just used IRB for all my developing and debugging.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;One of the example programmes I was working with used System.out.println to debug, but I &lt;a href=&quot;http://www.vipan.com/htdocs/log4jhelp.html&quot;&gt;quickly found&lt;/a&gt; I should be using an actual logger. I went with the built-in logger:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;java&quot;&gt;&lt;span class=&quot;n&quot;&gt;Logger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getLogger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;global&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;fine&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;Here&amp;#39;s what&amp;#39;s happening: &amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;stufftooutput&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Because then you can control/grade which messages get shown according to their severity:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;java&quot;&gt;&lt;span class=&quot;n&quot;&gt;Logger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getLogger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;global&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setLevel&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Level&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;FINE&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;Logger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getLogger&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getHandlers&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;()[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setLevel&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Level&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;FINE&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;I &lt;a href=&quot;http://coding.derkeiler.com/Archive/Java/comp.lang.java.help/2005-09/msg00152.html&quot;&gt;found out&lt;/a&gt; I had to use both lines above to change this setting, rather than just one command. Don't know why.&lt;/p&gt;

&lt;p&gt;It seems every tutorial sets out by telling you to get an IDE, but you really don't need to for simple programmes. I just used Vim and a couple of little tricks on Windows. To deal with classpaths, I stored them in a text file, so I could read them into an environment variable. I.e. create a empty text file called &quot;classpath.txt&quot;. Open it in Vim and then read in the directory of the jar files you are referencing:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;&lt;span class=&quot;nl&quot;&gt;:r&lt;/span&gt; !dir &lt;span class=&quot;n&quot;&gt;/b&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Then do a quick find and replace to get this all on one line, add in necessary path prefixes and semi-colons to separate. Then in Command Prompt I could just do this each session, to read the classpath into an environment variable:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;/P&lt;/span&gt; cpstr&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;classpath&lt;/span&gt;.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Compiling and running was then dead simple from the Command Prompt:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;javac -cp &lt;span class=&quot;nv&quot;&gt;%cpstr%&lt;/span&gt; -d .&lt;span class=&quot;n&quot;&gt;/bin&lt;/span&gt; .&lt;span class=&quot;n&quot;&gt;/src/File.java&lt;/span&gt;
java -cp &lt;span class=&quot;nv&quot;&gt;%cpstr%&lt;/span&gt;;bin File
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;If you want to be ultra-Vimmy and not leave Vim to run commands in the Command Prompt, unfortunately I found you couldn't do this in Vim:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;:!&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; /&lt;span class=&quot;k&quot;&gt;P&lt;/span&gt; cpstr&lt;span class=&quot;p&quot;&gt;=&amp;lt;&lt;/span&gt;classpath.txt &amp;amp; javac &lt;span class=&quot;p&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;cp&lt;/span&gt; \%cpstr\% etc
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;as it just puts &quot;%cpstr%&quot;. Even though I was escaping Vim's use of the % to reference the current file. Yet if you do&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;:echo \%HOME\% 
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;it does what you expect. Grrrrrrr..... You might be able to get around this using setx (to set user environment variables), but you would have to run two separate commands, as setx only affects future Command Prompt windows. You can create a little batch file to work around this, i.e. a file &quot;c.bat&quot; containing:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;/P&lt;/span&gt; cpstr&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;classpath&lt;/span&gt;.txt
javac -cp &lt;span class=&quot;nv&quot;&gt;%cpstr%&lt;/span&gt; -d .&lt;span class=&quot;n&quot;&gt;/bin&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;%1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;then in Vim, assuming correct directory, just do&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;c&lt;/span&gt;.bat %
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;and create a similar batch file to run the app. Although I found you have to write the actual class name from Vim:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;start&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;j&lt;/span&gt;.bat classname
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;as % includes path and extension (%&amp;lt; removes the extension, but it still includes the path. Aaargh!)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EDIT:&lt;/strong&gt; Fun and games. Combined the compile and run DOS batch command, for those stupid moments when I forget I need to compile:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bat&quot;&gt;&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;/P&lt;/span&gt; cpstr&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;classpath&lt;/span&gt;.txt
javac -cp &lt;span class=&quot;nv&quot;&gt;%cpstr%&lt;/span&gt; -d .&lt;span class=&quot;n&quot;&gt;/bin&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;%1&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;/f&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;tokens=1,2 delims=.\&amp;quot;&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;%%a&lt;/span&gt; in (&lt;span class=&quot;s2&quot;&gt;&amp;quot;%1&amp;quot;&lt;/span&gt;) &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;%%b&lt;/span&gt;
java -cp &lt;span class=&quot;nv&quot;&gt;%cpstr%&lt;/span&gt;;bin &lt;span class=&quot;nv&quot;&gt;%class%&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Also, note to self:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;start&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;r&lt;/span&gt;.bat % &amp;amp; pause
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;runs &lt;a href=&quot;http://vim.wikia.com/wiki/Execute_external_programs_asynchronously_under_Windows&quot;&gt;asynchronously&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Kindle Books</title>
   <link href="http://atomicules.co.uk/2010/01/21/kindle-books.html"/>
   <updated>2010-01-21T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/21/kindle-books</id>
   <content type="html">
		
				 &lt;p&gt;A different version of what I've &lt;a href=&quot;http://www.appletalker.net/forum/index.php?req=thread&amp;amp;amp;postid=16438&quot;&gt;posted elsewhere&lt;/a&gt;, but I've recently bought, and now finished reading, my first &lt;a href=&quot;http://www.amazon.com/gp/aw/d.html/ref=mp_s_a_1?qid=1263134963&amp;amp;amp;a=B000VYSTM6&amp;amp;sr=1-1&quot;&gt;Kindle book&lt;/a&gt; (bought on the iPod/iPhone Kindle app). I don't know exactly why, but this feels more momentous than when I first purchased music from iTunes - I guess it's something, but not completely, to do with the fact that I've been comfortable listening to music on my computer ever since I had an iSub (I miss that, that was a lot of fun!), but to read a book, well, it's not until hand held portable devices have come along that I've felt able to read a book (on a 'computer'). Prior to buying this book, I had read free Creative Commons versions of &lt;a href=&quot;http://manybooks.net/titles/reynoldstother06BloodSweatAndTeaCC.html&quot;&gt;Blood, Sweat and Tea&lt;/a&gt;, and the &lt;a href=&quot;http://manybooks.net/titles/reynoldstother09more_blood_more_sweat_another_cup_of_tea.html&quot;&gt;sequel&lt;/a&gt;. Which is why I say it's not just the reading of an electronic book that made this feel momentous; It's something to do with buying it as well.&lt;/p&gt;

&lt;p&gt;The book itself was good, but then I've liked &lt;a href=&quot;http://en.wikipedia.org/wiki/Octavia_E._Butler&quot;&gt;Octavia Butler&lt;/a&gt; for a long time. Wasn't that keen on the thought of a vampire book, but she did a good take on it. It's a shame she's not around to write the sequel.&lt;/p&gt;

&lt;p&gt;It's also a shame about all the &lt;a href=&quot;http://www.teleread.org/2009/07/24/kindle-books-riddled-with-typographical-and-formatting-errors-says-bloomberg-columnist/&quot;&gt;typographical&lt;/a&gt; &lt;a href=&quot;http://www.moreintelligentlife.com/content/anthony-gottlieb/facts-errors-and-kindle&quot;&gt;errors&lt;/a&gt; that seem to plague Kindle books (there's even a Tumblr blog: &lt;a href=&quot;http://badlydonekindlebooks.tumblr.com/&quot;&gt;Badly Done Kindle Books&lt;/a&gt;  about it): Missing spaces; spaces where there shouldn't be; spelling mistakes; hyphernations for line breaks, but now in the middle of the line. There aren't loads, not enough to ruin the book, and no where near as bad as the formatting of the free ebooks I read,  but more than I'd expect from a printed version. And a 2nd hand print version is a lot cheaper than a Kindle book, plus has no DRM.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Guillee Im Done Star Wars Opening Crawl</title>
   <link href="http://atomicules.co.uk/2010/01/21/guillee-im-done-star-wars-opening-crawl.html"/>
   <updated>2010-01-21T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/21/guillee-im-done-star-wars-opening-crawl</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.gesteves.com/experiments/starwars.html&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_ktut57zrWg1qz4ueh.jpg&quot; alt=&quot;Guillee Im Done Star Wars Opening Crawl&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://blog.gesteves.com/post/261593774/im-done-star-wars-opening-crawl-using-only-html&quot; class=&quot;tumblr_blog&quot;&gt;guillee&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;I’m done: &lt;a href=&quot;http://www.gesteves.com/experiments/starwars.html&quot;&gt;Star Wars opening crawl&lt;/a&gt;, using only &lt;abbr title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/abbr&gt; &lt;abbr title=&quot;and&quot;&gt;&amp;amp;&lt;/abbr&gt; &lt;abbr title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/abbr&gt;. Caveats: It only works in Snow Leopard in Safari 4.0.4 and the &lt;a href=&quot;http://nightly.webkit.org/&quot;&gt;WebKit nightly&lt;/a&gt;. Nothing else supports the &lt;abbr&gt;CSS&lt;/abbr&gt; &lt;a href=&quot;http://webkit.org/blog/386/3d-transforms/&quot;&gt;3D transforms&lt;/a&gt; and &lt;a href=&quot;http://webkit.org/blog/324/css-animation-2/&quot;&gt;animations&lt;/a&gt; I used, but I just wanted to see if it could be done.&lt;/p&gt;

&lt;p&gt;(Here’s a video of it on &lt;a href=&quot;http://www.youtube.com/watch?v=wTbioEQ_FcE&quot;&gt;YouTube&lt;/a&gt;, in case I run out of bandwidth for the day and it stops working.)&lt;/p&gt;&lt;/blockquote&gt;




&lt;p&gt;Wow, this is ace. Almost working on Windows in Chrome/Chromium development builds as well, it's just that the text appears in a rectangle shape, rather than the trapezium above.&lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Kisskitty Biggest Film Disappointment</title>
   <link href="http://atomicules.co.uk/2010/01/19/kisskitty-biggest-film-disappointment.html"/>
   <updated>2010-01-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/19/kisskitty-biggest-film-disappointment</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://tensionsevolve.files.wordpress.com/2009/09/where-the-wild-things-are.jpg&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_kurmoaIPmX1qzw1hfo1_500.jpg&quot; alt=&quot;Kisskitty Biggest Film Disappointment&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://kisskitty.tumblr.com/post/286556469/wow-i-feel-so-young-this-film-it-made-me-a&quot; class=&quot;tumblr_blog&quot;&gt;kisskitty&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;...biggest film disappointment in-a-very-long-time. went in pumped. left deflated... ...the film looked visually amazing... ...not unhappy. but not thrilled.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;I can sympathise with this. Although I was hoping I wouldn't have to. Ultimately the trailer set too high expectations and was better than the film - matching the length of the book perfectly.&lt;/p&gt;

&lt;p&gt;Could I sympathise with the brat of boy? Nope. But he does learn his lesson by the end.&lt;/p&gt;

&lt;p&gt;And this comment about it &lt;a href=&quot;http://www.bbc.co.uk/blogs/markkermode/2009/12/5_live_review_where_the_wild_t.html#P90156843&quot;&gt;not being for young kids&lt;/a&gt;: well, you can't really blame the parents, we were  mis-sold on the trailer as much as anyone else. The youngest did fall asleep, but still thought it was &quot;the best film ever!&quot; or something like that, and spent the rest of the day howling.&lt;/p&gt;

&lt;p&gt;All in all I did like it. And I can imagine us buying it when it comes out because it was a beautiful film to look at. You could pretty much turn the sound off and still have a pleasant viewing experience.&lt;/p&gt;

&lt;p&gt;Anyway. One bonus of having kids is cheap Saturday morning cinema deals and seeing as it's winter and there's knack else to do, we've seen a couple of others recently:&lt;/p&gt;

&lt;h2&gt;UP&lt;/h2&gt;

&lt;p&gt;Must be one of my most favourite films ever. Making odd company with films like City of Gold, Requiem for a Dream, Mississippi Burning and Freeway. Comparing the trailer for Up to Where the Wild Things Are, well I just wasn't as enthused to see Up. But, when it comes to the film itself, as someone else said (but can't remember who): The thing about Pixar is not just the visuals (although they are amazing - the photos in the photo album aren't just photos, but great photos) but that they can tell a cracking story. Story first. Everything else second. This is where Pixar win. It just grabbed me and took me and &lt;a href=&quot;https://twitter.com/atomicules/status/7571029024&quot;&gt;my emotions all over the place&lt;/a&gt;, not giving me a choice - it was superb.&lt;/p&gt;

&lt;h2&gt;Fantastic Mr. Fox&lt;/h2&gt;

&lt;p&gt;I knew it was stop motion, but I was surprised at quite how quirky it was for a mainstream movie. Again, probably not quite as good as I hoped (although can't put my finger on why? Perhaps it's just watching it in a cinema full of kids?), but good all the same. George Clooney translated naturally from Mr. Ocean to Mr. Fox; A bit of a twist on how I envisaged Fantastic Mr. Fox from the novel, but hey that's what &quot;based on a novel&quot; is all about.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>My Last.fm Chart No.1s for 2009</title>
   <link href="http://atomicules.co.uk/2010/01/16/my-last-fm-chart-no-1s-for-2009.html"/>
   <updated>2010-01-16T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/16/my-last-fm-chart-no-1s-for-2009</id>
   <content type="html">
		
				 &lt;p&gt;Forgot to put this under my year in review post. &lt;a href=&quot;http://www.last.fm/user/i5m/charts&quot;&gt;My Last.fm chart&lt;/a&gt; No.1s for the past 12 months (so roughly 2009).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Top Artist: Freestylers&lt;/li&gt;
&lt;li&gt;Top Album: Ladyhawke - Ladyhawke&lt;/li&gt;
&lt;li&gt;Top Song: Magic - Ladyhawke&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Ladyhawke is a good album. So many good tracks. &lt;a href=&quot;http://atomicules.co.uk/2009/06/02/right-lets-try-out-some-reblogging-and-then.html&quot;&gt;I said that&lt;/a&gt; at the time. Freestylers are still way ahead and I suspect it will stay that way for a while. There is nothing else I enjoy listening to more than the Freestylers. It's just not getting old for me.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Vimeo goes mobile (at last!)</title>
   <link href="http://atomicules.co.uk/2010/01/15/vimeo-goes-mobile-at-last.html"/>
   <updated>2010-01-15T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/15/vimeo-goes-mobile-at-last</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.vimeo.com/blog:265&quot;&gt;&#187; Vimeo goes mobile (at last!)&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Never been a big fan of YouTube and have always preferred Vimeo for hosting and watching video creations. That was until my main computing platform became an iPod and I was locked out of Vimeo. I'm glad they've finally sorted mobile (non-flash) access out.&lt;/p&gt;

&lt;p&gt;It may have taken them a long time, but they've done it in a beautiful way.&lt;/p&gt;

&lt;p&gt;Maybe one day I'll get back into videography, but for now it remains photography.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Year End Review - Code</title>
   <link href="http://atomicules.co.uk/2010/01/03/year-end-review-code.html"/>
   <updated>2010-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/03/year-end-review-code</id>
   <content type="html">
		
				 &lt;p&gt;Like photography, I've ended the year better skilled than I started it. Which feels good. But in both subjects I'd still consider myself a beginner (or always in Beta!)&lt;/p&gt;

&lt;h2&gt;Highlights:&lt;/h2&gt;

&lt;p&gt;Much of the coding I do are little side projects at work, so can't go into details, but:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I've got better at Ruby. I still stop when I get to modules, classes, etc - I could (and have) figure(d) it out, but I haven't had a real need yet (keep it simple and all that). Since I've mainly been using Shoes, and quick and dirty coding is fine there.&lt;/li&gt;
&lt;li&gt;Javascript and user scripting for Chrome. The interesting thing here is I moved beyond moaning and bug reporting about the intranet not working fully in anything else but IE6 and started using userscripting to actually fix stuff.&lt;/li&gt;
&lt;li&gt;Starting with Java. Not finding it as easy as Ruby, but it's certainly easier porting a concept from one language to another rather than starting completely from scratch. Looking to do a Jabber chat bot so a nice small enough project to learn on.&lt;/li&gt;
&lt;li&gt;Oracle SQL. I'd done a tiny bit of MySQL before, but got the chance to write a query for an Oracle SQL database. Easier enough once I twigged the differences.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Using Shoes at work has also lead me to look at the Shoes source code:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Figured out &lt;a href=&quot;http://groups.google.com/group/shoooes/msg/98cbd6838fe757e9?&quot;&gt;building Shoes on OSX PPC&lt;/a&gt; and updated the &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoesonosxppc&quot;&gt;build instructions&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Updated &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoeswithwindowswdk&quot;&gt;build instructions for windows&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://vgoff.blogspot.com/&quot;&gt;ashbb&lt;/a&gt; actually did all the leg work here in actually &lt;a href=&quot;http://github.com/ashbb/shoes_hack_note&quot;&gt;fixing Shoes for Windows&lt;/a&gt;, but just trying to follow his work has been an achievement for me.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Even managed to dabble in a bit of C in modifying Shoes to provide &lt;a href=&quot;http://github.com/atomicules/shoes/commit/0cf7ec09bbfb4d3524f8de5a882ca7801000d67a&quot;&gt;Key up&lt;/a&gt; and &lt;a href=&quot;http://github.com/atomicules/shoes/commit/1a95aab2be9062c9a3242c7f4f8892735dfd04c3&quot;&gt;down&lt;/a&gt; on Windows. I was, of course, subsequently &lt;a href=&quot;http://github.com/ashbb/shoes/commit/5e17fc9307526f7ac61071f45776594fed2ed648&quot;&gt;totally eclipsed by ashbb&lt;/a&gt;, but I had a go, and that's the main thing. And the thrill of editing C code (never been near C before), compiling and actually managing to improve the functionality of a programme, was ace.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Next year plans:&lt;/h2&gt;

&lt;p&gt;All coding I do is work based - it's the only place I have time - just going to continue with the above. Hopefully be able to help out more with Shoes.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Year End Review - Art</title>
   <link href="http://atomicules.co.uk/2010/01/03/year-end-review-art.html"/>
   <updated>2010-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2010/01/03/year-end-review-art</id>
   <content type="html">
		
				 &lt;p&gt;Well, I say art, but at the moment it's just photography. I seem to have stopped writing so much. And I think that's about as arty as I'll get.&lt;/p&gt;

&lt;h2&gt;Highlights:&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Getting a Yashica Mat for a smidge over £40. Bargain, and it works well. Not done that much with it this year, but gets my foot in the door of medium format - All other options are too expensive. 'Paid' for itself with this shot:&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4008993519/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2490/4008993519_4e30aca855_m.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Getting a Praktica 135mm f2.8 for about £25. Nothing better than a huge chunk of glass on your camera. Great for stuff like this:&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3933051151/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2630/3933051151_680df0b4d4_m.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Getting my Great Grandpa's Kodak Folding Autohraphic Brownie converted to 120 film. Now I just need to fix the bellows:&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3624892594/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3416/3624892594_6a97feb2c3_m.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Shooting Kodachrome. I have still to get this scanned, but I'm very happy with what the slides look like. So, all good for my first and last ever roll of Kodachrome.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Having a kind fellow send me &lt;a href=&quot;http://atomicules.co.uk/2009/11/18/completely-forgot-to-write-a-about-this-but-its.html&quot;&gt;some APS film from the US&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Roidweeks. First did this last year. One of those global community events on Flickr where you can feel the love.  Always fun.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3501529124/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3359/3501529124_bf78333407_m.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4075590451/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2694/4075590451_2b065d7942_m.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Lowlights:&lt;/h2&gt;

&lt;p&gt;I didn't want to have any of these, but on New Year's Eve I found out my Praktica was broken. It had broken cleverly: The lower shutter curtain is not working on automatic. Only on the fixed 1/60 speed. But since the top curtain was working it gave an almost perfect impression of a functioning camera. The thing is, once I realised it was broken, I then twigged when it broke: about four rolls of film back. So that's all the shots in the run upto Christmas, and from Christmas itself, gone. Arse.&lt;/p&gt;

&lt;h2&gt;Next year plans:&lt;/h2&gt;

&lt;p&gt;Large format - Ha, in my dreams!
Equipment wise I reckon a close up lens for my Yashica and a 50mm f1.4. That'll do. Although I still need a 110 camera for the one roll of film I have (and like the Kodachrome, probably ever will have).&lt;/p&gt;

&lt;p&gt;Well, they were my plans before my Praktica broke. So now a new Praktica is first on the cards.&lt;/p&gt;

&lt;p&gt;I never really have any photographic outings planned. I'll just see what happens.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Flickr Are Running Your Best Shot Of</title>
   <link href="http://atomicules.co.uk/2009/12/04/flickr-are-running-your-best-shot-of.html"/>
   <updated>2009-12-04T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/12/04/flickr-are-running-your-best-shot-of</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3433885931/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3352/3433885931_a4c9575717.jpg&quot; alt=&quot;Flickr Are Running Your Best Shot Of&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Flickr are running &quot;&lt;a href=&quot;http://blog.flickr.net/en/2009/11/30/your-best-shot-2009/&quot;&gt;Your best shot of 2009&lt;/a&gt;&quot;. This was done a bit more informally &lt;a href=&quot;http://www.flickr.com/groups/central/discuss/72157610880549001&quot;&gt;last year&lt;/a&gt; as just a thread in the Flickr Central group. My choice this year was very easy; interestingly I (obviously) don't think I've taken anything better since and I've also not been as drunk this year since. I wonder how much more productive I could be at work if I was allowed to drink there?&lt;/p&gt;

&lt;p&gt;I'm going to do a general end-of-year-review / best-of-2009 blog post nearer the actual end of the year, but since this is running now, and I've run out of time to surpass it, this can go up now.&lt;/p&gt;

&lt;p&gt;This was my best photo for last year: &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3067970146&quot;&gt;She's My Little Shadow&lt;/a&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Love The End Of A Roll Of Film I Think Some Of</title>
   <link href="http://atomicules.co.uk/2009/12/03/i-love-the-end-of-a-roll-of-film-i-think-some-of.html"/>
   <updated>2009-12-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/12/03/i-love-the-end-of-a-roll-of-film-i-think-some-of</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4141956192/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2728/4141956192_ecffc3ee7a.jpg&quot; alt=&quot;I Love The End Of A Roll Of Film I Think Some Of&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I love the end of a roll of film; I think some of my favourite pictures have come from finishing a roll of film off.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>I Need To Listen To This Im Actually Excited</title>
   <link href="http://atomicules.co.uk/2009/11/26/i-need-to-listen-to-this-im-actually-excited.html"/>
   <updated>2009-11-26T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/26/i-need-to-listen-to-this-im-actually-excited</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tumblr_ktqm2eIXwh1qzcagpo1_400.jpg&quot; alt=&quot;I Need To Listen To This Im Actually Excited&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;I need to listen to this. I'm actually excited about it. And a little bit worried it won't live up to my expectations.&lt;/p&gt;

&lt;p&gt;After reading about &lt;a href=&quot;http://www.thelineofbestfit.com/2009/11/saint-etienne-fox-base-beta/&quot;&gt;Foxbase Beta&lt;/a&gt; I got a bit worried that it was only available in as a &lt;a href=&quot;http://www.ekmpowershop8.com/ekmps/shops/saintetienneltd/foxbase-beta---limited-edition-2-disc-set-1-p.asp&quot;&gt;limited run of 3000 copies&lt;/a&gt; and to fan club members only. I might love Saint Etienne, but not enough to join the fan club* (Afterall, it's not Desperate Dan's Pie Eater's club - I ate two today, thanks - probably the only club I've ever joined). But It's only the 2CD thing that's the limited edition. The normal Foxbase Beta is available on iTunes (Only place I've found it so far). Woohoo.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;* I think the fan club is actually free to join, but to mention that would have ruined the Desperate Dan thing.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Start a side project, says GitHub founder</title>
   <link href="http://atomicules.co.uk/2009/11/23/start-a-side-project-says-github-founder.html"/>
   <updated>2009-11-23T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/23/start-a-side-project-says-github-founder</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://gist.github.com/6443&quot;&gt;&#187; Start a side project, says GitHub founder&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/227307882/start-a-side-project-says-github-founder&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;p&gt;Pretty old, but worth a re-post I reckon.. :-)&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;This post has been gestating for too long: I was going to start with &quot;The problem I have with side projects is that all mine seem to be at work&quot;. This was a &lt;em&gt;problem&lt;/em&gt; in my head because I felt I needed a side project outside of work, something visible to 'show off', but in the process of writing I realised that was only half true, and not necessarily a problem.&lt;/p&gt;

&lt;p&gt;With the work thing: yes, unfortunately that means my employee gets all rights to them. Which means I can't really share source code and have something out there as bragging rights. However, even if I could share, their relevance outside of work would be minimal, and the main benefit I would get would not be bragging rights, but rather feedback along the lines of &quot;Gosh, that's a really bad way to write that, you should do it like this...&quot;. So, I am missing out on something to showcase, ok, but worse I'm missing out on feedback - personally I consider that the bigger negative.  However, on the plus side it's currently the only place I can find the time to do stuff and, equally as important, I'm inspired to do stuff: There's an odd mix of old and new technology. Chuck in the fact that IE6 is still the defacto and designed for web browser on the intranet, and there's plenty of scope for improvement and innovation. Especially since these are tools you have to use everyday; When you are using a tool or a bit of software, everyday, to get a job done, it is very easy to find inspiration to improve or fix things (In fact at the moment I have too many side projects at work).&lt;/p&gt;

&lt;p&gt;I have also found this true in the past. The term &quot;side project&quot; not only means something you do as an aside, but reflects that these projects grow out of the side of something else. So my foray into programming started with things like visual basic scripts for &lt;a href=&quot;http://www.autodesk.com/Inventor&quot;&gt;CAD software&lt;/a&gt;, or javascript macros for &lt;a href=&quot;http://www.ansys.com/products/workbench/default.asp&quot;&gt;FEA software&lt;/a&gt; I was using. Outside of work, back when I was using Final Cut Express I wrote a &lt;a href=&quot;http://developer.apple.com/mac/library/documentation/AppleApplications/Conceptual/Using_FXScript/UsingFXScript.pdf&quot;&gt;FXScript&lt;/a&gt; that would benefit me day to day.&lt;/p&gt;

&lt;p&gt;So it seems it's not all bad having work based side projects: I may lose out on an external showcase, but it does bring the benefit of internal networking. And seeing as how my current role is not within programming, not even within IT, but that is something I'd like to move into, that's not necessarily a bad thing.&lt;/p&gt;

&lt;p&gt;As to why there is a lack of side projects outside of work, well I've already alluded to above. One of the biggest is that I don't use a bit of software any more to the extent that I used FCE and so I'm not inspired enough to fix or improve anything. Second biggest is probably time. And the third issue is that at home my main computing platform is now an iPod Touch; which, although a great time killer, is perhaps not so great a productivity tool. (You can't program on it. Yet.)&lt;/p&gt;

&lt;p&gt;When I first started thinking about writing this I was worrying about finding a side project outside of work, and thinking that perhaps because I'm mainly on an iPod at home I should go down the route of iPhone apps (although it would have to be a web app, since I can't get on my mac to develop...). But for one I have NO IDEAS and two, well it doesn't matter. As long as I'm using my brain somewhere.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>New Tumblr iPhone/Touch app</title>
   <link href="http://atomicules.co.uk/2009/11/20/new-tumblr-iphone-touch-app.html"/>
   <updated>2009-11-20T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/20/new-tumblr-iphone-touch-app</id>
   <content type="html">
		
				 &lt;p&gt;A quick test from the new app - native editing - Woohoo!&lt;/p&gt;

&lt;p&gt;[edit] &lt;em&gt;And&lt;/em&gt;  it does Markdown.&lt;/p&gt;

&lt;p&gt;[edit 2] Not so happy - seems to want to tweet my posts even when I've got that preference turn off. Spammy.&lt;/p&gt;

&lt;p&gt;[edit 3] Have removed all Twitter settings from Tumblr account, that seems to have solved the problem for now.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Google Wave</title>
   <link href="http://atomicules.co.uk/2009/11/19/google-wave.html"/>
   <updated>2009-11-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/19/google-wave</id>
   <content type="html">
		
				 &lt;p&gt;I didn't bother registering interest in this when I first heard about it because I was perhaps a bit too honest when thinking about the option: &quot;Enlist me! I'll report bugs and give feedback (e.g. user surveys)&quot; *. And also because I didn't think there was much chance I'd get in anyway.&lt;/p&gt;

&lt;p&gt;However, all the news about it piqued my interest too much and so went back to register a couple of weeks ago. They must really be opening up access as I just got in. After the initial excitement (well new toys are always exciting) I'm now disappointed - not with Google Wave itself, rather that I don't have a decent use for it. And that's not because it's not useful itself - this would be great at work for collaboration, but there's NO CHANCE we'd be allowed to use it - I can think of a couple of useful work cases:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Would be great combined with WebEx for discussing presentations. For instance at the moment we tend to present a few slides via WebEx then switch to chat/open up the phone line to discuss. Wave could be used here instead to discuss, share, show examples, modify examples and collect feedback.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would be great in meetings with various remote colleagues where we are actually trying to get work done (you know one of those &lt;em&gt;rare&lt;/em&gt; meetings) E.g. outlining presentations. It would be superb for this!&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;For non-work use I can again think of a couple of use cases, but that aren't everyday occurrences:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Collaborating with, or &lt;a href=&quot;http://www.appletalker.net/forum/index.php?req=thread&amp;amp;id=1536&quot;&gt;providing feedback to virtual-friends&lt;/a&gt;. Wave would be much better than a forum for this as it would be possible to edit the original item, but also leave comments, etc. Not as good as markup functionality found in Word or OpenOffice (it isn't obvious to see who has modified what), but it is real time - you can see who is editing what at that instant, an so you don't lose time duplicating someone else response. Google Docs is an alternative for this kind of collaboration, but isn't real time like Wave and Wave also has the advantage of including messages to collaborators within the same Wave, rather than having to use a forum or emails, etc to discuss.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Collaborative code editing. Wave has great potential here. I.e. doing something like &lt;a href=&quot;http://www.codingmonkeys.de/subethaedit/index.html&quot;&gt;subethaedit&lt;/a&gt; which although a great tool is constrained in a way by being OSX only (Ok, &lt;a href=&quot;http://moonedit.com/&quot;&gt;there&lt;/a&gt; &lt;a href=&quot;http://gobby.0x539.de/trac/&quot;&gt;are&lt;/a&gt; &lt;a href=&quot;http://etherpad.com/&quot;&gt;alternatives&lt;/a&gt;, but Wave will bring this to the masses - I hope!). Take the Shoes project as an example: It's Windows, Linux and OSX with native and cross platform code. Subethaedit can't be used here. But GoogleWave would be ideal.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Of the alternatives I guess &lt;a href=&quot;http://etherpad.com/&quot;&gt;Etherpad&lt;/a&gt; comes the closest because it offers permanence like Wave, i.e. you can edit real-time collaboratively, but the document is also 'hosted' centrally so you can all go back to see it in it's current state and do non-collaborative editing. But then Google Wave will offer much more than Etherpad and can be used for more than colloborating on documents - it already has better code support:&lt;/p&gt;

&lt;p&gt;Ok, although nativley it isn't really suitable for collaborating on code, there are two extensions that allow you to do so:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;kasyntaxy (kasyntaxy@appspot.com) is a bot that does syntax highlighting on blips&lt;/li&gt;
&lt;li&gt;CodeSnippet (search with:public codesnippet) is an Gadget that does syntax highlighting with line numbering.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Both are useful. Kasyntaxy would be better for realtime collaboration with more than one person editing a blip, although there is a bit of a delay in it applying the syntax highlighting.   Whereas CodeSnippet looks better, offers line numbering and would be better for wiki-style editing.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;* Turns out I needn't have worried  &lt;a href=&quot;http://productideas.appspot.com/#16/e=224f1&quot;&gt;Google Wave Product Ideas&lt;/a&gt; has already collected over 5000 ideas so pretty much most of the bugs or suggestions you come up with will have already been logged, all that's left to do is vote them up/down.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Camino 2 released</title>
   <link href="http://atomicules.co.uk/2009/11/19/camino-2-released.html"/>
   <updated>2009-11-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/19/camino-2-released</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://caminobrowser.org/releases/2.0/&quot;&gt;&#187; Camino 2 released&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I've been using Camino for a long time, since before it was called Camino, back in the days of Jaguar.&lt;/p&gt;

&lt;p&gt;Camino is like a good wine. It develops slowly, but the end result is stellar. It is 'the' Gecko browser on my mac. I much prefer it over Firefox.&lt;/p&gt;

&lt;p&gt;Recently I have become a fan of Webkit (especially with it's speed, features and rapid pace of development) and use the nightlies, but I long for a UI as polished as Camino.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Its A Sad Fact Of Being Old Er That As Much As</title>
   <link href="http://atomicules.co.uk/2009/11/18/its-a-sad-fact-of-being-old-er-that-as-much-as.html"/>
   <updated>2009-11-18T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/18/its-a-sad-fact-of-being-old-er-that-as-much-as</id>
   <content type="html">
		
				
				
				&lt;iframe title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/-IQKsrXDHrg?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;It's a sad fact of being old(er), that as much as I would like to listen to &quot;New Music&quot; (new to me would do for a start, doesn't have to be new full-stop) I am not John Peel and neither do people send me records to listen to, and nor do I have most of the day set aside for listening. In fact, my entire listening-to-music-time is limited to the dubious decision to listen whilst on my bike ride to and from work.&lt;/p&gt;

&lt;p&gt;Owing to my short listening window, more often then not I will pick to listen to something I've heard before. However, today was a day where I'd chosen to carry on working my way through &lt;a href=&quot;http://www.thelineofbestfit.com/2009/10/download-oh-canada-6/&quot;&gt;Oh! Canada 6&lt;/a&gt; and stumbled across &lt;a href=&quot;http://www.yousaypartywesaydie.ca/&quot;&gt;You Say Party! We Say Die!&lt;/a&gt; and Laura Palmer's Prom. &lt;em&gt;Just ace&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;I may not have time to read or listen to everything that gets mentioned on &lt;a href=&quot;http://www.thelineofbestfit.com&quot;&gt;The Line of Best Fit&lt;/a&gt; (ace name), but I am glad I bother to check it out every so often.&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Completely Forgot To Write A About This But Its</title>
   <link href="http://atomicules.co.uk/2009/11/18/completely-forgot-to-write-a-about-this-but-its.html"/>
   <updated>2009-11-18T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/18/completely-forgot-to-write-a-about-this-but-its</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4021056755/in/set-72157622608704380/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2450/4021056755_4a4c988d37.jpg&quot; alt=&quot;Completely Forgot To Write A About This But Its&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Completely forgot to write a about this, but it's worthy of a blog post as well as being on Flickr.&lt;/p&gt;

&lt;p&gt;Earlier this year I got a &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3082690617/in/set-72157613490405613/&quot;&gt;new camera&lt;/a&gt; to play with and remarked that it was a shame that I could only get ISO 200 film for it in the UK. &lt;a href=&quot;http://www.flickr.com/photos/22872498@N02/&quot;&gt;Some kind stranger&lt;/a&gt; in the US offered to ship me a roll of ISO 400 film for free. I accepted the offer. They shipped the film. It arrived. And much time passed, but finally I shot the whole thing and got it developed.&lt;/p&gt;

&lt;p&gt;There's no &quot;and I shot the best photo I've ever done&quot; ending to this story, rather my results were mediocre, but the whole story (I sent them some prints as a thank-you) makes me smile and is definitely a highlight of the year.&lt;/p&gt;

&lt;p&gt;Results here: &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157622608704380/&quot;&gt;APS from the US&lt;/a&gt;&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>A good week of coding on Shoes</title>
   <link href="http://atomicules.co.uk/2009/11/15/a-good-week-of-coding-on-shoes.html"/>
   <updated>2009-11-15T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/15/a-good-week-of-coding-on-shoes</id>
   <content type="html">
		
				 &lt;ul&gt;
&lt;li&gt;Spurred on by &lt;a href=&quot;http://github.com/shoes/shoes/commit/8b1c84fa9cfef4a380a488212461d7e4abcf798d&quot;&gt;Mental implementing keyup/down on Linux&lt;/a&gt;...&lt;/li&gt;
&lt;li&gt;...&lt;a href=&quot;http://github.com/atomicules/shoes/commits/keyup-keydown&quot;&gt;I had a go on Windows&lt;/a&gt; and to my credit (and amazement) I did actually manage it, but was later &lt;a href=&quot;http://github.com/ashbb/shoes/commit/4ab14247ebd5c1a600e8ac4944eccd12738f517f&quot;&gt;outdone by ashbb&lt;/a&gt;. But I tried, and that means learning, and finishing a week knowing more then I did at the start of the week is always a good thing (and sadly something I can't take that for granted nowadays).&lt;/li&gt;
&lt;li&gt;And &lt;a href=&quot;http://groups.google.com/group/shoooes/msg/45ad7aeda6602413&quot;&gt;andhapp is someway along implementing for OSX&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Also, I finally finished off the &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoesonosxppc&quot;&gt;new OSX PPC deps&lt;/a&gt; that I started weeks ago.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Pretty chuffed. It's good to see some steps forward with Shoes after Why's disappearance.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>And There Ends Roidweek Got Three That Im Pretty</title>
   <link href="http://atomicules.co.uk/2009/11/07/and-there-ends-roidweek-got-three-that-im-pretty.html"/>
   <updated>2009-11-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/07/and-there-ends-roidweek-got-three-that-im-pretty</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4082585468/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3517/4082585468_fa455545c3.jpg&quot; alt=&quot;And There Ends Roidweek Got Three That Im Pretty&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;And there ends Roidweek. Got three that I'm pretty happy with. That's a success for me. And managed to start and end with ones that didn't get into the pool.&lt;/p&gt;

&lt;p&gt;Coffee may well perk you up, but it's tea that really gets you through the day.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Yay Its Time For</title>
   <link href="http://atomicules.co.uk/2009/11/02/yay-its-time-for.html"/>
   <updated>2009-11-02T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/11/02/yay-its-time-for</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4065597209/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2468/4065597209_ba9e36fb9a.jpg&quot; alt=&quot;Yay Its Time For&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Yay! It's time for &lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2009/&quot;&gt;Roidweek&lt;/a&gt; again on Flickr. There are two Roidweeks a yeah and unfortunately it seems to be the only time I get to break out the Polaroid camera. I don't mean it to happen this way, it's just that film is so expensive I just never seem to squeeze anymore in inbetween.&lt;/p&gt;

&lt;p&gt;Anyway, it's about as fun as photography can get and a good excuse to find something/anything to take a picture of everyday for a week - I'm not usually in to 'forced' shots, 365s, etc, so it's a bit of a challenge and something different.&lt;/p&gt;

&lt;p&gt;This was a tester shot, always a relief that the camera is still working. &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4069879348/in/photostream/&quot;&gt;Not off to a wonderful start&lt;/a&gt; this time round. Hoping for better results tomorrow.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Quotepad</title>
   <link href="http://atomicules.co.uk/2009/10/31/quotepad.html"/>
   <updated>2009-10-31T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/31/quotepad</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://quotepad.info/&quot;&gt;&#187; Quotepad&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Free and for Windows. The nearest thing I can find to Simplenote and Notational Velocity. Proving quite handy for those 9-5 days in the week.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>http://librelist.com/</title>
   <link href="http://atomicules.co.uk/2009/10/29/librelist.html"/>
   <updated>2009-10-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/29/librelist</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://librelist.com/&quot;&gt;&#187; http://librelist.com/&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Considering the &lt;a href=&quot;http://ejohn.org/blog/google-groups-is-dead/&quot;&gt;demise of Google Groups&lt;/a&gt;, this looks like a lovely alternative. Mentioned by       &lt;br/&gt;
Joshua Ballanco on the &lt;a href=&quot;http://groups.google.com/group/shoooes&quot;&gt;current Shoes mailing list&lt;/a&gt;. Looks like Shoes mailing list is heading to librelist.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Gmail Tasks app for the iPhone</title>
   <link href="http://atomicules.co.uk/2009/10/24/gmail-tasks-app-for-the-iphone.html"/>
   <updated>2009-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/24/gmail-tasks-app-for-the-iphone</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.geetasks.com&quot;&gt;&#187; Gmail Tasks app for the iPhone&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;I love this app. It is the only app to my knowledge that provides offline, and seamless syncing, to Gmail Tasks. Which is good because I don't have an iPhone, only an iPod Touch. It is up there with Simplenote and Tweetie for me.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>addEventListener in Chrome UserScripts</title>
   <link href="http://atomicules.co.uk/2009/10/24/addeventlistener-in-chrome-userscripts.html"/>
   <updated>2009-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/24/addeventlistener-in-chrome-userscripts</id>
   <content type="html">
		
				 &lt;p&gt;Also, not necessarily related to the previous post, but something else I had trouble with in Chrome userscripting was trapping clicks. I couldn't get &lt;a href=&quot;http://www.oreillynet.com/pub/a/network/2005/11/01/avoid-common-greasemonkey-pitfalls.html?page=3&quot;&gt;addEventListener to work on elements&lt;/a&gt;. So instead I went for the document level, trapped all clicks, and filtered for what I was interested in.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;addEventListener&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;click&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;whatyouarelookingfor&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;//Do something &lt;/span&gt;

    &lt;span class=&quot;c1&quot;&gt;// Then just let the default carry on &lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;},&lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;




			
   </content>
 </entry>
 
 <entry>
   <title>Loading a Rich Text Editor using Chrome UserScript</title>
   <link href="http://atomicules.co.uk/2009/10/22/loading-a-rich-text-editor-using-chrome-userscript.html"/>
   <updated>2009-10-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/22/loading-a-rich-text-editor-using-chrome-userscript</id>
   <content type="html">
		
				 &lt;p&gt;Chrome UserScripting doesn't have the advantage of &lt;a href=&quot;http://wiki.greasespot.net/UnsafeWindow&quot;&gt;UnsafeWindow&lt;/a&gt; that GreaseMonkey does. From what I can tell UnsafeWindow seems to be the lazy way to do things, but which has the advantage of being FAR F*CKING easier, hence it's popularity.&lt;/p&gt;

&lt;p&gt;Like a lot of things, the end solution is very simple, but it took me hours to get there:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;createElement&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;textarea&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;msgpost&amp;quot;&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;name&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;msgpost&amp;quot;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getElementById&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;whereyouwantit&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;appendChild&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Creates the text area on the page&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;scriptnic&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;createElement&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;script&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;scriptnic&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;type&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;text/javascript&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;scriptnic&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;src&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;http://js.nicedit.com/nicEdit-latest.js&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getElementsByTagName&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;head&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;appendChild&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;scriptnic&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Creates a script element in the head of the page that loads &lt;a href=&quot;http://nicedit.com/&quot;&gt;NicEdit&lt;/a&gt;. I had been playing about with the &lt;a href=&quot;http://developer.yahoo.com/yui/editor/&quot;&gt;YUI RichEditor&lt;/a&gt;, but nicEdit is much more lightweight. And lightweight = awesome.&lt;/p&gt;

&lt;p&gt;Now the fun part:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;waitforlibs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;typeof&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;bkLib&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;undefined&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;nb&quot;&gt;window&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;setTimeout&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;waitforlibs&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;c1&quot;&gt;// Lazy, turns all text areas to editors, but you can target specific IDs        &lt;/span&gt;
        &lt;span class=&quot;nx&quot;&gt;nicEditors&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;allTextAreas&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; 
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Since this is all being inserted via UserScript, even the call to the external library, need to ensure that it's loaded before calling the function. This is what this function does, which was pieced together from &lt;a href=&quot;http://manalang.com/loading-external-javascript-libraries-in-grea&quot;&gt;Rich Manalang&lt;/a&gt; and &lt;a href=&quot;http://userscripts.org/topics/19388#posts-85803&quot;&gt;RunningBlind&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The biggest problem I had was how to get the above to actually run. It's no good calling it from the UserScript itself as it needs to be in the context of the window. And there's no UnsafeWindow, so...&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;script&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;createElement&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;script&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;script&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;type&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;text/javascript&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;// Define function and run function&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;script&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;textContent&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;waitforlibs&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;; waitforlibs();&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; 
&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getElementById&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;whereyouwantit&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;appendChild&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;script&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;which seems incredibly simple and straightforward now, but had me banging my head for hours.&lt;/p&gt;

&lt;p&gt;And that's it. Now I can create a textarea and load the nicEditor. Of course this is useless on it's own, but I intend to tie into other stuff.&lt;/p&gt;

&lt;p&gt;Why would you want to do this? Well I did so I guess some other idiot might.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Backup coming to Tumblr</title>
   <link href="http://atomicules.co.uk/2009/10/16/backup-coming-to-tumblr.html"/>
   <updated>2009-10-16T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/16/backup-coming-to-tumblr</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://www.marco.org/214743206&quot;&gt;marco&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;
I recognize that it’s hypocritical for me to say this as the lead developer of Tumblr, which does not yet offer an automated feature for users to download backups of their blog content. So I took some time this week and started to write one. I’m happy to announce that Tumblr will be releasing an easy backup tool in the coming weeks. (I will also make an easy backup feature for Instapaper shortly.)
&lt;p&gt;&lt;/p&gt;

&lt;/blockquote&gt;




&lt;p&gt;Brilliant, looking forward to this. Lack of a backup has been my only worry about Tumblr (well that and the niggle about using any kind of free service: &quot;If it seems too good to be true...&quot;)&lt;/p&gt;


&lt;p&gt;EDIT: I'm also looking forward to native editing on the iPhone app. Why the hell does text get so screwed up when cutting and pasting???!!&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Fixed Speed Loveliness Its Not A Classic Not</title>
   <link href="http://atomicules.co.uk/2009/10/14/fixed-speed-loveliness-its-not-a-classic-not.html"/>
   <updated>2009-10-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/14/fixed-speed-loveliness-its-not-a-classic-not</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/4011639393/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2641/4011639393_80caccf196.jpg&quot; alt=&quot;Fixed Speed Loveliness Its Not A Classic Not&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Fixed speed loveliness. It's not a classic, not even a modern classic; in fact when I went to pick it up I was a bit shocked at it's ungainly appearance. But it's mine and you really can't comprehend how much better it is than the bikes I've been riding for the past twelve years - It's the first new bike I've had since Father Christmas brought me one as a kid. &lt;/p&gt;

&lt;p&gt;I've had it a couple of months now and I'm still dead chuffed to ride it everyday.&lt;/p&gt;

&lt;p&gt;Since this pic I've added toe-clips just incase I should pass another Fixie rider and be lynched for not having them.  &lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Fed up with Firefox</title>
   <link href="http://atomicules.co.uk/2009/10/07/fed-up-with-firefox.html"/>
   <updated>2009-10-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/07/fed-up-with-firefox</id>
   <content type="html">
		
				 &lt;p&gt;I've had enough of Firefox freezing and locking up. I know it's the stupid intranet sites and &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/1419&quot;&gt;IETab&lt;/a&gt; that do it, so not strictly the fault of Firefox, but I'm fed up of one tab bringing the whole thing down. So I'm giving &lt;a href=&quot;http://atomicules.co.uk/2009/10/05/chrome-with-ietab.html&quot;&gt;ChromePlus&lt;/a&gt; a proper go.&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;only&lt;/em&gt; thing remaining that Firefox still has over ChromePlus is &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/173&quot;&gt;gmail notifier&lt;/a&gt; - incredibly useful because it supports multiple accounts, provides me with actual notification windows and helps keep my personal (I.e: non-work related) clutter down (which was pretty much contained to Firefox). Oh, that and &lt;a href=&quot;ttp://getfiregpg.org&quot;&gt;FireGPG&lt;/a&gt;, but I use that so rarely it doesn't matter.&lt;/p&gt;

&lt;p&gt;ChromePlus has everything else I use in Firefox built in: Userscripts (&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/748&quot;&gt;Greasemonkey&lt;/a&gt;), Application shortcuts (&lt;a href=&quot;http://prism.mozilla.com/&quot;&gt;Prism&lt;/a&gt;), Developer Tools (&lt;a href=&quot;http://getfirebug.com/&quot;&gt;Firebug&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;I had hoped I could use this new standalone &lt;a href=&quot;http://www.gmailnotifier.com/&quot;&gt;Gmail Notifier&lt;/a&gt; to solve the email problem, but no - it uses IMAP and if I could access Gmail over IMAP at work I'd be fine anyway. So in the meantime I'm running two instances of Google's Gmail Notifier (someone needs to break out a thesaurus for &quot;Notifier&quot;) &lt;a href=&quot;http://toolbar.google.com/gmail-helper/notifier_windows.html&quot;&gt;Gnotify&lt;/a&gt; app (Although when I'm not behind my work firewall I'm going to try downloading the &lt;a href=&quot;http://gmailgrowl.blogspot.com/&quot;&gt;Gmail Growl for Windows&lt;/a&gt;. The Firefox Gmail Notifier also does some magic to let you switch between accounts pretty seamlessly. To get something equivalent I'm using an incognito application shortcut and a normal application shortcut so I can have both Gmail accounts logged in at the sametime.&lt;/p&gt;

&lt;p&gt;A couple of notes on using ChromePlus:&lt;/p&gt;

&lt;p&gt;1) I've installed ChromePlus to my user directory (D:\Users\me\Applications\ChromePlus) since it doesn't follow the windows recommended practice of creating separate user data directories - it's more akin to a portable app.&lt;/p&gt;

&lt;p&gt;2) I couldn't get themes to work by selecting one as you would in Chrome.  Using chrome://extension I managed to load an unpacked crx file: I created a directory called Unpacked Extensions in the ChromePlus UserData folder and used 7zip to unpack the extension.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Learning C</title>
   <link href="http://atomicules.co.uk/2009/10/06/learning-c.html"/>
   <updated>2009-10-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/06/learning-c</id>
   <content type="html">
		
				 &lt;p&gt;Yesterday I decided I'd make a start on learning C as I'd like to be able to hack &lt;a href=&quot;http://shoes.heroku.com&quot;&gt;Shoes&lt;/a&gt; a bit. So the first thing I needed to sort out was a build environment as there's no such loveliness as &lt;a href=&quot;http://en.wikipedia.org/wiki/Interactive_Ruby_Shell&quot;&gt;IRB&lt;/a&gt;. I already had the &lt;a href=&quot;http://www.microsoft.com/whdc/devtools/WDK/default.mspx&quot;&gt;WDK&lt;/a&gt; (previously, DDK) build environment installed for &lt;a href=&quot;http://wiki.github.com/shoes/shoes/buildingshoeswithwindowsddk&quot;&gt;building Shoes&lt;/a&gt; so figured that I should also be able to use this for plain C, but just didn't know how (the only things I've ever typed are &lt;em&gt;rake&lt;/em&gt; and &lt;em&gt;make&lt;/em&gt;). Thankfully someone else had documented how to &lt;a href=&quot;http://randomlearningnotes.wordpress.com/2009/04/20/using-wdkddk-build-environment-for-drivers-and-non-drivers/&quot;&gt;use WDK to build C programs&lt;/a&gt; so I was all set to go.&lt;/p&gt;

&lt;p&gt;That was until I stumbled across this cryptic error message trying to build: &quot;&lt;a href=&quot;http://stackoverflow.com/questions/1154660/fatal-error-u1087-cannot-have-and-dependents-for-same-target&quot;&gt;fatal error U1087: cannot have : and :: dependents for same target&lt;/a&gt;”. Turns out this is because the path I was using had a space in it. This would be because I was using something along the lines of &quot;D:\Users\me\&lt;em&gt;My Friggin' Documents&lt;/em&gt;\code\&quot;. You know the whole &quot;My Documents&quot; thing that Windows pushes on you (and while I'm at it why are &quot;My Pictures&quot;, &quot;My Videos&quot;, etc indside &quot;My Documents&quot;?!!). Had it been a home PC (well apart from the fact I wouldn't have been using Windows in the first place) I gather this would have been &lt;a href=&quot;http://www.edbott.com/weblog/?p=737&quot;&gt;simple to fix&lt;/a&gt;, but as it was it meant searching through the registry and making changes in mutliple entries (Shell Folders) so I could finally eliminate &quot;My Documents&quot; (hmmm, why not just &quot;Documents&quot; in the first place?) and while I was at it reorganise my &quot;Home&quot; directory into a much more &lt;a href=&quot;http://www.apple.com/macosx/&quot;&gt;sensible layout&lt;/a&gt;. I guess it shouldn't have come as a suprise that the hardest bit about setting out to learn C would be using bloody Windows.&lt;/p&gt;

&lt;p&gt;Anyway, with that out of the way I set off to find some handy Vim plugins to help me with C:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=31&quot;&gt;a.vim&lt;/a&gt; for switching between header and source files.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://vim.sourceforge.net/scripts/script.php?script_id=273&quot;&gt;taglist.vim&lt;/a&gt; I don't really need this with my simple C files, but I think this is what helps turn Vim into an IDE, rather than being an editor that works on separate files. Will probably be handy for my Ruby stuff. Requires &lt;a href=&quot;http://ctags.sourceforge.net/&quot;&gt;Exuberant CTags&lt;/a&gt;. All explained, complete with cute baby pic, at &lt;a href=&quot;http://www.thegeekstuff.com&quot;&gt;thegeekstuff.com&lt;/a&gt;: &lt;a href=&quot;http://www.thegeekstuff.com/2009/04/ctags-taglist-vi-vim-editor-as-sourece-code-browser/&quot;&gt;Ctags and Taglist: Convert Vim Editor to Beautiful Source Code Browser for Any Programming Language&lt;/a&gt;. And also thanks to Google for turning up &lt;a href=&quot;http://twitter.com/kuy/statuses/190014312&quot;&gt;this person's twitter&lt;/a&gt; status. I would have never figured it out otherwise.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://vim.sourceforge.net/scripts/script.php?script_id=1492&quot;&gt;Pyte&lt;/a&gt; Not related to C, but I found this colour scheme which looks nice.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Didn't bother with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://vim.sourceforge.net/scripts/script.php?script_id=213&quot;&gt;c.vim&lt;/a&gt; I reckon SnipMate will get me most of this, and it'll get too confusing using more than one snippet style plugin.&lt;/li&gt;
&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Dhotson The Next Page The Limberness Of The</title>
   <link href="http://atomicules.co.uk/2009/10/06/dhotson-the-next-page-the-limberness-of-the.html"/>
   <updated>2009-10-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/06/dhotson-the-next-page-the-limberness-of-the</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.post-gazette.com/pg/07252/815585-109.stm&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_kr2zlvkk9k1qz7eo6o1_500.jpg&quot; alt=&quot;Dhotson The Next Page The Limberness Of The&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/205713601/the-next-page-the-limberness-of-the-fixed-gear&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;&lt;a href=&quot;http://www.post-gazette.com/pg/07252/815585-109.stm&quot;&gt;The Next Page: The Limberness of the Fixed Gear Mind&lt;/a&gt;

&lt;p&gt;&quot;there's a certain camaraderie that comes with riding a fixie... ...and like-minded cyclists are especially prone to forming cliques... ...the fixed gear community is remarkably diverse and inclusive. The informal society includes people from all walks of life -- from punk rock college girls to &lt;strong&gt;aging fathers with mortgage payments and office jobs&lt;/strong&gt;&quot;.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Bastards. I'm not that old.&lt;/p&gt;


				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Pavement Reunion</title>
   <link href="http://atomicules.co.uk/2009/10/05/pavement-reunion.html"/>
   <updated>2009-10-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/05/pavement-reunion</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://pitchfork.com/news/36505-holy-shit-pavement-reunion-is-real/&quot;&gt;&#187; Pavement Reunion&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Ok, so a bit behind with this post. But I just wanted a chance to say: I saw &lt;a href=&quot;http://ragemagazine.co.uk/ISSUE3/INDLIV03.PDF&quot;&gt;Pavement back in 1995 at the Brixton Academy&lt;/a&gt; (link to PDF review from &lt;a href=&quot;http://ragemagazine.co.uk/&quot;&gt;Rage magazine&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;There you go. Done it.&lt;/p&gt;

&lt;p&gt;As far as I can recall my ticket was courtesy of my friend (I wish more than just one of my old school friends maintined an online presence, Facebook excluded, so I could have a nosey on what they are up to now) who wanted someone to accompany him. I don't think I was that fussed for Pavement, but I did like Deus who were supporting and I think Blumfeld were quite good too. I lived a lot nearer London then than I do now of course. And I was probably a bit scared walking through Brixton.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Github and Jekyll</title>
   <link href="http://atomicules.co.uk/2009/10/05/github-and-jekyll.html"/>
   <updated>2009-10-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/05/github-and-jekyll</id>
   <content type="html">
		
				 &lt;p&gt;The geek side of me is really tempted to desert Tumblr and move to &lt;a href=&quot;http://pages.github.com&quot;&gt;Github Pages&lt;/a&gt; and &lt;a href=&quot;http://wiki.github.com/mojombo/jekyll&quot;&gt;Jekyll&lt;/a&gt;. Reminds me of the time I used &lt;a href=&quot;http://nanoblogger.sourceforge.net/&quot;&gt;Nanoblogger&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I wasn't sure about what could be acheived using Jekyll - most of the &lt;a href=&quot;http://wiki.github.com/mojombo/jekyll/sites&quot;&gt;sites&lt;/a&gt; I looked at are quite simple, but then I found this one which is a really &lt;a href=&quot;http://www.paperplanes.de/&quot;&gt;nice implementation on Jekyll&lt;/a&gt;, so the only thing holding me back is time - And it's not like I have a stack of spare time on my hands, so the ease of use of Tumblr is likely to win out for the time being.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Chrome with IETab</title>
   <link href="http://atomicules.co.uk/2009/10/05/chrome-with-ietab.html"/>
   <updated>2009-10-05T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/10/05/chrome-with-ietab</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.chromeplus.org/&quot;&gt;&#187; Chrome with IETab&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Oooh, so nearly a Firefox replacement for at work. It's not quite there yet: For instance to get themes to work, I had to keep Chrome installed, apply the theme there and copy over my preferences file to Chromeplus. Just a bit messy, and I don't really want to have Chrome and Chromeplus installed. So for now Firefox still wins. Good to see this though.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>More technical details about Google Chrome Frame</title>
   <link href="http://atomicules.co.uk/2009/09/24/more-technical-details-about-google-chrome-frame.html"/>
   <updated>2009-09-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/24/more-technical-details-about-google-chrome-frame</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://jimray.tumblr.com/post/194793633/more-technical-details-about-google-chrome-frame&quot;&gt;jimray&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I am completely smitten with &lt;a href=&quot;http://code.google.com/chrome/chromeframe/&quot;&gt;Google Chrome Frame&lt;/a&gt;. I don’t think it’s an overstatement to call it one of the more interesting developments in the web landscape to come about in some time, because it finally provides a real solution to the horror that is Internet Explorer. It’s not perfect, of course, but it’s an audacious start. If nothing else, it should give Microsoft a rather swift kick in the ass.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;While this is fun, remarkably clever and really interesting, I'm undecided on it's usefullness. I guess it solves problems for web developers. But it isn't going to make IE go away nor necessarily push Microsoft to improve IE.&lt;/p&gt;
&lt;p&gt;Are there really that many home users using IE? I guess there are? But I would have thought the majority of IE users are corporate users who have to use IE because a) that's all that's available to them and their machines are locked down (in which case will they be able to install this plugin?), or b) because their internal web sites and business systems will only work with IE (and in my case only IE6). And I can't help thinking that since Google has solved the problem for Microsoft that, in a way, they have less reason to fix IE now.&lt;/p&gt;
&lt;p&gt;Actually, I've just twigged why I don't quite get Chrome tab: I'm thinking as an end user rather than a developer. For me I wish they'd just released IETab for Chrome.&lt;/p&gt;
&lt;p&gt;Geek thought: I wonder if I this will run in IETab?&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Hmm Its Been That Long Since My Last Lot Of</title>
   <link href="http://atomicules.co.uk/2009/09/24/hmm-its-been-that-long-since-my-last-lot-of.html"/>
   <updated>2009-09-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/24/hmm-its-been-that-long-since-my-last-lot-of</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3917322448/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2500/3917322448_8891e118d4.jpg&quot; alt=&quot;Hmm Its Been That Long Since My Last Lot Of&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;Hmm, it's been that long since my last lot of photos, that I forgot to blog about them when they finally came along. Anyway, we went to &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157622284301577/&quot;&gt;a wedding&lt;/a&gt;, which actually had good weather considering how crappy 'summer' has been as a whole.&lt;/p&gt;
&lt;p&gt;This is one of my favs, and I've now fallen in love with Ektar. It really is fine grain, scans really well and just looks ace.&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Ditching Spreadsheets for Budgeting</title>
   <link href="http://atomicules.co.uk/2009/09/24/ditching-spreadsheets-for-budgeting.html"/>
   <updated>2009-09-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/24/ditching-spreadsheets-for-budgeting</id>
   <content type="html">
		
				 &lt;p&gt;I've been doing monthly budgets on spreadsheets since I finished Uni, started work and finally became financially responsible for myself (sorry it took so long dad!). I first starting using Appleworks, then I think I might have moved to NeoOffice for a bit, and then for the last few years I've been using Google Docs. The spreadsheet itself has had a few tweaks over the years, but there's nothing mindblowing about it: I just wanted to make it as quick as possible to get my bank statements into it (more on that later), have some basic forecasting of how much cash I've left until payday, and provide some basic tracking of what categories money has been spent on (e.g. Shopping, having my nails done, etc). &lt;/p&gt;

&lt;p&gt;Admittedly I'd heard about Mint a few years ago and was quite excited by it, but since it was US only (and automatic import only) I just dismissed it. For some reason it never occurred to me that a multitude of competitors would spring up and I should be looking at them. &lt;/p&gt;

&lt;p&gt;Roll on a few years and that's just what I did. I tried a whole host of apps and almost gave up and went back to spreadsheets, but finally I think I've found something to replace them. Here's my quick run down:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.mint.com/&quot;&gt;Mint&lt;/a&gt; - can't use as it's US only and doesn't allow manual import.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.buxfer.com/&quot;&gt;Buxfer&lt;/a&gt; - This is like SmugMug vs Flickr for me. I.e. On paper Buxfer is the clear winner. For one it actually seems to have a business plan rather than relying on VC funding and aiming for a buy out: It has a fully functioning free account and then two levels of paid accounts offering really good extras, such as forecasting. But when it came to it, I just couldn't gel with it.   &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.moneytrackin.com/&quot;&gt;Moneytrackin'&lt;/a&gt; - Again, looks good at face value, it's ad supported, which I don't mind, but what really bugged me was that there was no way to turn off the notifications like &quot;You haven't submitted any tips&quot;, &quot;You haven't uploaded a profile picture&quot;, etc. Oh, that and however I set my date preferences it would not import my bank statements correctly.   &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://money.strands.com/&quot;&gt;MoneyStrands&lt;/a&gt; - replaces &lt;a href=&quot;http://www.expensr.com/&quot;&gt;Expensr&lt;/a&gt;, which I believe was quite good, and as far as I can tell MoneyStrands isn't matching up to it yet. I was impressed that it seem to offer automation of pulling statements from my bank, the first one that seemed to offer this, but then put off by the half-arsed implementation: they &lt;a href=&quot;https://money.strands.com/forum/topic/smile-uk&quot;&gt;missed off the account number field!&lt;/a&gt; Not really a good impression.  &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.rudder.com&quot;&gt;Rudder&lt;/a&gt; - &lt;a href=&quot;http://mashable.com/2009/05/19/rudder-security-breach/&quot;&gt;Hmmm&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.geezeo.com/&quot;&gt;Geezeo&lt;/a&gt; - Only displays in US currencies. So put me off. There's so many to choose from you've got to narrow down the possibles some how. (Did go back and tried to register, but couldn't with a UK postcode)  &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.budgetpulse.com/&quot;&gt;Budgetpulse&lt;/a&gt; - I honestly can't remember. I swear I did look at it. (Since I couldn't remember I went and had a look: Comes a close second. Does manual import, doesn't do automatic tagging/categorising, which means doing a whole years worth of transactions would take forever. Also not as intuitive as Wesabe. And I didn't like that you have to email to delete the account.)  &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.justthrive.com/&quot;&gt;Thrive&lt;/a&gt; - Automatic import only, like Mint, so counts it out.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.wesabe.com/&quot;&gt;Wesabe&lt;/a&gt; - Where I ended up. Wouldn't say it's a clear winner, but it worked well enough and didn't put me off using it in the process: I.e. Quite intuitive, quick and pleasurable to use. The last thing you want to be doing with finances is spending too long doing them. Or learning how to do them.  I've found I can work around it's lack if budgeting tools by creating cash accounts for pending transactions, etc. It's a shame I can't then move these transactions to my actual account, instead I have to delete or archive the cash account, not such a big deal I guess if I'm importing data anyway. Also, its a bit of an arse that it insists a month starts on the 1st, where as my payday is earlier. Therefore my monthly targets are always going to be a bit off. However, the tagging is very good, and it didn't take too long to categorise a whole years worth of spending. It may be lacking some of the tools the others have, but what it does do, it does well. &lt;/p&gt;

&lt;p&gt;So there you go. Wesabe has replaced spreadsheets. &lt;/p&gt;

&lt;p&gt;* As a footnote I feel it is only fair to slag off my bank, which it seems is the most un-internetty Internet bank ever. Not offering anyway to export data whatsoever. Instead I rely on these &lt;a href=&quot;http://www.4square.co.uk/smile/&quot;&gt;two&lt;/a&gt; &lt;a href=&quot;http://userscripts.org/scripts/show/6976&quot;&gt;tools&lt;/a&gt;. &amp;lt;Rant&amp;gt;How British banks get away with such consistently shit levels of customer service whilst at the same time doing their best to destroy the Economy, and then expecting the exact same people they are kicking out of their homes to bale them out via tax I don't know. We seriously should have let the banks tank, that way we'd have been forced to build an economy on something other than make believe. &amp;lt;/Rant&amp;gt;&lt;/p&gt;

&lt;p&gt;** Grrrr Markdown formatting in Tumblr.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Github Works</title>
   <link href="http://atomicules.co.uk/2009/09/14/github-works.html"/>
   <updated>2009-09-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/14/github-works</id>
   <content type="html">
		
				 &lt;p&gt;I'm fortunate in that I'm not particularly bothered about the underlying &lt;a href=&quot;http://en.wikipedia.org/wiki/Revision_control&quot;&gt;VCS&lt;/a&gt; I'm using. So I don't have to get into any philosphical arguments about &lt;a href=&quot;http://git-scm.com/&quot;&gt;Git&lt;/a&gt; vs &lt;a href=&quot;http://mercurial.selenic.com/wiki/&quot;&gt;Mercurial&lt;/a&gt;, &lt;a href=&quot;http://bazaar-vcs.org/&quot;&gt;etc&lt;/a&gt;,  because for my needs, &lt;a href=&quot;http://subversion.tigris.org/&quot;&gt;SVN&lt;/a&gt; would be fine; I'm not working on any big multi-user projects, I'm just interested in version control for my stuff.&lt;/p&gt;

&lt;p&gt;Days gone by I've used a locally installed VCS, but now I feel that is a bit pointless: One, it's nice having some remoteness, should said local machine die a death; Two, it's not just about the VCS itself, having a hosted solution brings with it the benefit of wikis, bug trackers, download pages, project statistics, etc; and Three, although I may not be collaborating with someone, it can be handy to point someone in the direction of the code, which you can't do if it's on only on your machine. At work I'm working on a project which benefits from a centrally hosted SVN server. Because this project is arguabley not a personal project (even if it is practically), I'm allowed to use their hosting. But they make a big point about no personal projects (By personal they mean work-personal). So if I'm working on a bit of code that benefits me only, or only one other person only, I can't get version control for it.&lt;/p&gt;

&lt;p&gt;Although I can.&lt;/p&gt;

&lt;p&gt;Thanks to &lt;a href=&quot;http://github.com/&quot;&gt;Github&lt;/a&gt; providing ssh access on port 443 I can use Git and Github to host my code when work 'says' no to hosting it and no to anyone else hosting it (via the kindness of proxies and firewalls). I'm not stupid enough to put any sensitive work stuff on there (there's being frowned upon and then being FROWNED upon), but it is nice to have a solution for my day to day hacks. And so that is why I choose Github and Git over the other options. It works where &lt;a href=&quot;http://bitbucket.org/jespern/bitbucket/issue/939/cannot-authenticate-when-pushing-via-https&quot;&gt;others don't&lt;/a&gt;.  Yes &lt;a href=&quot;http://bitbucket.org/plans&quot;&gt;bitbucket&lt;/a&gt; and &lt;a href=&quot;http://beanstalkapp.com/pricing&quot;&gt;Beanstalk&lt;/a&gt; (A beautiful SVN solution, by the way) may provide a free account that includes a private repository (although no secure checkouts/commits with the free plan on Beanstalk, but you do with bitbucket -  nice), whereas with Github you &lt;a href=&quot;http://github.com/plans&quot;&gt;have to pay&lt;/a&gt;, but Github works, so gets the pennies.&lt;/p&gt;

&lt;p&gt;Plus, Github is a beautiful web app. It's lovely for visualising commits and changes, far nicer than diff-ing in any application I've ever used. And it's design encourages people to dive in and help code open source projects because it's so easy to use. It's dead easy to fork a project, fast forward to catch up with recent changes should you have forked and then forgotten to do anything, and then easy to put in a pull request for your changes back to the master. So easy in fact even I felt encouraged to do it for &lt;a href=&quot;http://github.com/atomicules/shoes/commit/f4a12f4f83ccd9443a0284996c8975c210fe4f51&quot;&gt;Shoes&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Addendum: I never knew this existed, I wish my company would do this: &lt;a href=&quot;http://fi.github.com/&quot;&gt;Github Firewall Install&lt;/a&gt;.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Flip At The Bottom This Is The Image That Has</title>
   <link href="http://atomicules.co.uk/2009/09/14/flip-at-the-bottom-this-is-the-image-that-has.html"/>
   <updated>2009-09-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/14/flip-at-the-bottom-this-is-the-image-that-has</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Flip at the bottom. This is the image that has been better for me. Start out the same way as the previous technique. But instead, flip the pedal as close to 6 o’clock as possible&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;i&gt;- By &lt;a href=&quot;http://bicycle.thebluesmokeband.com/wordpress/&quot;&gt;Bricycle: Fun On Two Wheels&lt;/a&gt; from &lt;a href=&quot;http://bicycle.thebluesmokeband.com/wordpress/?p=70&quot;&gt;How To Get Into Toe Clips On A Fixed Gear Bicycle&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;So a bit later than hoped for (although patience provided me with a 99p eBay bargain), I've got some toe clips for my bike. No more embarrassing moments forgetting I can't freewheel down hill and having to lift my legs up off the pedals. Nope, instead I'm swapping that for the embarrassment of not being able to get my feet into the toe clips in the first place.&lt;/p&gt;
&lt;p&gt;I found the above advice quite useful though. You'd think it would be easier to get your foot in near the top of the stroke, but no it seems it's much easier to get it in at the bottom, what's more you can get it in on the first revolution (which is good because there's no chance of me flipping the pedal and getting my foot in at speed).&lt;/p&gt;
&lt;p&gt;I did find though, that starting of with the opposite leading foot helped. I.e. without clips I'd naturally lead with my right leg, but it seems my left foot lacks co-ordination and there's no way I can get it in the clip. If I lead with my left foot I can get my right foot in before my left has done half a revolution (I do currently have to sneak a peak though).&lt;/p&gt;
&lt;p&gt;Also, I now see the attraction of trackstands. Or not stopping at junctions, lights, etc. Think I'll have to learn trackstands.&lt;/p&gt;
&lt;p&gt;Also, I thought I'd have to consciously 'use' the toe clips, i.e. make a point of pulling up on the up stroke, but you don't, you just pedal as normal and let the toe clips do the magic - I can only imagine how ace clipless must be - but imagine it will remain as it's 99p for brand new to clips vs at least £40 for someone's sweaty second hand SPD shoes and worn out pedals.&lt;/p&gt;
&lt;p&gt;(Tagged as art, because getting into clips on a Fixie is most certainly an Art.)&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;EDIT 1:&lt;/strong&gt; I'm getting the knack of this now. My worst experiences so far have been cycling a third of my journey home before I managed to get my foot in. And once having to stop so I could set off again and get my foot in on the first revolution -by far the easiest thing to do. But now I'm getting to the point where I can set off around a roundabout and worry about getting my foot in once I've exited. I think rather than trying to flip the pedal I almost let it turn under my foot, just a gentle touch and my foot is there ready to go in.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;EDIT 2:&lt;/strong&gt; tried to pay attention to what happens today: I think as the pedal comes up I lift my foot up, or more like just take pressure off the pedal, so it rotates underneath me and then my foots there ready to go in for the downward stroke. Sometimes takes a couple of goes. But this way is more like &quot;flipping at the top&quot; than the bottom. But in reality when you are pegging it along, the top and bottom of the stroke is all one thing. &lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Most People Shouldnt Be Running Their Own</title>
   <link href="http://atomicules.co.uk/2009/09/09/most-people-shouldnt-be-running-their-own.html"/>
   <updated>2009-09-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/09/most-people-shouldnt-be-running-their-own</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;Most people shouldn’t be running their own blogging software. Services like Tumblr, Posterous and Blogger are excellent and free. WordPress.com, the hosted version of WordPress, gives you 90% of the benefits with none of the hassle.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;i&gt;- By &lt;a href=&quot;http://johnaugust.com&quot;&gt;John August&lt;/a&gt; from &lt;/i&gt;&lt;a href=&quot;http://johnaugust.com/archives/2009/blogs-and-baked-goods&quot;&gt;&lt;i&gt;Blogs and Baked Goods&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When I first started with a website I used Blogger as a backend to my site. I've also used static generation with &lt;a href=&quot;http://nanoblogger.sourceforge.net/&quot;&gt;Nanoblogger&lt;/a&gt;. And even had a bash at my own built blog in Rails. I've never used Wordpress, but agree with the sentiments that nowadays it makes much more sense to let someone else do the hardwork. For my latest incarnation I chose Tumblr, which is excellent to use, BUT has one major flaw: No proper backup facility. Sure there are &lt;a href=&quot;http://boutofcontext.com/tumblr_backup.php&quot;&gt;tools&lt;/a&gt; and &lt;a href=&quot;http://www.red-sweater.com/marsedit/&quot;&gt;applications&lt;/a&gt;, but nothing integrated. So in that respect you are almost living dangerously as hosting Wordpress yourself - you could still lose all your content. I hope that Tumblr fix this someday soon.&lt;/p&gt; 
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>iTunes 9 uses Webkit</title>
   <link href="http://atomicules.co.uk/2009/09/09/itunes-9-uses-webkit.html"/>
   <updated>2009-09-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/09/09/itunes-9-uses-webkit</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.satine.org/archives/2009/09/09/does-itunes-9-use-webkit/&quot;&gt;&#187; iTunes 9 uses Webkit&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					Finally! Although it seems not completely. I seem to remember reading that the old iTunes store was something to do with being Quicktime based, but that could be a load of rubbish. I guess iTunes was around awhile before Webkit was even a twinkle, and of course iTunes became quite entrenched on Windows and Linux so switching probably wasn't that straight forward. 
				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>RubyInstaller for Windows, Ruby 1.9.1 Pain and installing libxml rubygem</title>
   <link href="http://atomicules.co.uk/2009/08/28/rubyinstaller-for-windows-ruby-1-9-1-pain-and.html"/>
   <updated>2009-08-28T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/28/rubyinstaller-for-windows-ruby-1-9-1-pain-and</id>
   <content type="html">
		
				 &lt;p&gt;Unfortunately for me, Windows remains a daily fact of life, and as much as I wish I could use OSX or Linux instead, I can't. Such is working life. So I feel it's a shame that Windows remains very much a third class citizen in the Ruby world.&lt;/p&gt;
&lt;p&gt;I fairly recently came across the &lt;a href=&quot;http://rubyinstaller.org/&quot;&gt;RubyInstaller&lt;/a&gt; project, and excellent effort to update the ageing 1.8.6 One-Click installer still offered on the official &lt;a href=&quot;http://www.ruby-lang.org/en/downloads/&quot;&gt;Ruby download&lt;/a&gt; page. They now offer two new &quot;&lt;a href=&quot;http://rubyforge.org/frs/?group_id=167&amp;amp;release_id=38052&quot;&gt;Technology Preview&lt;/a&gt;&quot; installers for Ruby; one for 1.8.6 and one for 1.9.1.&lt;/p&gt;
&lt;p&gt;Although there is perhaps &lt;a href=&quot;http://wiki.github.com/oneclick/rubyinstaller/faq#bundled_short&quot;&gt;one step back&lt;/a&gt; with these installers, there are &lt;a href=&quot;http://wiki.github.com/oneclick/rubyinstaller/faq#bundled_long&quot;&gt;a lot of steps forward&lt;/a&gt;, and I'm very glad someone is making a decent effort on Windows. I particulary like that it doesn't modify the windows PATH environment variable, rather it offers a special shortcut to a Command Prompt that sources the Ruby install. This means you can easily install both Ruby 1.8.6 and 1.9.1 and have command prompts open for both and you can just type &quot;ruby&quot; or &quot;irb&quot; in both and it works rather than having to type &quot;ruby19&quot; or &quot;irb19&quot;, etc. Mind you, there is also a shortcut staright to IRB and a built-in gems documentation local web server you can start up. Nice.&lt;/p&gt;
&lt;p&gt;It was a combination of the one-step back and trying Ruby 1.9.1 again that snagged me though, and things that &quot;just worked&quot; under the old One-Click installer weren't working under the new RubyInstaller, specifically trying to install &lt;a href=&quot;http://roo.rubyforge.org/&quot;&gt;roo&lt;/a&gt;, led to an error installing &lt;a href=&quot;http://libxml.rubyforge.org/&quot;&gt;libxml-ruby&lt;/a&gt;, even after I'd installed the &lt;a href=&quot;http://wiki.github.com/oneclick/rubyinstaller/development-kit&quot;&gt;Developer Kit&lt;/a&gt; (you need that for Hpricot); I was getting the following:&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;Building native extensions.  This could take a &lt;span class=&quot;k&quot;&gt;while&lt;/span&gt;...
ERROR:  Error installing libxml-ruby:
ERROR: Failed to build gem native extension.

C:/Ruby19/bin/ruby.exe extconf.rb
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;socket&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lsocket... no
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;gethostbyname&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lnsl... no
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;atan&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lm... yes
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;inflate&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lz... no
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;inflate&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lzlib... no
checking &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;inflate&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt; in -lzlib1... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;more
details.  You may need configuration options.

Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;opt&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/include
--with-opt-lib
--without-opt-lib&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;opt&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/lib
--with-make-prog
--without-make-prog
--srcdir&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;.
--curdir
--ruby&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;C:/Ruby19/bin/ruby
--with-iconv-dir
--without-iconv-dir
--with-iconv-include
--without-iconv-include&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;iconv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/include
--with-iconv-lib
--without-iconv-lib&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;iconv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/lib
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;zlib&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/include
--with-zlib-lib
--without-zlib-lib&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;zlib&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-dir&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/lib
--with-socketlib
--without-socketlib
--with-nsllib&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
--without-nsllib
--with-mlib
--without-mlib
--with-zlib
--without-zlib
--with-zliblib
--without-zliblib
--with-zlib1lib
--without-zlib1lib
extconf failure: need zlib


Gem files will remain installed in C:/Ruby19/lib/ruby/gems/1.9.1/gems/libxml-rub
y-1.1.3 &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;inspection.
Results logged to C:/Ruby19/lib/ruby/gems/1.9.1/gems/libxml-ruby-1.1.3/ext/libxm
l/gem_make.out
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;The answer was on the &lt;a href=&quot;http://libxml.rubyforge.org/rdoc/index.html&quot;&gt;libxml&lt;/a&gt; page:&lt;/p&gt;
&lt;blockquote&gt;If you are running Windows, make sure to install the Win32 RubyGem which             includes an already built binary file&lt;/blockquote&gt;
&lt;p&gt;So I &lt;a href=&quot;http://rubyforge.org/frs/?group_id=494&quot;&gt;downloaded&lt;/a&gt; the &lt;b&gt;libxml-ruby-1.1.3-x86-mswin32-60.gem&lt;/b&gt; and installed locally and all was well. (Note that under Ruby 1.8.6, rubygems is sensible enough to install this version, not so under 1.9.1)&lt;/p&gt;
&lt;p&gt;However, 1.9.1 still remains a pain in the arse on Windows, I think mainly because of gems.&lt;/p&gt;
&lt;p&gt;Trying to require 'roo' under 1.9.1 and 1.8.6 lead to an error because it couldn't find &quot;libiconv-2.dll&quot; and &quot;libxml2-2.dll&quot;. Ok, fair enough, they are in the \libxml-ruby-1.1.3-x86-mswin32-60\lib directory, so it should be able to find them, but it is easier enough to copy them to the Ruby/bin directory. But then, under 1.9.1, I got an error about not being able to find &quot;msvcrt-ruby18.dll&quot;, which as far as I can tell means the gem is not ready for Ruby 1.9.1.&lt;/p&gt;
&lt;p&gt;So I am back to Ruby 1.8.6 again. And all is well. Ruby 1.9.1 remains, once again, a distant dream on Windows.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;EDIT: Apr-2011&lt;/strong&gt; I've just gone and tried again, and at first I was unsuccessful, but then I found this page: &lt;a href=&quot;https://github.com/oneclick/rubyinstaller/wiki/Gem-List&quot;&gt;Gem List&lt;/a&gt; which lists which gems have been successfully installed using the new &lt;a href=&quot;http://rubyinstaller.org/add-ons/devkit/&quot;&gt;DevKit&lt;/a&gt;. It has a note against libxml-ruby to use &lt;code&gt;gem install --platform=mswin32&lt;/code&gt;. And this worked fine for me (Windows XP, Ruby 1.9.2).&lt;/p&gt;

&lt;p&gt;So, based off the &lt;a href=&quot;https://github.com/oneclick/rubyinstaller/wiki/Development-Kit&quot;&gt;DevKit wiki&lt;/a&gt;, what you'd expect to work: &lt;code&gt;gem install libxml-ruby --platform=ruby&lt;/code&gt; doesn't, but using &lt;code&gt;gem install -r libxml-ruby --platform=mswin32&lt;/code&gt; does work.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Dgblackout Via Dirtyprettything I Love</title>
   <link href="http://atomicules.co.uk/2009/08/28/dgblackout-via-dirtyprettything-i-love.html"/>
   <updated>2009-08-28T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/28/dgblackout-via-dirtyprettything-i-love</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://yayeveryday.com/images/post_images/2009-5-30/4330/1243709427.jpg&quot;&gt;
				
					&lt;img src=&quot;images/tumblr_kp27oaJrwX1qze11c.jpg&quot; alt=&quot;Dgblackout Via Dirtyprettything I Love&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://deangray.co.uk/post/173367314/via-dirtyprettything-i-love-you&quot;&gt;dgblackout&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;(via &lt;a href=&quot;http://dirtyprettything.tumblr.com/&quot;&gt;dirtyprettything&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I Love You!&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I truly wish there was some way I could get this on our intranet at work.&lt;/p&gt;

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>The Future of _why's Libraries such as Markaby and Hpricot</title>
   <link href="http://atomicules.co.uk/2009/08/25/the-future-of-whys-libraries-such-as-markaby-and.html"/>
   <updated>2009-08-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/25/the-future-of-whys-libraries-such-as-markaby-and</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.infoq.com/news/2009/08/future-of-whys-libraries&quot;&gt;&#187; The Future of _why's Libraries such as Markaby and Hpricot&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/171235474/the-future-of-whys-libraries-such-as-markaby-and&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://codefeed.tumblr.com/post/171199876/the-future-of-whys-libraries-such-as-markaby-and&quot;&gt;codefeed&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;With the sudden disappearance of _why, some popular libraries as Markaby, Hpricot and others are orphaned. We look at the effort to find maintainers for some, and at replacements for other libraries….&lt;/blockquote&gt;&lt;/blockquote&gt;

&lt;p&gt;Although &lt;a href=&quot;http://nokogiri.rubyforge.org/nokogiri/&quot;&gt;Nokogiri&lt;/a&gt; might seem like a drop in replacement for &lt;a href=&quot;http://github.com/whymirror/hpricot/tree/master&quot;&gt;Hpricot&lt;/a&gt;, I'm not sure how easy that will be in &lt;a href=&quot;http://groups.google.com/group/shoooes&quot;&gt;Shoes&lt;/a&gt; which has Hpricot built in. If no one maintains Hpricot, then it would make sense to switch Shoes to Nokogiri, but it might end up being easier to get someone to maintain Hpricot! Will have to ask this on the Shoes mailing list.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>My 10 Favorite Things About the Ruby Language</title>
   <link href="http://atomicules.co.uk/2009/08/25/my-10-favorite-things-about-the-ruby-language.html"/>
   <updated>2009-08-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/25/my-10-favorite-things-about-the-ruby-language</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://yehudakatz.com/2009/08/24/my-10-favorite-things-about-the-ruby-language/&quot;&gt;&#187; My 10 Favorite Things About the Ruby Language&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/171199659/my-10-favorite-things-about-the-ruby-language&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;Ruby is awesome. :-)&lt;/blockquote&gt;

&lt;p&gt;Totally agree and I don't even understand all of those reasons, which I think is further evidence of all that is good about Ruby: It's very easy to pick up and start using for useful tasks. &lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>What happened to _why?</title>
   <link href="http://atomicules.co.uk/2009/08/20/what-happened-to-why.html"/>
   <updated>2009-08-20T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/20/what-happened-to-why</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://dhotson.tumblr.com/post/166852710/what-happened-to-why&quot;&gt;dhotson&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://jack.tumblr.com/post/166742844/what-happened-to-why&quot;&gt;jack&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://news.ycombinator.com/item?id=773106&quot;&gt;http://news.ycombinator.com/item?id=773106&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.reddit.com/r/programming/comments/9c5on/where_is_why/&quot;&gt;http://www.reddit.com/r/programming/comments/9c5on/where_is_why/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Twitter and github accounts are gone. All his domain names are resolving but not responding.&lt;/p&gt;
&lt;p&gt;I’m guessing he’s not dead or sick or injured or had his accounts compromised. He’s probably just moved on to bigger and better. It’s great how he showed everyone how artful and nonsensical programming can be but I think ultimately he remained a lone black sheep and nobody could keep up.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;_why’s been a big inspiration to me too.. I hope we’ll see him again.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;A big bummer. The Poignant Guide got me into coding and taught me to love Ruby. There wasn't (and still isn't as far as I know) anything comparable for any other language. And although I remain very much a non-programmer, that starting point has enabled me to go on and do things that I can stand back and look at and think &quot;Wow, I can't believe I've managed to do that!&quot;.&lt;/p&gt;
&lt;p&gt;Recently I've been spending a lot of time with Shoes and I'm gutted _why's (probably) decided to move on to pastures new. Shoes is/was just fantastic.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://github.com/whymirror&quot;&gt;Whymirror&lt;/a&gt; on GitHub is the place to be for now.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Shiny New Shoes</title>
   <link href="http://atomicules.co.uk/2009/08/20/shiny-new-shoes.html"/>
   <updated>2009-08-20T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/08/20/shiny-new-shoes</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://groups.google.com/group/shoooes&quot;&gt;&#187; Shiny New Shoes&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;A replacement mailing list set-up for Shoes developers.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Taking off the stabilisers (again)</title>
   <link href="http://atomicules.co.uk/2009/07/27/taking-off-the-stabilisers-again.html"/>
   <updated>2009-07-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/27/taking-off-the-stabilisers-again</id>
   <content type="html">
		
				 &lt;p&gt;I've been riding single speed for quite a while now. This is mainly by default, caused by the decay of the bike I was riding. For too long now, I've been riding my Dad's old bike, which was meant to be just an interim solution. In an attempt to prolong its life, I removed the derailleurs a long time ago, lined the chain up as best as possible and rode (poor man's) single speed.&lt;/p&gt;
&lt;p&gt;Recently the freewheel has been playing up, but opposite to making the bike fixed: instead the freewheel would choose to be disengaged most of the time, so once it was engaged I choose to keep pedaling as much as I could (because having it disengage on the way into roundabouts is very  scary).&lt;/p&gt;
&lt;p&gt;So I've kind of been preparing myself for Fixie. And waiting for our Cycle2Work scheme to start.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=aNCPEzdZs5s&quot;&gt;Watching fixie riding&lt;/a&gt; scares the shit out of me. It makes me feel really uncomfortable. But I can make a comparison to skateboarding there (or any such activity, surfing, snowboarding, etc): You can be a fixed gear rider and not have to try and kill yourself everyday. It's a pro vs amateur thing. I'd much prefer to keep myself at the bottom end of the amateur bracket, enjoy what I'm doing and push my envelope rather than someone else's. No need for jumping off buildings.&lt;/p&gt;
&lt;p&gt;Brakes are fine. You can just slow down if it's getting a bit nary. If the utter worse comes to the worse you can kick your feet off the pedals (I rate those who insist on clips or SPDs with Fixie in the Mental-Pro category. I'm not going anywhere near that) and pull on your brakes to stop and start again.&lt;/p&gt;
&lt;p&gt;I'm also not going to learn skip stops. Mainly because I can't afford the tyres. Skids were great fun as a kid when your dad was buying new tyres. Not so much now.&lt;/p&gt;
&lt;p&gt;Going up hills isn't too hard. You can't freewheel, no, but you can ease off every few revolutions to give your legs a break. You don't have to be pushing it hard all the time.&lt;/p&gt;
&lt;p&gt;And it really is ok to put your feet down. You won't have your bike confiscated. I'm not doing any of that trackstand bollocks. And I'm especially not going to practice in the living room.&lt;/p&gt;
&lt;p&gt;Mounting and dismounting: A lot seems to be made of getting on and getting off a fixed gear. All you have to do is get on and get off. Don't worry or think it too much. It is still just a bike!&lt;/p&gt;
&lt;p&gt;So when it comes down to it, you can ride fixie without having to go to extremes. No matter what anyone else says. There'll always be someone more extreme round the corner. At the moment you're 'not' a fixie rider if you &quot;use brakes&quot;, or don't have &quot;clips or straps&quot;, next week it'll be not a real fixie rider unless you &quot;have a wild boar strapped to naked back&quot;. If your bike is fixed gear, you are riding fixie.&lt;/p&gt;
&lt;p&gt;After a weekend of riding Fixie for the first time ever (unless you count the first trike I probably had as a toddler), it's really not that scary once you are doing it. In theory it should be easier to remember to peddle all the time, but to start with it is difficult not freewheeling at certain times (going down hill, over bumps and potholes, turning right into a junction), but as long as you have brakes, you're sat down and your feet aren't strapped in you'll be fine. And after the scare, next time you'll remember to keep pedalling.&lt;/p&gt;
&lt;p&gt;And you should try fixie if you can, not because of the image or attitude or culture that goes with it, just because it's fun.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EDIT: &lt;/strong&gt;The biggest danger so far is off the bike: Walking with the bike, forgetting the pedals will spin round and having one whack my shin.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Kisskitty Mentalreminder</title>
   <link href="http://atomicules.co.uk/2009/07/25/kisskitty-mentalreminder.html"/>
   <updated>2009-07-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/25/kisskitty-mentalreminder</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/tgRGNK0Lwpmpk9fkB8uy0iia.jpg&quot; alt=&quot;Kisskitty Mentalreminder&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://kisskitty.tumblr.com/post/137983619/mentalreminder-juliaguliaaa-met-this-girl&quot;&gt;kisskitty&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://mentalreminder.tumblr.com/post/137334125/juliaguliaaa-met-this-girl-earlier-i-love-her&quot;&gt;mentalreminder&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://juliaguliaaa.tumblr.com/post/137319638/met-this-girl-earlier-i-love-her-bike&quot;&gt;juliaguliaaa&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;met this girl earlier. i love her bike!&lt;/blockquote&gt;
&lt;p&gt;that’s a very mild, i believe it’s called, clown bike.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;what a stupid women. anyone who rides a fixie without breaks is offically a retarded hipster. thats all there is to it. unless yr riding in a velodrome there is absolutely no excuse. apart from that, nice bike.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Having just had a whirl today on a fixie for the first time since I was a toddler on a trike (probably, although could be my first time ever, since I can't remember for sure whether the first ever bike I had was a fixie - just guessing), I'd have to agree about the brakes.&lt;/p&gt;
&lt;p&gt;Because if worse comes to worse and you lose control, say for instance you momentarily forget you can't freewheel as zooming down hill, you can kick your feet out (think back to the days of ladies cycling in the country, bikes with baskets, long skirts billowing out, legs kicked out in front, pedals whirring round underneath) and pull on the BRAKES, stop and restart. Fair enough you look a plonker kicking your legs out (even more so if you opted for the long skirt and basket), but it saves being a crumpled heap in front of a car.&lt;/p&gt;
&lt;p&gt;If you don't have brakes you are knackered. If your feet come off the pedals at speed,  there's no fucking way you are getting your feet back on.&lt;/p&gt;
&lt;p&gt;(Tagged art, because it is an art).&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Beer foam will go down if you lick your finger and then stick it in the beer.</title>
   <link href="http://atomicules.co.uk/2009/07/25/beer-foam-will-go-down-if-you-lick-your-finger-and-then.html"/>
   <updated>2009-07-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/25/beer-foam-will-go-down-if-you-lick-your-finger-and-then</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://deangray.co.uk/post/148995622/beer-foam-will-go-down-if-you-lick-your-finger-and-then&quot;&gt;dgblackout&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;(via &lt;a href=&quot;http://fuckyeahfacts.tumblr.com/&quot;&gt;fuckyeahfacts&lt;/a&gt;)&lt;/blockquote&gt;
&lt;p&gt;Just tried it: results are definitely inconclusive. It might have had a tiny bit of an effect, but shit, I'm not sitting there with my finger in beer for 15mins for the foam to go down. Just gulp it down.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Dgblackout Ckck The Hasselblad Edc Electric</title>
   <link href="http://atomicules.co.uk/2009/07/22/dgblackout-ckck-the-hasselblad-edc-electric.html"/>
   <updated>2009-07-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/22/dgblackout-ckck-the-hasselblad-edc-electric</id>
   <content type="html">
		
				
					&lt;img src=&quot;images/sBNFhufdWq58e7plHLAgvAESo1_500.png&quot; alt=&quot;Dgblackout Ckck The Hasselblad Edc Electric&quot; /&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;&lt;a href=&quot;http://deangray.co.uk/post/146289374/ckck-the-hasselblad-edc-electric-data-camera&quot;&gt;dgblackout&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://ckck.tumblr.com/post/145581831/the-hasselblad-edc-electric-data-camera-was-a&quot;&gt;ckck&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;The &lt;b&gt;Hasselblad EDC (Electric Data Camera)&lt;/b&gt; was a specially designed camera intended for use on the surface of the moon, where the first lunar pictures were taken on July 20th, 1969 by Neil Armstrong... ...The 12 HEDC cameras used on the surface of the moon were left there. Only the film magazines were brought back.&lt;/blockquote&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So, first come, first served, a trip to the moon bags you a free Hassy? Probably cheaper than eBay!&lt;/p&gt;
&lt;p&gt;There is some more info on the &lt;a href=&quot;http://www.hasselblad.com/about-hasselblad/hasselblad-in-space/space-cameras.aspx&quot;&gt;Hasselblad Space Cameras&lt;/a&gt; page.&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Domain name changes. Back to the start.</title>
   <link href="http://atomicules.co.uk/2009/07/21/domain-name-changes-back-to-the-start.html"/>
   <updated>2009-07-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/21/domain-name-changes-back-to-the-start</id>
   <content type="html">
		
				 &lt;p&gt;About a year ago I got the &lt;i&gt;i-5-m.net&lt;/i&gt; domain name, because I was in a bit of a strop, fed-up, and wanted a proper domain name again.&lt;/p&gt;
&lt;p&gt;About the same time, I found out I still owned the &lt;i&gt;i5m.me.uk&lt;/i&gt; one (the benefit of 2 years renewal on UK domains), but because I'd de-tagged it, thrown the registration certificate away (in another huff), moved address, and changed email addresses, etc, I wasn't sure I'd be able to prove it was mine. So, not wanting to wait (re: strop above) I went for the new .net one. A bit later on, thanks to the helpful folks at &lt;a href=&quot;http://www.nominet.org.uk/&quot;&gt;Nominet&lt;/a&gt;, I did manage to get the &lt;i&gt;i5m.me.uk&lt;/i&gt; one properly registered.&lt;/p&gt;
&lt;p&gt;A bit later on still, I finally managed - after four years (The downside of 2 years renewal on UK domains) - to get back my original &lt;i&gt;i5m.co.uk&lt;/i&gt; domain from when I first ventured onto the net with my own site sometime in 2002. In my naviety I'd registered it through my webhost, who'd registered it in their name, went down the swaney and took my domain with it. Someone promptly nabbed it and sat on it for two years and then the same happened two years later.&lt;/p&gt;
&lt;p&gt;However, because I'd splashed out (well, hardly 'splashed', a few dollars, maybe) on a new domain, I just pointed the .co.uk and .me.uk ones at the .net one.&lt;/p&gt;
&lt;p&gt;Cue today, and my i-5-m.net domain is up for renewal soon and I have to face facts that as a domain name, it's a bit pants and all, what with the hyphens in it. And since I do now have my original domain name back I should just switch to using that.&lt;/p&gt;
&lt;p&gt;So I have.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;i5m.co.uk&lt;/i&gt; will reign supreme, and &lt;i&gt;i5m.me.uk&lt;/i&gt; will be a webhop to it. And until the &lt;i&gt;i-5-m.net&lt;/i&gt; one expires it will also be a webhop to here.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Tumblephone - Instant Mobile version of my site</title>
   <link href="http://atomicules.co.uk/2009/07/18/tumblephone-instant-mobile-version-of-my-site.html"/>
   <updated>2009-07-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/18/tumblephone-instant-mobile-version-of-my-site</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://tumblephone.com/i5m&quot;&gt;&#187; Tumblephone - Instant Mobile version of my site&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;This is ace. I was wondering if anyone had done any mobile themes for Tumblr, and wondering if it was possible to serve up different themes (I doubt it?), but then problem solved.&lt;/p&gt;

&lt;p&gt;You can use Tumblephone to instantly generate a mobile version of your site. iPhone optimised of course. Just add your Tumblr name at the end if the URL.&lt;/p&gt;

&lt;p&gt;I'll have to get a link added to the footer of my site.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Roo and 'OLE2 signature is invalid'</title>
   <link href="http://atomicules.co.uk/2009/07/17/roo-and-ole2-signature-is-invalid.html"/>
   <updated>2009-07-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/17/roo-and-ole2-signature-is-invalid</id>
   <content type="html">
		
				 &lt;p&gt;If you get an &quot;Ole::Storage::FormatError: OLE2 signature is invalid&quot; error when reading an Excel spreadsheet using &lt;a href=&quot;http://roo.rubyforge.org/&quot;&gt;Roo&lt;/a&gt; it can probably be solved by resaving the spreadsheet (unfortunately using Excel) and making sure it is saving it as &quot;Microsoft Office Excel Workbook (*.xls)&quot;, etc and not something odd.&lt;/p&gt;
&lt;p&gt;I had two spreadsheets that had the .xls extension, but seems they were masquerading; when doing a Save As on them one was actually in a &quot;Text (tab delimited)&quot; format and the other in a &quot;Web Page&quot; HTML format. These were system generated files, so I guess that explains their odd form.&lt;/p&gt;
&lt;p&gt;Couldn't find a whole lot of help out there about this.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>I'd like to like this, but I can't</title>
   <link href="http://atomicules.co.uk/2009/07/16/id-like-to-like-this-but-i-cant.html"/>
   <updated>2009-07-16T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/16/id-like-to-like-this-but-i-cant</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://googlereader.blogspot.com/2009/07/following-liking-and-people-searching.html&quot;&gt;&#187; I'd like to like this, but I can't&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Google Reader has gained &quot;Liking&quot; posts, which is great and what I thought &quot;Sharing&quot; should have done all along. I.e. I've always thought that if I've shared a post I should be able to see who else has shared it. And that is precisely what &quot;Liking&quot; does.&lt;/p&gt;

&lt;p&gt;I don't know if you can combine the two (share and like at the same time) as I haven't been able to &quot;Like&quot; anything yet as it's not available on the mobile view. At least as far as I can tell.&lt;/p&gt;

&lt;p&gt;The only bad news with this is that it comes just after Jon Hick's stopped work on &lt;a href=&quot;http://helvetireader.com/&quot;&gt;Helvetireader&lt;/a&gt;.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Not beautiful, but definitely not boring.</title>
   <link href="http://atomicules.co.uk/2009/07/15/not-beautiful-but-definitely-not-boring.html"/>
   <updated>2009-07-15T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/15/not-beautiful-but-definitely-not-boring</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.myspace.com/dimblebyandcapper&quot;&gt;&#187; Not beautiful, but definitely not boring.&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&quot;Not beautiful&quot; maybe being a bit harsh, but it makes for a better title. She's just not my cup of tea. Listening to the Introducing podcast has paid off again:&lt;/p&gt;

&lt;p&gt;Whilst sat on the bog catching up with my podcasts, I was half listening and half skimming through when I heard something a bit catchy. Going back for a second listen (in the bog again - it passes the day) I find out it is by a lady going by the name of Dimbleby &amp;amp; Capper; and who is neither Dimbleby nor Capper. What's more she's released the song from the podcast as a free mp3 on her Myspace page (Gah! Myspace, but it seems bands still use it).&lt;/p&gt;

&lt;p&gt;I'm crap at comparing artists so I won't bother, but she does manage to sound like four or five different people on this one track. She can definitely sing.&lt;/p&gt;

&lt;p&gt;For a less-insulting-on-your-eyes-than-myspace read up on her, &lt;a href=&quot;http://www.indiescreet.com/tag/dimbleby-capper/&quot;&gt;indiescreet&lt;/a&gt; has a little article.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Been Having Fun With Sunsets And Fields I Really</title>
   <link href="http://atomicules.co.uk/2009/07/02/been-having-fun-with-sunsets-and-fields-i-really.html"/>
   <updated>2009-07-02T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/02/been-having-fun-with-sunsets-and-fields-i-really</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3677041975/&quot;&gt;
				
					&lt;img src=&quot;http://farm3.static.flickr.com/2665/3677041975_6bcf13ce71.jpg&quot; alt=&quot;Been Having Fun With Sunsets And Fields I Really&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					Been having fun with sunsets and fields. I really like how &lt;a href=&quot;http://www.flickr.com/search/?q=sunset%20field&amp;amp;w=91098778%40N00&amp;amp;m=tags&quot;&gt;these came out&lt;/a&gt;. 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Worldwide Real-Time Firefox Download Stats</title>
   <link href="http://atomicules.co.uk/2009/07/01/worldwide-real-time-firefox-download-stats.html"/>
   <updated>2009-07-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/01/worldwide-real-time-firefox-download-stats</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://downloadstats.mozilla.com/&quot;&gt;&#187; Worldwide Real-Time Firefox Download Stats&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					I'm very much a webkit man nowadays, but Firefox still rules in the coroporate / office environment (even if mainly because of IETab). These stats are cool though. 
				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Potion - The Programming Language</title>
   <link href="http://atomicules.co.uk/2009/07/01/potion-the-programming-language.html"/>
   <updated>2009-07-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/01/potion-the-programming-language</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://hackety.org/potion/&quot;&gt;&#187; Potion - The Programming Language&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;So this is what has been keeping &lt;a href=&quot;http://whytheluckystiff.net/&quot;&gt;Why&lt;/a&gt; busy. Suppose it stands to reason he'd finally write his own language.&lt;/p&gt;

&lt;p&gt;I wonder whether this will become the basis of &lt;a href=&quot;http://shoooes.net/&quot;&gt;Shoes&lt;/a&gt;? I gather he wrote Shoes as a basis for &lt;a href=&quot;http://hacketyhack.net/&quot;&gt;Hackety Hack&lt;/a&gt; after not being able to get XUL to do what he wanted. Perhaps he's gone one step further and done the language as well? Or it could just be done for fun.&lt;/p&gt;

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>My Very Belated Shot For Towel Day It Was At</title>
   <link href="http://atomicules.co.uk/2009/07/01/my-very-belated-shot-for-towel-day-it-was-at.html"/>
   <updated>2009-07-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/01/my-very-belated-shot-for-towel-day-it-was-at</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3677868968/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3090/3677868968_2df6f40266.jpg&quot; alt=&quot;My Very Belated Shot For Towel Day It Was At&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;My very belated shot for &lt;a href=&quot;http://www.towelday.org/&quot;&gt;Towel Day&lt;/a&gt;. It was at least taken on the right day, I've just been delayed finishing the film off.&lt;/p&gt;
&lt;p&gt;I went for a different approach to the &quot;People with towel slung over shoulder&quot; shot, an opted for my &lt;a href=&quot;http://en.wikipedia.org/wiki/Liberator_%28Blake%27s_7%29&quot;&gt;Blake's 7 Liberator Starship&lt;/a&gt; landing on a towely terrain; which I thought fitted the geeky/sci-fi theme well.&lt;/p&gt;
&lt;p&gt;I can't decide if it is sad or cool that I still have a Blake's 7 Liberator Starship.&lt;/p&gt;
&lt;p&gt;I'd hazard a guess at sad.&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Iphone My Computer Havent Bought New Laptop</title>
   <link href="http://atomicules.co.uk/2009/07/01/iphone-my-computer-havent-bought-new-laptop.html"/>
   <updated>2009-07-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/01/iphone-my-computer-havent-bought-new-laptop</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;iPhone = my computer...Haven't bought new laptop since late 06&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;em&gt;- &lt;a href=&quot;http://twitter.com/megnut/status/2243938832&quot;&gt;Megnut&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is my thought exactly -  although for me my main computing platform is a poor man's iPhone, the iPod Touch (best £2 I ever spent) - and what I alluded to in my earlier &lt;a href=&quot;http://i-5-m.net/post/130464050/ipod-touch-vs-a-mac-vs-a-pc-sunspider-javascript&quot;&gt;JavaScript benchmarking post&lt;/a&gt;. It certainly beats a &lt;a href=&quot;http://www.joeydevilla.com/2009/05/26/fast-food-apple-pies-and-why-netbooks-suck/&quot;&gt;netbook&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Ironically, Tumblr is a bit over-zealous in its iPhone optimisation and I'll have to finish off formatting this post on my mac!&lt;/p&gt;

&lt;p&gt;Via: &lt;a href=&quot;http://daringfireball.net/linked/2009/07/01/megnut-iphone&quot;&gt;Daring Fireball&lt;/a&gt;&lt;/p&gt;
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Flickr2Twitter</title>
   <link href="http://atomicules.co.uk/2009/07/01/flickr2twitter.html"/>
   <updated>2009-07-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/07/01/flickr2twitter</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.flickr.net/en/2009/06/30/twitter-your-flickr/&quot;&gt;&#187; Flickr2Twitter&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Flickr offically announced the &lt;a href=&quot;http://i-5-m.net/post/109152983&quot;&gt;short-url thing&lt;/a&gt;, along with a way to easily post these to flickr. See also the &lt;a href=&quot;http://code.flickr.com/blog/2009/06/30/twitter-in-the-api/&quot;&gt;code blog post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I still wish there was a way to grab the short-url from the Share This button on the photo page.&lt;/p&gt; 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Last.fm - Michael Jackson tracks played per hour</title>
   <link href="http://atomicules.co.uk/2009/06/26/last-fm-michael-jackson-tracks-played-per-hour.html"/>
   <updated>2009-06-26T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/26/last-fm-michael-jackson-tracks-played-per-hour</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.flickr.com/photos/lastfm/3661998519/&quot;&gt;&#187; Last.fm - Michael Jackson tracks played per hour&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					That graph just rockets upwards. I played Michael Jackson vs Q-Tip, Breathe don't stop, which I doubt got counted in that graph. 
				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>iPod Touch vs a Mac vs a PC (SunSpider javascript benchmarks)</title>
   <link href="http://atomicules.co.uk/2009/06/26/ipod-touch-vs-a-mac-vs-a-pc-sunspider-javascript.html"/>
   <updated>2009-06-26T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/26/ipod-touch-vs-a-mac-vs-a-pc-sunspider-javascript</id>
   <content type="html">
		
				 &lt;p&gt;&lt;b&gt;1st Place&lt;/b&gt; My new main computing platform: iPod Touch 2nd Gen, OS 3.0:&lt;/p&gt;
&lt;p&gt;Safari 33796.0ms +/- 3.1%&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2nd Place&lt;/b&gt; My stalwart: 12&quot; Powerboook 1GHz PPC, OS X 10.5.7&lt;/p&gt;
&lt;p&gt;Opera 9.62, 38896.8ms +/- 6.6%&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3rd Place&lt;/b&gt; At work: Dell D610, 2GHz Pentium, XP SP2&lt;/p&gt;
&lt;p&gt;IE6* 49827.4ms +/- 4.6%&lt;/p&gt;
&lt;p&gt;OK, those are chosen for shock value, but still that's pretty impressive.  For a 'fairer' comparison I have &lt;a href=&quot;http://www.appletalker.net/forum/index.php?req=thread&amp;amp;id=1528&quot;&gt;more benchmarked&lt;/a&gt;, such as Safari and Chrome on the PC, and Safari on the Mac. It does go to show though that iPod Touches and iPhones are a fairly respectable mobile computing platforms - who needs a netbook, hey?!&lt;/p&gt;
&lt;p&gt;* IE6 remains my employers preferred  and default installed browser; It is still necessary for certain intranet sites that will not work with other browsers.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Bye Bye Kodachrome (and 110 format film!)</title>
   <link href="http://atomicules.co.uk/2009/06/23/bye-bye-kodachrome-and-110-format-film.html"/>
   <updated>2009-06-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/23/bye-bye-kodachrome-and-110-format-film</id>
   <content type="html">
		
				 &lt;p&gt;So &lt;a href=&quot;http://homepage.1000words.kodak.com/default.asp?item=2388083&quot;&gt;Kodachrome is being discontinued&lt;/a&gt; after 74 years. I haven't even got around to shooting any yet. I expect there will be a rush on stocks, but for the time being it is &lt;a href=&quot;http://www.7dayshop.com/catalog/product_info.php?products_id=6175&quot;&gt;still available&lt;/a&gt; (7dayshop). However, in my quick search to find who's stocking it, I then stumble across the shocker that &lt;a href=&quot;http://discountfilmsdirect.co.uk/shop/acatalog/Fuji_Superia_110_Cartridge_Film.html&quot;&gt;110 film is no longer being made&lt;/a&gt; by Fuji (discountfilmsdirect). Gutted.&lt;/p&gt;
&lt;p&gt;So next payday I guess I'm going to have to get a roll of Kodachrome and a roll of 110 film. I've not even got a 110 camera yet. I'd put camera purchases on the back burner after getting my Yashica Mat; after-all I've only been able to afford to put one roll through that so far. But I guess I'm going to have to get a 110 camera sometime this year, I'm pretty sure the 110 stocks will disappear as quickly as 126 did.&lt;/p&gt;
&lt;p&gt;And one day yet, I'm going to have to get my Disc Camera working.&lt;/p&gt;
&lt;p&gt;This is well worth a look: &lt;a href=&quot;http://www.kodak.com/eknec/PageQuerier.jhtml?pq-path=15398&amp;amp;pq-locale=en_GB&amp;amp;_requestid=6633&quot;&gt;Kodak's Kodachrome Slide Show&lt;/a&gt;&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>The Incredible Century Old Color Photography of Prokudin-Gorsky</title>
   <link href="http://atomicules.co.uk/2009/06/18/the-incredible-century-old-color-photography-of.html"/>
   <updated>2009-06-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/18/the-incredible-century-old-color-photography-of</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://quazen.com/arts/photography/the-incredible-century-old-color-photography-of-prokudin-gorsky/&quot;&gt;&#187; The Incredible Century Old Color Photography of Prokudin-Gorsky&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					Worthy of a look: The photos are amazing. 

I'm pretty sure I've read about this process before although I can't recall the photos. Basically three photos of the same scene are taken in monochrome, but through different coloured filters. This then allows the colour of the scene to be recreated. However, since all three images are taken in series by one camera it required evryone to stand very still! 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Its All About Waiting Sometimes A Long Time And</title>
   <link href="http://atomicules.co.uk/2009/06/15/its-all-about-waiting-sometimes-a-long-time-and.html"/>
   <updated>2009-06-15T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/15/its-all-about-waiting-sometimes-a-long-time-and</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3624891594/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3307/3624891594_33cbddd620.jpg&quot; alt=&quot;Its All About Waiting Sometimes A Long Time And&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;It's all about waiting. Sometimes a long time. And then after all that waiting you realise you are going to have to wait longer still.&lt;/p&gt;
&lt;p&gt;My dad gave my my Great Grandpa's &lt;a href=&quot;http://www.camerapedia.org/wiki/Kodak_No._2A_Folding_Autographic_Brownie&quot;&gt;Kodak No. 2-A Folding Autographic Brownie&lt;/a&gt; in November last year. Since it is an old &lt;a href=&quot;http://www.camerapedia.org/wiki/116_film&quot;&gt;116 format&lt;/a&gt; camera, It took me months to  convert it to 120 format, and then because I'd put a slow (160 iso) film in it, it took me ages to shoot the roll of film over the dull winter months, even though there are only 8 frames per roll!&lt;/p&gt;
&lt;p&gt;So we have a camera that has taken 80 to 90 years to come into my hands...&lt;/p&gt;
&lt;p&gt;...a seven month wait until I have the first film back...&lt;/p&gt;
&lt;p&gt;...and then that has light leaked...&lt;/p&gt;
&lt;p&gt;...So I shall repair the bellows (they didn't seem to be in such bad nick!)...&lt;/p&gt;
&lt;p&gt;...and wait until I can buy a new roll of film...&lt;/p&gt;
&lt;p&gt;...and wait until I can send it off for processing...&lt;/p&gt;
&lt;p&gt;...and then, hopefully, the wait will be over.&lt;/p&gt;
&lt;p&gt;More from the first roll, and also how I went about converting the camera to 120 format, can be found in my set on Flickr: &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/sets/72157613490634837/&quot;&gt;Kodak No. 2-A Folding Autographic Brownie&lt;/a&gt;. I also have some links saved on Delicious: &lt;a href=&quot;http://delicious.com/i5m/116&quot;&gt;116&lt;/a&gt; film format stuff. &lt;strong&gt;EDIT:&lt;/strong&gt; Now on Pinboard.in instead: &lt;a href=&quot;https://pinboard.in/u:atomicules/t:116/&quot;&gt;116 film format links&lt;/a&gt;.&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>And We Dont Need Any Magical Require</title>
   <link href="http://atomicules.co.uk/2009/06/15/and-we-dont-need-any-magical-require.html"/>
   <updated>2009-06-15T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/15/and-we-dont-need-any-magical-require</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;...And we don't need any magical require statements to use them!...Rip requires no changes to your code, only an optional deps.rip file added to the root of your project. As a result you do not force Rip on anyone else and individuals are free to re-package your code using other systems...Currently it's UNIX-only.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;i&gt;- &lt;/i&gt;&lt;a href=&quot;http://hellorip.com/about.html&quot;&gt;&lt;i&gt;Rip: Ruby’s Intelligent Packaging&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It does sound interesting, I was hoping that it would be a full fledged alternative to Rubygems, because as good as Rubygems is, you do come into all kinds of issues with it: using behind proxy servers and making gems portable for using in apps (that damn 'require' statement) are two I can think of.&lt;/p&gt;
&lt;p&gt;Alas, it seems &lt;a href=&quot;http://www.infoq.com/news/2009/06/rip&quot;&gt;the goals of RIP are slightly different from Ruby Gems&lt;/a&gt;. But definitely one to watch.&lt;/p&gt;
&lt;h1&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/h1&gt; 
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>EasyGrep</title>
   <link href="http://atomicules.co.uk/2009/06/11/easygrep.html"/>
   <updated>2009-06-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/11/easygrep</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2438&quot;&gt;&#187; EasyGrep&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;An indispensable VIM plugin if you are looking for an easy way to do find and replace on a number of files. I never really used Textmate, but BBEdit did do this quite well back when I used it, although from recollection not as cleanly as this.  When doing a find it presents a list of matching files, complete with an excerpt of the result. Clicking on the entry in the results window opens it up in the pane above for editing, at the place where the excerpt is from. Just ace.&lt;/p&gt;
&lt;p&gt;Also found today, &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1218&quot;&gt;NERD Commenter&lt;/a&gt; is quite handy (no where as near as handy as the above though) for commenting out lines and sections of code. It automatically does the correct commenting type based on the filetype.&lt;/p&gt;
&lt;p&gt;I'll add both of these into my &lt;a href=&quot;http://i-5-m.net/post/115035560/vim&quot;&gt;earlier Vim post&lt;/a&gt;.&lt;/p&gt; 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Download Ruby 1 8 6 Installer And Take All</title>
   <link href="http://atomicules.co.uk/2009/06/08/download-ruby-1-8-6-installer-and-take-all.html"/>
   <updated>2009-06-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/08/download-ruby-1-8-6-installer-and-take-all</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;... download ruby-1.8.6 installer and take all (C:\ruby\bin\*.dll) and paste in the new ruby 1.9.1 path c:\ruby191\bin&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;i&gt;- By &lt;a href=&quot;http://albertux.ayalasoft.com/&quot;&gt;AlberTux&lt;/a&gt; From &lt;a href=&quot;http://albertux.ayalasoft.com/es/2009/04/09/ruby-191-missing-dlls/&quot;&gt;Ruby 1.9.1 missing dlls&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Maybe slightly abusing the Quote style post on Tumblr, but installing recent Ruby versions on Windows and OSX should be a lot easier than it is.&lt;/p&gt;
&lt;p&gt;On Windows, I'd had Ruby 1.8.6 installed from the &lt;a href=&quot;http://rubyinstaller.rubyforge.org/wiki/wiki.pl?RubyInstaller&quot;&gt;One Click installer&lt;/a&gt;, but decided to upgrade to the 1.9.1 binary because I'm primarily using it for writing Shoes programmes, and &lt;a href=&quot;http://thread.gmane.org/gmane.comp.lib.shoes/3589&quot;&gt;Shoes 3 is moving to Ruby 1.9.1&lt;/a&gt; so it makes sense to keep my system Ruby the same. Unfortunately the 1.9.1 binary is missing all the dlls that come with the One Click installer (that's now one and a half year's old!). Hence solution quoted above; you don't need to run the One Click installer, just use something like &lt;a href=&quot;http://www.7-zip.org/&quot;&gt;7-zip&lt;/a&gt; to open the installer up and pull the dlls out.&lt;/p&gt;
&lt;p&gt;On OSX I haven't even bothered to upgrade my Ruby install. &lt;a href=&quot;http://www.macports.org/&quot;&gt;MacPorts&lt;/a&gt; is probably the best way, but I have Macports and Xcode on an external hard drive to save space (And it was outragouely hard to get Macports setup that way), so that doesn't help a great deal when it comes to installing Ruby from it. And being able to install from source by hand is nice, but you really shouldn't have to &lt;a href=&quot;http://danbenjamin.com/articles/2008/02/ruby-rails-leopard&quot;&gt;go to these lengths&lt;/a&gt; to use a more recent version of Ruby  on OSX.&lt;/p&gt;
&lt;p&gt;Ruby is a lovely language, but it sometimes gives the impression of being too 'cool' for it's own good.  Mind you, Python (on OSX) &lt;a href=&quot;http://trac.macports.org/wiki/FAQ&quot;&gt;doesn't seem that much better&lt;/a&gt;.&lt;/p&gt; 
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Reversible By Loup Thevenin As Seen On Vimeo Staff</title>
   <link href="http://atomicules.co.uk/2009/06/06/reversible-by-loup-thevenin-as-seen-on-vimeo-staff.html"/>
   <updated>2009-06-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/06/reversible-by-loup-thevenin-as-seen-on-vimeo-staff</id>
   <content type="html">
		
				
				
				&lt;iframe src=&quot;http://player.vimeo.com/video/4129114?portrait=0&amp;color=01AAEA&quot; width=&quot;500&quot; height=&quot;375&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://vimeo.com/4129114&quot;&gt;Reversible&lt;/a&gt; by &lt;a href=&quot;http://vimeo.com/loupthevenin&quot;&gt;Loup Thévenin&lt;/a&gt; as seen on &lt;a href=&quot;http://vimeo.com/staffpicks&quot;&gt;Vimeo Staff Picks&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Another cool stop-motion animation. I've just realised I quite like stop-motion stuff. One day (probably in many years time) I'll have to have a go at this.&lt;/p&gt; 
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Early Google Chrome builds for Mac and Linux</title>
   <link href="http://atomicules.co.uk/2009/06/06/early-google-chrome-builds-for-mac-and-linux.html"/>
   <updated>2009-06-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/06/early-google-chrome-builds-for-mac-and-linux</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://blog.chromium.org/2009/06/danger-mac-and-linux-builds-available.html&quot;&gt;&#187; Early Google Chrome builds for Mac and Linux&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;Webkit browsers are really kicking Gecko based one's at the moment. Both in the rendering engine speed and in javascript speed. So this is good to see. I managed to get this working in &lt;a href=&quot;http://www.slax.org&quot;&gt;Slax&lt;/a&gt; using the &lt;a href=&quot;http://www.slax.org/modules.php?action=detail&amp;amp;id=409&quot;&gt;deb2lzm module&lt;/a&gt; and installing these other two modules: &lt;a href=&quot;http://www.slax.org/modules.php?action=detail&amp;amp;id=517&quot;&gt;libgconf2-4&lt;/a&gt; and &lt;a href=&quot;http://www.slax.org/modules.php?action=detail&amp;amp;id=520&quot;&gt;Liborbit2&lt;/a&gt;. It crashes like mad, which could either me something else I've missed in Slax or just that this is a very early developer release.&lt;/p&gt;
&lt;p&gt;As far as OSX goes, there's a lot of people moaning about lack of PPC support, but PPC is dead so there really is no point developing for it. It's a shame, but there are &lt;a href=&quot;http://stainlessapp.com/&quot;&gt;alternatives&lt;/a&gt;.&lt;/p&gt; 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>How Do We Jump This High?</title>
   <link href="http://atomicules.co.uk/2009/06/02/right-lets-try-out-some-reblogging-and-then.html"/>
   <updated>2009-06-02T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/06/02/right-lets-try-out-some-reblogging-and-then</id>
   <content type="html">
		
				 &lt;p&gt;Right, let's try out some reblogging and then crowbar in the rest of this post.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://kisskitty.tumblr.com/post/110928275/hoowww-dooo-weeee-juummpp-tthhhiiisss-hiiighhh&quot;&gt;kisskitty&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;HOOWWW DOOO WEEEE JUUMMPP TTHHHIIISSS HIIIGHHH!?!&lt;/p&gt;
&lt;p&gt;cannot get enough of this band right now.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&lt;b&gt;“this future fell out of the school doors right on the heels of the last one / repeating formulas into the same stretch of patterns / are we that eager to become the past? / earning money that isn’t real and inhaling air we can’t breath!”&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://www.ifyoumakeit.com/album/how-do-we-jump-this-high/deep-stationary/&quot;&gt;How Do We Jump This High?&lt;/a&gt; Randomly found from &lt;a href=&quot;http://kisskitty.tumblr.com/&quot;&gt;KissKitty&lt;/a&gt;. I like these, reminds me of stuff I used to listen to at school when we'd lend each other tapes (tapes!). If I had the time and enthusiasm I might also check out everything on this blog: &lt;a href=&quot;http://brandnewbeatniks.wordpress.com/&quot;&gt;Brand New Beatniks&lt;/a&gt;. By the way, KissKitty picked out the best track as well.&lt;/p&gt;
&lt;p&gt;And I'll take this chance to go through some other &quot;new&quot; stuff I'm listening to. New as in &quot;new to me&quot; as I recognise that I'm old hat now as far as being down with the kids goes.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href=&quot;http://www.last.fm/music/Ladyhawke&quot;&gt;Ladyhawke&lt;/a&gt; - Bought this 'cus it was 3 quid on Amazon MP3. And I liked the Paris is Burning song. This is one of the few albums where I like all of the tracks. The Wombats also managed this. I can't think of anything else recently. But, normally you hear a &lt;a href=&quot;http://www.last.fm/music/Howling+Bells/_/Into+The+Chaos&quot;&gt;good single&lt;/a&gt;, check out the album and the rest is a disappointment - a benefit of &lt;a href=&quot;http://www.spotify.com&quot;&gt;Spotify&lt;/a&gt;, etc, but still annoying all the same. &lt;a href=&quot;http://www.last.fm/music/Ladyhawke&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.last.fm/music/Dananananaykroyd&quot;&gt;Dananananaykroyd&lt;/a&gt; - like &lt;a href=&quot;http://www.last.fm/music/Los+Campesinos%21&quot;&gt;Los Campesinos!&lt;/a&gt;, listening to the &lt;a href=&quot;http://www.bbc.co.uk/radio1/huwstephens/&quot;&gt;Huw Stephen's Introducing podcast&lt;/a&gt; pays off every so often. Dananananaykroyd remind me of early &lt;a href=&quot;http://www.last.fm/music/idlewild&quot;&gt;Idlewild&lt;/a&gt; stuff. Black Wax is a fab song. So is Infinity Milk. But unfortunately not every other track is in the same class. Also, it seems I have to be &lt;a href=&quot;http://www.bbc.co.uk/music/reviews/gr8c&quot;&gt;15 to like them&lt;/a&gt;. &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.last.fm/music/yeah+yeah+yeahs&quot;&gt;Yeah Yeah Yeahs&lt;/a&gt;. Zero was near the top of &lt;a href=&quot;http://anniemacpresents.com/topten.php?toptenID=7&quot;&gt;Annie Mac's list&lt;/a&gt; for awhile, and I have to say I was a bit disappointed when I heard it. It's grown on me a bit since though. Heads Will Roll though is proper good. Best on the album, easily. The rest of the album hasn't grasped me yet. Skeletons is particularly bizarre with some Irish Jig weirdness going on in it. And the rest just passes by and you kind of forget you are listening to it. It's not bad. You just don't notice it. Until a few minutes after it's finished and you realise the background noise has cleared. Shame. &lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;So, yeah, being officially old, it's difficult to find the time to check out new music. I'm no John Peel; often it is far easier to just listen to old stuff you know you like. But I try and make a bit of an effort and listen to the Introducing podcast and Annie Mac's Mini Mix. I used to listen to the &lt;a href=&quot;http://www.bbc.co.uk/1xtra/podcast/&quot;&gt;Homegrown&lt;/a&gt; one, but gave up after over a year of no hip-hop, just weird garage/grime(?!) stuff.&lt;/p&gt;
&lt;p&gt;In days gone by I used to listen to the radio or rely on friends to find new music. Now that's been replaced by &lt;a href=&quot;http://www.last.fm&quot;&gt;last.fm&lt;/a&gt; and &lt;a href=&quot;http://www.spotify.com&quot;&gt;spotify&lt;/a&gt;, which are great in that it is easy to check out new bands, but  I still think I preferred the days when I could (afford) to go to record shops and just buy random CDs and swap them with friends - and I think that's because you'd made an bit of an investment in that band, etc then. So you are going to listen to the whole CD/tape. And also perhaps because there's a bit of positive peer pressure to make an effort to check something different out; sometimes things take a few listens.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Vim</title>
   <link href="http://atomicules.co.uk/2009/05/30/vim.html"/>
   <updated>2009-05-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/30/vim</id>
   <content type="html">
		
				 &lt;p&gt;(because everyone has got to have their own &lt;a href=&quot;http://www.vim.org/&quot;&gt;Vim&lt;/a&gt; post)&lt;/p&gt;

&lt;p&gt;I'm pretty much settled on using Vim as my editor of choice after giving up &lt;a href=&quot;http://www.barebones.com/products/bbedit/&quot;&gt;BBEdit&lt;/a&gt; (many moons ago) and trying to find a good free alternative. I went through everything (&lt;a href=&quot;http://tuppis.com/smultron/&quot;&gt;Smultron&lt;/a&gt;, oh, no, actually that's it) before making a concerted effort to learn Vim. I guess at the time I must have been spending a lot of time in the terminal (perhaps in the days when I had proper webhosting).&lt;/p&gt;

&lt;p&gt;Since I'm as cross platform as can be nowadays (windows, mac, and linux) Vim is an ideal choice and makes far more sense than ending up with a mac specific editor (as much as I'd love to be on my mac all the time). I've &lt;strike&gt;not&lt;/strike&gt; managed to get Vim running on &lt;a href=&quot;http://slax.org&quot;&gt;Slax&lt;/a&gt; as well &lt;strike&gt;as I'd like, but I guess I'll sort it eventually&lt;/strike&gt; (ha! fixed before I even got around to posting this; the mistake was just using the &lt;a href=&quot;http://www.slax.org/modules.php?action=detail&amp;amp;id=829&quot;&gt;gvim module&lt;/a&gt;, whereas you need the base &lt;a href=&quot;http://www.slax.org/modules.php?action=detail&amp;amp;id=829&quot;&gt;vim module&lt;/a&gt; as well in order to get all the runtime scripts so you have menu's, etc).&lt;/p&gt;

&lt;p&gt;Now I'm just trying to find a bare minimum of plugins and config options to be happy. I don't want a huge vim configuration file I don't understand - I've tried using other people's Vim config files and figure it's easier to start from scratch.&lt;/p&gt;

&lt;p&gt;As far as plugins goes, I think Vim suffers a little from the general open source problem of too many bloody options. I.e. there are loads of plugins that do the same thing, how do you know which one to pick? Which one is still being actively developed? It's the same for Firefox plugins, etc, although at least they have a review and commenting system. &lt;a href=&quot;http://www.vim.org/scripts/index.php&quot;&gt;Vim plugins&lt;/a&gt; don't.&lt;/p&gt;

&lt;p&gt;Anyway. Here's what I'm using. I'm mainly going to program in Ruby also dabble in the occasional bit of HTML and CSS, so that's my slant in getting Vim setup. I shall update as needed (especially with getting config options that have consistent results across all three platforms, i.e. MacVim and Windows seem to have some better default settings than in Slax)&lt;/p&gt;

&lt;h2&gt;Config Options&lt;/h2&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;c&quot;&gt;&amp;quot;This is no longer up to date. It got more complicated...&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;&amp;quot;My vimrc file. Trying to keep it as simple and cross platform as possible&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;tabstop&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Number of spaces that a tab character takes&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;softtabstop&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;after reading the docs, I still don&amp;#39;t get all the tab options.&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;noexpandtab&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;I don&amp;#39;t want tab characters converted to spaces&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;shiftwidth&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;number of spaces used for each step of auto-indent&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;smarttab&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;autoindent&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;copy indent from current line when starting new line&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;guifont&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;Consolas:h10 &lt;span class=&quot;c&quot;&gt;&amp;quot;Nice font Use Inconsolata:h13 on OSX, Linux.&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;guifontwide&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;MingLiU:h10 &lt;span class=&quot;c&quot;&gt;&amp;quot;For windows to display mixed character sets&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;enc&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;utf&lt;span class=&quot;m&quot;&gt;-8&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Whatever&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;number&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Turn on line numbers&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;numberwidth&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Set width of line numbers&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;highlight&lt;/span&gt; LineNr guifg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;white guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;lightgray &lt;span class=&quot;c&quot;&gt;&amp;quot;Line number colours&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;wrap&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Default to line wrapping&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;showtabline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Always show the tab bar in the gui&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;incsearch&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Fortunately highlighting seems to be on in all three platforms&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; Tlist_Ctags_Cmd&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;\&amp;quot;C:\\Program Files\\ctags58\\ctags.exe\&amp;quot;&amp;quot;&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;Windows only at mo&amp;#39;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;guioptions&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;-=&lt;/span&gt;T &lt;span class=&quot;c&quot;&gt;&amp;quot;remove toolbar&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;colorscheme&lt;/span&gt; solarized
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;autochdir&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;nobackup&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;&amp;quot;let coffee_compile_on_save = 1&lt;/span&gt;
autocmd &lt;span class=&quot;nb&quot;&gt;BufWritePost&lt;/span&gt; *.coffee &lt;span class=&quot;k&quot;&gt;silent&lt;/span&gt; CoffeeMake&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;b&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;copen&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;[FORMAT&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%{&amp;amp;&lt;span class=&quot;nb&quot;&gt;ff&lt;/span&gt;}]\ [TYPE&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%Y]\ [POS&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%&lt;span class=&quot;k&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;%v][%&lt;span class=&quot;k&quot;&gt;p&lt;/span&gt;%%]\ [LINELEN&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%{strlen&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;getline&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;.&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;}]
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;laststatus&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;2&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;filetype&lt;/span&gt; off &lt;span class=&quot;c&quot;&gt;&amp;quot;for pathogen&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;call&lt;/span&gt; pathogen#runtime_append_all_bundles&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;filetype&lt;/span&gt; plugin indent &lt;span class=&quot;k&quot;&gt;on&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;for pathogen&lt;/span&gt;
map &lt;span class=&quot;p&quot;&gt;&amp;lt;&lt;/span&gt;F11&lt;span class=&quot;p&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;&amp;lt;&lt;/span&gt;Esc&lt;span class=&quot;p&quot;&gt;&amp;gt;&lt;/span&gt;:&lt;span class=&quot;k&quot;&gt;call&lt;/span&gt; libcallnr&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;gvimfullscreen.dll&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;ToggleFullScreen&amp;quot;, 0)&amp;lt;CR&amp;gt; &amp;quot;Windows only, fullscreen Vim&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href=&quot;https://gist.github.com/414504&quot;&gt;Link to gist&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Plugins&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2332&quot;&gt;pathogen&lt;/a&gt; - For far more sane installation of vim plugins. Install this first!&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=13&quot;&gt;closetag&lt;/a&gt; - For closing open tags&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1849&quot;&gt;Autoclose&lt;/a&gt; - Autoclose brackets as you type the opening bracket. I wish this could be expanded to other tags.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=39&quot;&gt;Matchit&lt;/a&gt; - Very, very handy, especially when programming to try and find the closing end statement, etc.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1658&quot;&gt;NERDTree&lt;/a&gt; - Built in directory browser. Not absolutely necessary with gvim, but handy.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2540&quot;&gt;snipMate&lt;/a&gt; - TextMate style snippets. Very cool. There are a couple of other options (&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1726&quot;&gt;ruby_imaps&lt;/a&gt;, &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1318&quot;&gt;snippetsEMU&lt;/a&gt;), but this one seems to be the best one.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1697&quot;&gt;surround&lt;/a&gt; - Looks quite handy for editing pairs of tags.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1218&quot;&gt;NERD Commenter&lt;/a&gt; - easily comment lines and sections of any code&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2438&quot;&gt;EasyGrep&lt;/a&gt; - As name suggests EASILY perform find and replace across multiple files. Just ace.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1896&quot;&gt;ragtag&lt;/a&gt; - Because Tim Pope made it.&lt;/li&gt;
&lt;li&gt;~&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1643&quot;&gt;Supertab&lt;/a&gt;~ - I hear it's good, but not actually got around to using yet.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=273&quot;&gt;taglist&lt;/a&gt; - Think I mainly used this when I played with C.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2628&quot;&gt;Vim-R-Plugin&lt;/a&gt; - For &lt;a href=&quot;http://atomicules.co.uk/2010/11/20/vim-r-plugin.html&quot;&gt;working with R&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2596&quot;&gt;Full Screen Vim for Windows&lt;/a&gt; - This is great!&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;And worth a mention, but I'm not using it: &lt;a href=&quot;https://github.com/wincent/Command-T&quot;&gt;Command-T&lt;/a&gt;. This is an interesting plugin to quickly open files by typing in a few letters of their path or filename. It's based on a Textmate feature. However, installing it is a bit of a palaver and (especially on Windows) requires certain versions of Vim, Ruby, and Ruby developer tools so you can build the extension once you've installed it. I tried it using the non-recommended versions (Vim 7.3 and Ruby 1.9.1) and it crashed. Just seems a lot of hassle for what it's worth.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Sorry Im Late A Stop Motion Animation Pure</title>
   <link href="http://atomicules.co.uk/2009/05/29/sorry-im-late-a-stop-motion-animation-pure.html"/>
   <updated>2009-05-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/29/sorry-im-late-a-stop-motion-animation-pure</id>
   <content type="html">
		
				
				
				&lt;iframe src=&quot;http://player.vimeo.com/video/4862670?portrait=0&amp;color=01AAEA&quot; width=&quot;500&quot; height=&quot;375&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://www.sorry-im-late.com/&quot;&gt;Sorry I'm Late&lt;/a&gt;. A stop motion animation. Pure class.&lt;/p&gt;
&lt;p&gt;- Seen on Google Reader &lt;a href=&quot;http://www.google.com/reader/shared/user/15650323335570657892/label/cool&quot;&gt;&quot;Cool&quot; via recommendations&lt;/a&gt;.&lt;/p&gt; 
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>Awkward Family Photos</title>
   <link href="http://atomicules.co.uk/2009/05/22/awkward-family-photos.html"/>
   <updated>2009-05-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/22/awkward-family-photos</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://awkwardfamilyphotos.com/&quot;&gt;&#187; Awkward Family Photos&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					I particularly liked the Winnie the Pooh one. 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>Shoes</title>
   <link href="http://atomicules.co.uk/2009/05/18/shoes.html"/>
   <updated>2009-05-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/18/shoes</id>
   <content type="html">
		
				 &lt;p&gt;Three years ago I used Ruby to write my first program with a GUI, using the almost-built-in &lt;a href=&quot;http://members.chello.nl/k.vangelder/ruby/learntk/&quot;&gt;Tk toolkit&lt;/a&gt;. It wasn't very exciting*, but it impressed me as I had a working bit of software on my screen that I'd created and yet I didn't really know anything about programming. I still profess I still don't really know how to program, sure I can hack about a bit, but when it gets to classes and modules, and organising things into separate files, I glaze over.&lt;/p&gt;
&lt;p&gt;Ruby wasn't very quick, not when searching 6.5 million line files anyway. I'd developed the programme in &lt;a href=&quot;http://www.gnu.org/software/octave/&quot;&gt;Octave&lt;/a&gt; first which was very fast (the programme  was mainly matrix manipulation), but it was &lt;a href=&quot;http://www.ruby-doc.org/stdlib/libdoc/matrix/rdoc/classes/Matrix.html&quot;&gt;easy to port to Ruby&lt;/a&gt; where it was then (relatively) easy to build a GUI using Tk. I then had a programme that was much nicer to use. And fairly portable.&lt;/p&gt;
&lt;p&gt;Three years on and things are much improved as far as building GUIs goes: &lt;a href=&quot;http://www.tutorialspoint.com/ruby/ruby_tk_guide.htm&quot;&gt;Compare&lt;/a&gt; and &lt;a href=&quot;http://shoooes.net/tutorial/&quot;&gt;Contrast&lt;/a&gt;. Or for a specific example:&lt;/p&gt;
&lt;p&gt;In Tk,&lt;/p&gt;
&lt;pre&gt;require 'tk'&lt;br /&gt;require 'tkextlib/bwidget'&lt;br /&gt;&lt;br /&gt;root = TkRoot.new&lt;br /&gt;root.title = &quot;Window&quot;&lt;br /&gt;&lt;br /&gt;combobox = Tk::BWidget::ComboBox.new(root)&lt;br /&gt;combobox.values = [1, 2, 3, 4]&lt;br /&gt;combobox.place('height' =&amp;gt; 25,&lt;br /&gt;               'width'  =&amp;gt; 100,&lt;br /&gt;               'x'      =&amp;gt; 10,&lt;br /&gt;               'y'      =&amp;gt; 10)&lt;br /&gt;&lt;br /&gt;Tk.mainloop&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;In Shoes,&lt;/p&gt;
&lt;pre&gt;Shoes.app :title =&amp;gt; &quot;Shoes is fab&quot; do&lt;br /&gt;  list_box :items =&amp;gt; [1, 2, 3, 4], &lt;br /&gt;  :height =&amp;gt; 25, &lt;br /&gt;  :width =&amp;gt; 100, &lt;br /&gt;  :left =&amp;gt; 10,&lt;br /&gt;  :top =&amp;gt; 10&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href=&quot;http://shoooes.net&quot;&gt;Shoes&lt;/a&gt; is just that little bit more pretty. And understandable.&lt;/p&gt;
&lt;p&gt;Tk did also used to look rubbish, but it seems with version 8 it can &lt;a href=&quot;http://tktable.sourceforge.net/tile/&quot;&gt;emulate the look and feel of the platform&lt;/a&gt; it is running on; Shoes actually uses platform native widgets. To use  Tk, you  need Ruby (or language of choice) installed on whatever operating system you use and you also then need to install Tk itself. Whereas Shoes seems to work the other way round: it's a graphics toolkit that contains Ruby. This makes Shoes programmes much more easy to distribute as you can create executables for Linux, Mac and Windows and the executable contains everything that is needed to run. Shoes is also a smaller download than &lt;a href=&quot;http://www.activestate.com/activetcl/&quot;&gt;Tcl/Tk&lt;/a&gt; itself.&lt;/p&gt;
&lt;p&gt;The benefit of Tk over Shoes, would be that Shoes is Ruby only, whereas Tk can be used with many other languages. Alos, Shoes also isn't intended for big applications, it's more for building dashboard/widget style apps. See here for some &lt;a href=&quot;http://the-shoebox.org/&quot;&gt;example Shoes applications&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;However, Shoes is just a mind-blowingly awesome thing. It's not yet big news (I don't think?), but it should be. It really is power to the people. When I was little you could spend ages programming from books like &lt;a href=&quot;http://www.btinternet.com/~pweighill/music/books/#ComputerSpacegames&quot;&gt;Usborne Computer Spacegames&lt;/a&gt; only to be outrageously disappointed by the end result you got on the screen. It probably put me off programming. With Shoes you can actually do cool things quickly. Without being a 'programmer'. I think that is more likely to inspire people to try and do more.&lt;/p&gt;
&lt;p&gt;Again, a quick(?!) post has gone on too long. But just to finish with: As far as I know Shoes is being developed as a base for &lt;a href=&quot;http://hacketyhack.net/&quot;&gt;Hackety Hack&lt;/a&gt;, &lt;a href=&quot;http://whytheluckystiff.net/&quot;&gt;_why&lt;/a&gt;'s teaching-kids-to-programme tool. And Shoes 3 should be out in the next month or so.&lt;/p&gt;
&lt;p&gt;* &lt;i&gt;I was interested so dug it out this weekend: It analysed ANSYS raw output node files looking for the node closest to a user entered co-ordinate, then used this to search the element solution file and output results for all occurrences of the node. If that node wasn't found in the element solution file, it used the next closest node, and so on. The end result could then be used to check for convergence and discontinuity.&lt;/i&gt;&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>WolframAlpha</title>
   <link href="http://atomicules.co.uk/2009/05/17/wolframalpha.html"/>
   <updated>2009-05-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/17/wolframalpha</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://www.wolframalpha.com/&quot;&gt;&#187; WolframAlpha&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;It's not like it isn't already linked all over the place, but it is still worth a mention. Some of the things I've tried so far:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www23.wolframalpha.com/input/?i=solve+for+x%2C+a*x^2%2Bb*x%2Bc&quot;&gt;Solving the quadratic equation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www23.wolframalpha.com/input/?i=solve+for+x%2C+a*x^3%2Bb*x^2%2Bcx%2Bd&quot;&gt;Why stop there?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www96.wolframalpha.com/input/?i=length+of+great+wall+of+china+%2F+circumference+of+the+world&quot;&gt;Great wall of china divided by earth's circumference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www23.wolframalpha.com/input/?i=calories+in+a+peanut&quot;&gt;Calories in a peanut&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.wolframalpha.com/input/?i=determinant+of+%5B%5B1%2C1%2C3%5D%2C%5B2%2C3%2C4%5D%2C%5B5%2C6%2C7%5D%5D&quot;&gt;Determinent of a matrix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.wolframalpha.com/input/?i=%5B%5B1%2C1%2C3%5D%2C%5B2%2C3%2C4%5D%2C%5B5%2C6%2C7%5D%5D.%5B%5B1%2C1%2C3%5D%2C%5B2%2C3%2C4%5D%2C%5B5%2C6%2C7%5D%5D&quot;&gt;Matrix dot products&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Some results are confusing:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www23.wolframalpha.com/input/?i=derivative+of+y+%3D+x^2&quot;&gt;Derivative of y=x^2&lt;/a&gt; why doesn't it also display the succinct 'implicit derivative' 2x result you get from the &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=y+%3D+x^2&quot;&gt;y=x^2&lt;/a&gt; page?&lt;/li&gt;
&lt;li&gt;And &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=integrate+y%3D2x&quot;&gt;Integrate y=2x&lt;/a&gt;, doesn't really do anything, yet we've just done the answer above. (Ah, it's because you need to do &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=integrate+2x+dx&quot;&gt;integrate 2x dx&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;And it doesn't do well with misspellings:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www23.wolframalpha.com/input/?i=fibonnacci+sequence&quot;&gt;Fibonnacci sequence&lt;/a&gt; vs &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=fibonacci+sequence&quot;&gt;Fibonacci sequence&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;And it's limited in some Engineering areas:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;It does &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=spring+force&quot;&gt;springs&lt;/a&gt; and &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=column+buckling&quot;&gt;columns&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;But not &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=flat+plate+theory&quot;&gt;plates&lt;/a&gt;, &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=pressure+vessel&quot;&gt;pressure vessels&lt;/a&gt; or &lt;a href=&quot;http://www23.wolframalpha.com/input/?i=beam+bending&quot;&gt;beams&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Ack, this was only meant to be a quick post, but have gone on too much already. Lots of fun can be had with it anyway.&lt;/p&gt; 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>http://flic.kr/p/6oAMHg</title>
   <link href="http://atomicules.co.uk/2009/05/17/flickr-short-urls.html"/>
   <updated>2009-05-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/17/flickr-short-urls</id>
   <content type="html">
		
				&lt;div class=&quot;href&quot;&gt;
					&lt;a href=&quot;http://flic.kr/p/6oAMHg&quot;&gt;&#187; http://flic.kr/p/6oAMHg&lt;/a&gt;
				&lt;/div&gt;
				&lt;div class=&quot;descrip&quot;&gt;
					&lt;p&gt;&lt;b&gt;Flickr Short URLs&lt;/b&gt; have been around for a little while, but I still don't think they've been officially announced. At least I've not notice a post on the main &lt;a href=&quot;http://blog.flickr.net/en&quot;&gt;flickr blog&lt;/a&gt;, or the &lt;a href=&quot;http://code.flickr.net/&quot;&gt;flickr code blog&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I first saw them on Twitter as a flickr staff member had used one. I googled and found this blog entry on &lt;a href=&quot;http://www.garibion.com/2009/04/flickr-short-url.html&quot;&gt;flickr short urls&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;So this is just to spread the word. At the moment you have to view source on the photo page and look for:&lt;/p&gt;
&lt;pre id=&quot;line23&quot;&gt;&amp;lt;link rev=&quot;canonical&quot; type=&quot;text/html&quot; href=&quot;http://flic.kr/p/xxxxxx&quot; &amp;gt;&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;But this then gives you a permanent short url that isn't going to expire and you also know where you are being taken to. I imagine when they officially announce it they'll add it into the Share This bit on each photo's page.&lt;/p&gt; 

				&lt;/div&gt;		
			
   </content>
 </entry>
 
 <entry>
   <title>So I Buy Old Pairs Of Spectacles From Junk</title>
   <link href="http://atomicules.co.uk/2009/05/12/so-i-buy-old-pairs-of-spectacles-from-junk.html"/>
   <updated>2009-05-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/12/so-i-buy-old-pairs-of-spectacles-from-junk</id>
   <content type="html">
		
				&lt;div class=&quot;quote&quot;&gt;&quot;...So I buy old pairs of spectacles from junk shops and when I meet a dog in the park I put a pair of spectacles on him. Of course, he shakes his head and they drop off sooner or later, so that is why there are pairs of spectacles in odd places in my pictures.&quot;&lt;/div&gt;
				&lt;div class=&quot;source&quot;&gt;&#8212; &lt;p&gt;&lt;a href=&quot;http://www.oup.com/oxed/primary/treetops/2/alex.html&quot;&gt;Alex Brytcha&lt;/a&gt; (illustrator of &lt;a href=&quot;http://fds.oup.com/www0.oup.com/ort/index.html&quot;&gt;The Oxford Reading Tree&lt;/a&gt; series, aka: &lt;a href=&quot;http://www.bbc.co.uk/schools/magickey/index.shtml&quot;&gt;The Magic Key&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;[Finally! Solved! This has been bugging me for years ever since I first started spotting these spectacles in my kids' reading books. And now I know.]&lt;/p&gt; 
 &lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>One Of The Best Things About Being A Dad Is Peppa</title>
   <link href="http://atomicules.co.uk/2009/05/12/one-of-the-best-things-about-being-a-dad-is-peppa.html"/>
   <updated>2009-05-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/12/one-of-the-best-things-about-being-a-dad-is-peppa</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://flickr.com/photos/timbfrost/3507150975/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3325/3507150975_64079b769a.jpg&quot; alt=&quot;One Of The Best Things About Being A Dad Is Peppa&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;One of the best things about being a dad is Peppa Pig. Peppa Pig is cool. The episodes are short, sweet and funny, and lovely to look at. Daddy Pig is a role model up there with Homer Simpson. I.e. he's a little bit useless, but remains completely unfazed about any ribbing his family gives him and deals with life's mishaps in the best possible way: by lying on the floor and having a good laugh about them.&lt;/p&gt;
&lt;p&gt;I like Peppa Pig.&lt;/p&gt;
&lt;p&gt;So, how cool was it to see these &lt;a href=&quot;http://www.flickr.com/photos/timbfrost/sets/72157617785477346/&quot;&gt;Peppa Pig sketches&lt;/a&gt; from a &lt;a href=&quot;http://www.flickr.com/photos/timbfrost/&quot;&gt;Tim Frost&lt;/a&gt;, an ex-designer on Peppa Pig, in the &lt;a href=&quot;http://www.flickr.com/groups/peppapig/pool/&quot;&gt;Peppa Pig pool&lt;/a&gt; on Flickr?&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Blogged with permission from &lt;a href=&quot;http://www.flickr.com/photos/timbfrost/&quot;&gt;timbfrost&lt;/a&gt; on Flickr.&lt;/i&gt;&lt;a href=&quot;http://www.flickr.com/photos/timbfrost/&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>The Spring Roidweek 2009 Was A Lot Of Fun First</title>
   <link href="http://atomicules.co.uk/2009/05/11/the-spring-roidweek-2009-was-a-lot-of-fun-first.html"/>
   <updated>2009-05-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/11/the-spring-roidweek-2009-was-a-lot-of-fun-first</id>
   <content type="html">
		
				
				&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/3500712785/&quot;&gt;
				
					&lt;img src=&quot;http://farm4.static.flickr.com/3646/3500712785_b5f87281fc.jpg&quot; alt=&quot;The Spring Roidweek 2009 Was A Lot Of Fun First&quot; /&gt;
				
				&lt;/a&gt;
				
				&lt;div class=&quot;source&quot;&gt;
					&lt;p&gt;The spring &lt;a href=&quot;http://www.flickr.com/groups/polaroidweek2009/&quot;&gt;'Roidweek 2009&lt;/a&gt;, was a lot of fun. First time doing it. My Polaroid camera is one of my favourite cameras even though it's rubbish. Peel apart film is one of the most fun experiences you can have. In life. Seriously. It's up there with cross processing and looking through the viewfinders of TLRs.&lt;/p&gt;
&lt;p&gt;More here: &lt;a href=&quot;http://www.flickr.com/search/?w=91098778%40N00&amp;amp;q=roidweek+2009+spring&amp;amp;m=tags&quot;&gt;i5m's Spring 'roidweek 2009&lt;/a&gt;.&lt;/p&gt; 

				&lt;/div&gt;
			
   </content>
 </entry>
 
 <entry>
   <title>Almost Valid</title>
   <link href="http://atomicules.co.uk/2009/05/11/almost-valid.html"/>
   <updated>2009-05-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/11/almost-valid</id>
   <content type="html">
		
				 &lt;p&gt;I've tweaked the (x)HTML and CSS so it gets as near to validating as it ever will. Tumblr use an iframe to insert the &lt;img alt=&quot;Tumblr iFrame Follow image&quot; src=&quot;http://assets.tumblr.com/images/iframe_follow_alpha.png&quot; align=&quot;bottom&quot; height=&quot;20&quot; width=&quot;58&quot; /&gt; and &lt;img alt=&quot;Tumblr iFrame Dashboard image&quot; src=&quot;http://assets.tumblr.com/images/iframe_dashboard_alpha.png&quot; align=&quot;bottom&quot; height=&quot;20&quot; width=&quot;81&quot; /&gt;, etc into the top right hand corner of the page. This &lt;a href=&quot;http://getsatisfaction.com/tumblr/topics/iframe_for_tumblr_controls_breaks_xhtml_validation&quot;&gt;throws a validation error&lt;/a&gt;. There's nothing I can do about that. And it's of no big concern.&lt;/p&gt;
&lt;p&gt;The CSS is valid apart from the use of border-radius. Which is more an issue with the Jigsaw validation engine than an actual error.&lt;/p&gt;
&lt;p&gt;All, in all, I'm quite impressed that Tumblr allows you to get syntax this good. It's a shame you can't use the HTML5 doctype with Tumblr, but again, not the end of the world.&lt;/p&gt;
&lt;p&gt;Although almost valid, the mark-up still requires a fair bit of work. It's all a bit of a hack and could benefit from some tidying up. I'll do that in the meantime.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>What to write here</title>
   <link href="http://atomicules.co.uk/2009/05/10/what-to-write-here.html"/>
   <updated>2009-05-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/10/what-to-write-here</id>
   <content type="html">
		
				 &lt;p&gt;Interesting personal blogs are written about things the writer is passionate, knowledgeable and opinionated about.&lt;/p&gt;
&lt;p&gt;However, sometimes the things you are emotive about aren't best served by blogging for every man and his dog to see. In the space of a few years things have changed a lot. I certainly won't be mentioning anything to do with work. I think the only bloggers that seem to get away with that nowadays are public sector professionals. Maybe because it's seen to be in the best interests of the public on some kind of level? Also, over the years my interests have changed; The main one being dropping video editing for photography.&lt;/p&gt;
&lt;p&gt;So this time around, I think it'll be a bit of a art+code slant. Photography and (listening to) music making up the &lt;i&gt;art&lt;/i&gt; side of things. And whatever geeky things I find myself doing for the &lt;i&gt;code&lt;/i&gt; side of things.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>There vs Here (before Tumblr)</title>
   <link href="http://atomicules.co.uk/2009/05/10/there-vs-here-before-tumblr.html"/>
   <updated>2009-05-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/10/there-vs-here-before-tumblr</id>
   <content type="html">
		
				 &lt;p&gt;The only 'old' post I'm going to import. For a bit of fluidity. Although I've had to edit it a bit for context, and in the process made it more incoherent than it started.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;There&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;I loved my site. I really did. It was made with my own fair hands. I liked the look of it. And it almost did everything I wanted (It was a portal for what I do on the net). And it allowed me to geek out in getting it setup.&lt;/p&gt;
&lt;p&gt;In thinking about moving to something else (tumblr), I thought I was going to loose a lot of what I had, but all I've lost was my  custom Appletalker integration.&lt;/p&gt;
&lt;p&gt;I did lose some of the geeky stuff. I did that site for me. I enjoy the geeky side of things, but I don't have time to do the geeky stuff anymore. E.g. posting comments didn't use Ajax. And it was never going to. Even though it is relatively simple in Rails. I just didn't (and still don't) have the time.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Here&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;So, as much as I loved there, I don't post here (that's confusing, but I mean my website in general. A bit lost in translation from there to here ;-) ).&lt;/p&gt;
&lt;p&gt;That was/is mainly to do with time. I had/have ideas for blog posts, but rarely the time to write them out. That's kids for you. :-) That site might have been hosted locally on my mac, but that wasn't the thing preventing me from posting. I don't think. The uptime was good enough for me, although it would have been lovely to afford proper hosting again - never going to happen though. So although the main problem is purely finding the time to post, I think convenience plays a big part as well - I posted less than 30 times in the last two years on my home hosted website.&lt;/p&gt;
&lt;p&gt;And I still have my domain names. And wanted to do something with them. And I do want to post somethings sometime. Just more quickly. So in the same way I stopped with my own web gallery and let flickr do it, I thought why the hell have I half-arsed built my own website? Hence Tumblr.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Back to the party</title>
   <link href="http://atomicules.co.uk/2009/05/10/back-to-the-party.html"/>
   <updated>2009-05-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/05/10/back-to-the-party</id>
   <content type="html">
		
				 &lt;p&gt;A few years ago now I first &lt;a href=&quot;http://web.archive.org/web/20020929131250/http://www.i5m.co.uk/&quot;&gt;got on the net&lt;/a&gt; (Isn't it scary how much of this stuff hangs around?). I accumulated a lot of posts about a lot of nonsense. I was using &lt;a href=&quot;http://www.blogger.com&quot;&gt;Blogger&lt;/a&gt; as a back end to manage 'dynamic' content, serving it up via server side includes. All in  xhtml goodness. I made a beginners mistake and let my webhost register my domain name in their name. So when they went down the swaney so did my domain name. I &lt;a href=&quot;http://web.archive.org/web/*/http://i5m.me.uk&quot;&gt;relaunched&lt;/a&gt; using &lt;a href=&quot;http://nanoblogger.sourceforge.net/&quot;&gt;Nanoblogger&lt;/a&gt; and served it all up statically on (what was) &lt;a href=&quot;http://www.me.com&quot;&gt;dotmac&lt;/a&gt;. That was fun for awhile until I couldn't justify paying for any kind of hosting for what is a poxy personal website. So I decided to roll my own,  hosting at home using &lt;a href=&quot;http://www.everydns.com/&quot;&gt;everydns&lt;/a&gt;, &lt;a href=&quot;http://mongrel.rubyforge.org/&quot;&gt;mongrel&lt;/a&gt; and a custom site built in  &lt;a href=&quot;http://rubyonrails.org/&quot;&gt;Rails&lt;/a&gt; that used html5 instead of xhtml. A lot of fun, but hosting at home on a laptop(!) is a bit silly really.&lt;/p&gt;
&lt;p&gt;So we get to today. Which must make this the 5th or 6th re-incarnation. And I've decided to have a go with tumblr. The price is great: free. It is fairly customisable, and you can use your own domain name; You can pretty much give the appearance you are hosting yourself.&lt;/p&gt;
&lt;p&gt;Only, thing is. I'm not exactly sure what I'm going to write here.&lt;/p&gt; 

			
   </content>
 </entry>
 
 <entry>
   <title>Old is the new New</title>
   <link href="http://atomicules.co.uk/2009/03/17/Old-is-the-new-New.html"/>
   <updated>2009-03-17T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2009/03/17/Old-is-the-new-New</id>
   <content type="html">
		
				 &lt;p&gt;I was thinking this the other day, watching tv on our ancient Ferguson TX; which I can't figure out how old it is, but it must be somewhere between 20-30 years old and it is still working well enough that there is absolutely NO WAY I'm replacing it before it dies - it's outlived many more recent offerings, I'm sure. But without realising it, old has become the new new for me.&lt;/p&gt;&lt;p&gt;My cameras, being second hand film cameras, are all old. The oldest must be my Great Grandpa's No.2A Folding Autographic Brownie from 1926, the newest being the Canon Ixus L-1 from 1997. And then there's the rest everywhere in between. And they are all lovely. I wouldn't swop my Yashica Mat for a Nikon D300 (or whatever is good at the mo') because it's just not the same thing.&lt;/p&gt;&lt;p&gt;My computer is old by computer standards: 2003. Six years isn't bad going. Fingers crossed it keeps going longer. It's old technology as it's a PPC processor. Part of the enjoyment is/has been using sometime different. But with a new machine there's either x86 or x86. It will very soon be &quot;obsolete&quot; in that it won't be able to run the latest OS. But it won't be obsolete in that it will still do what I need it to do.&lt;/p&gt;&lt;p&gt;As technology progresses it seems to converge and refine whereas with old technology there's a lot more diversity. Which to me translates as more things to try out. And not all of it is past its sell by date. It still does the trick.&lt;/p&gt;&lt;p&gt;I'm not anti-new technology. Far from it, but being into new technology does come at a cost (Mind you, being into old technology can come at a cost as well, especially with some cameras!)&lt;/p&gt;&lt;p&gt;The only downside is being left behind. But you don't have to stay behind permanently, just lag a little.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Really Dancing</title>
   <link href="http://atomicules.co.uk/2009/03/02/Really-Dancing.html"/>
   <updated>2009-03-02T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/03/02/Really-Dancing</id>
   <content type="html">
		
				 &lt;p&gt;Best. Wedding. Ever.&lt;/p&gt;&lt;p&gt;Have to say something.&lt;/p&gt;&lt;p&gt;It was always a dead-cert to be a good one. The fact that me and the missus met through the bride helps. The fact that it was pretty much just a big group of friends together for a party. I'd hazard a guess that for most couples there, each partner would consider themselves friends with the bride AND  groom. It was so relaxed I think at least someone was laughing at each point of the wedding. Bursting with excitement and anticipation, we just couldn't help it. No kids allowed being a bonus for us that rarely get a night out anyway. Friends rarely seen.&lt;/p&gt;&lt;p&gt;Just a wedding full of brilliant, brilliant people. The best party ever. It will be talked about for ages.&lt;/p&gt;&lt;p&gt;I lost my tripod (but it was found! Thanks to the bride and groom - stars)&lt;/p&gt;&lt;p&gt;And  I don't think my dancing really counts, as far as I recall I was a cross between Zac Efron in High School Musical and Pharell Williams. I await video evidence to the contrary.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Mine Again</title>
   <link href="http://atomicules.co.uk/2009/02/09/Mine-Again.html"/>
   <updated>2009-02-09T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/02/09/Mine-Again</id>
   <content type="html">
		
				 &lt;p&gt;I was first on the web in 2002 with i5m.co.uk. In my naivety I let my webhost register the domain in their name. And so when they went down the swanny, I lost control of my domain in early 2005. It was then I went for i5m.me.uk.&lt;/p&gt;&lt;p&gt;Well after 4 years of watching (missed it 2 years ago), I've finally got it back. &lt;/p&gt;&lt;p&gt;Hurrah!&lt;/p&gt;&lt;p&gt;I really should do a proper website again.&lt;/p&gt;&lt;p&gt;Don't know what to do about redirects. I've now got three domain names (i-5-m.net when I thought I'd also lost control of the i5m.me.uk one; lost registration documents, and it was detagged).&lt;/p&gt;&lt;p&gt;In theory I should pick one and redirect the others to it. But I don't know which one (Vote now - Ha!). Mind you I don't know how to do permanent redirects on local hosting. I think it complicates things.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Down. Back Up.</title>
   <link href="http://atomicules.co.uk/2009/02/07/Down.-Back-Up..html"/>
   <updated>2009-02-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2009/02/07/Down.-Back-Up.</id>
   <content type="html">
		
				 &lt;p&gt;Back up after being down.&lt;/p&gt;&lt;p&gt;Ooops, for some unknown reason my mysql instance had stopped running, killing my website. No idea when that happened - I don't check often.&lt;/p&gt;&lt;p&gt;If I was clever I'd at least have some kind of notification if someone tried to reach my site. But I don't know how to do that.&lt;/p&gt;&lt;p&gt;But then I start thinking, what is the point of this site? I don't have many big things to say anymore. It's all Twitter now.&lt;/p&gt;&lt;p&gt;I should at least fix my error page.&lt;/p&gt;&lt;p&gt;I wonder if I could transfer to using SQLite?&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Liquid error: private method `gsub' called for 2008:Fixnum</title>
   <link href="http://atomicules.co.uk/2008/12/31/2008.html"/>
   <updated>2008-12-31T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2008/12/31/2008</id>
   <content type="html">
		
				 &lt;p&gt;The typical &quot;Year in Review&quot; post.&lt;/p&gt;&lt;p&gt;Finally getting another &lt;a href=&quot;http://www.gsmarena.com/motorola_motofone_f3-1794.php&quot;&gt;mobile phone&lt;/a&gt;, 4 years after the &lt;a href=&quot;http://www.gsmarena.com/sony_ericsson_k700-692.php&quot;&gt;last one&lt;/a&gt; I got. I've been without a functioning mobile for a couple of years now. Amazingly it's more basic than the &lt;a href=&quot;http://www.gsmarena.com/ericsson_t18s-116.php&quot;&gt;first ever mobile&lt;/a&gt; I had, but I like it. Also, &lt;a href=&quot;http://www.asdamobile.com/&quot;&gt;Asda Mobile&lt;/a&gt; is fantastic value.&lt;/p&gt;&lt;p&gt;My first full year of photography. I hope I manage to get some shots next year that I like as much as the ones this year. I'm very glad I decided to get a camera. And then decided to get more cameras. Here's to yet more next year.&lt;/p&gt;&lt;p&gt;The highland games we've attended: &lt;a href=&quot;http://flickr.com/photos/i-5-m/sets/72157607153108512/&quot;&gt;Keith Country Show&lt;/a&gt; and &lt;a href=&quot;http://flickr.com/photos/i-5-m/sets/72157607153712194/&quot;&gt;Lonach Gathering&lt;/a&gt;. These were really good. And it's been nice to actually live up here and enjoy what's on offer, rather than just exist like we did in Lancaster.&lt;/p&gt;&lt;p&gt;Work: enforced job change after being assimilated by the borGE. Could have gone a lot worse, so it's positive from that point of view.&lt;/p&gt;&lt;p&gt;Developing my first &lt;a href=&quot;http://shoooes.net/&quot;&gt;Shoes&lt;/a&gt; app at work. A little thing, but gave me a big sense of achievement. Shame it's nothing to do with my actual role at work, but still.&lt;/p&gt;&lt;p&gt;Finally updating this site to &lt;a href=&quot;http://weblog.rubyonrails.org/2007/12/7/rails-2-0-it-s-done&quot;&gt;Rails 2&lt;/a&gt;, etc. Only a year late. Again a little thing, but I was amazed I didn't have to bail and go back to the old one.&lt;/p&gt;&lt;p&gt;Going to &lt;a href=&quot;http://flickr.com/photos/i-5-m/sets/72157608177287079/&quot;&gt;Poland&lt;/a&gt;. Because travelling is rare. And it's good to explore. And &lt;a href=&quot;http://flickr.com/photos/i-5-m/2953924425/in/set-72157608177287079/&quot;&gt;learn&lt;/a&gt; at least a little.&lt;/p&gt;&lt;p&gt;126 film cartridges become unavailable in the UK.&lt;/p&gt;&lt;p&gt;Not exploring as much of Scotland as I hoped. Apart from the shows we've not got very far. I was hoping to get further up north over the summer. But it's been and gone. Summer was a bit pants really. Not a lot happened.&lt;/p&gt;&lt;p&gt;Only making one &lt;a href=&quot;http://flickr.com/photos/i-5-m/sets/72157603874194024/&quot;&gt;flickr meet&lt;/a&gt;. In January! The year got off to a good start with that and I was hopeful that I might actually get to know some people up here and make some real-life/3D friends instead of the real-but-virtual ones I have. In three years in Lancaster I got to know the sum total of zero people. Pretty depressing. Unfortunately it looks like Aberdeen is going to be the same. Such is family life it seems.&lt;/p&gt;&lt;p&gt;Not having a holiday. I don't mean an abroad one, or even camping in the UK, but just not really having a break. Until now: Christmas. It's been a tiring year.&lt;/p&gt;&lt;p&gt;Work: I still have no idea what I want to do. I wonder if I ever will?&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>A couple of tweaks</title>
   <link href="http://atomicules.co.uk/2008/11/22/A-couple-of-tweaks.html"/>
   <updated>2008-11-22T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2008/11/22/A-couple-of-tweaks</id>
   <content type="html">
		
				 &lt;p&gt;I'm not entirely sure why I persist with this website, but I do. I've just made a couple of little tweaks to the Twitter part (i.e. the tagline up above) and also to the flickr images pulled in.&lt;/p&gt;&lt;p&gt;The tagline uses the &lt;a href=&quot;http://twitter.rubyforge.org/&quot;&gt;Twitter gem&lt;/a&gt; and used to simply pull in my latest status, but then I realised displaying @replies wasn't really great so I used my kludging coding abilities to loop through my timeline and find the first thing without an @&lt;/p&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;n&quot;&gt;twitter&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;timeline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;ss&quot;&gt;:user&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;each&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;t&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tweet&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;t&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;text&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;t&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;match&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;^(?!@).&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;break&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;t&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;match&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;^(?!@).*&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;The flickr images use the &lt;a href=&quot;http://rubyforge.org/projects/rflickr/&quot;&gt;rflickr gem&lt;/a&gt; (sadly development seems to have died). Which I've already modified once to include the privacy_filter arguement of the &lt;a href=&quot;http://flickr.com/services/api/flickr.photos.search.html&quot;&gt;flickr.photos.search&lt;/a&gt; call, the fact that I managed to do this is a testament to the rflickr gem and the flickr API. I decided to modify it again to include the content_type filter so I could exclude screenshots, etc. After, naturally, initially assuming my coding abilities had mucked up, it seems there is a bug in the flickr API and it ignores the content_type setting. So for now this change is not working.&lt;/p&gt;&lt;p&gt;Oh, and I think I have just fixed my RSS feed as well so that it actually shows as updated in feed readers. I'd missed out lastBuildDate.&lt;/p&gt;&lt;p&gt;It's all good news. Well apart from the flickr bug.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Almost a real website again</title>
   <link href="http://atomicules.co.uk/2008/08/08/Almost-a-real-website-again.html"/>
   <updated>2008-08-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2008/08/08/Almost-a-real-website-again</id>
   <content type="html">
		
				 &lt;p&gt;I now have real domains again instead of the &lt;strong&gt;i5m.is-a-geek.org&lt;/strong&gt; &lt;a href=&quot;http://www.dyndns.com/&quot;&gt;dyndns&lt;/a&gt; one. A new one: &lt;strong&gt;i-5-m.net&lt;/strong&gt; and the old one resurrected: &lt;strong&gt;i5m.me.uk&lt;/strong&gt;. They get here through the wonders of &lt;a href=&quot;http://www.everydns.net/&quot;&gt;EveryDNS&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;I thought I'd lost the i5m.me.uk one. It wasn't until looking for new domain names I found out it was still registered to me. What happened was, that last year after just renewing it, I had a paddy because I couldn't afford to keep my hosting (even though it was only about a fiver a month - hey they were poor times) so I left my registrar and binned my registration certificate, thinking I'd just let it expire. Fortunately I managed to reestablish my identify with &lt;a href=&quot;http://www.nominet.org.uk/registrants/onlineservices/faq/#detaggeddomain&quot;&gt;Nominet&lt;/a&gt; and get it back.&lt;p&gt;I don't know why, but it just feels better having a proper domain name again.&lt;/p&gt;&lt;p&gt;Normal, sporadic, posting will resume.&lt;/p&gt;&lt;p&gt;I'm still keeping my hosting on my mac (I get relatively good uptime thanks to my missus always being on Facebook). Can't justify a real host at the moment, even though I could probably afford it now. Just no real need for it at the mo'.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Drawing in biro</title>
   <link href="http://atomicules.co.uk/2008/06/30/Drawing-in-biro.html"/>
   <updated>2008-06-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2008/06/30/Drawing-in-biro</id>
   <content type="html">
		
				 &lt;p&gt;When I was at school (and still had an ounce of creativity) I learnt about sketching in biro. Drawing in biro forces confidence in each line you make, since you can't go back and rub it out. You've got to get in right. You've got to be bold with the line you draw, do it in one confident stroke rather than timidly brushing the paper with a pencil. &lt;/p&gt;&lt;p&gt;The downside of drawing in Biro is that if you get the line wrong, you can't rub it out. It can get messy trying to correct it. All you can do is try to salvage what you've got, but the mistake will be there visible to all. Or if it comes to it, start again. Hopefully putting what you learnt about the previous sketch attempt to good use so you judge the line better this time.&lt;/p&gt;&lt;p&gt;I don't know what to do with this sketch. Overall it's not working out they way I wanted, not happy with it, but there are parts of it that I doubt I could re-create again - they are my best work.&lt;/p&gt;&lt;p&gt;I'm thinking I just need to keep the sketch and adjust my expectations. After all, it's been a long time since I've drawn anything at all.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Flickr turns 4</title>
   <link href="http://atomicules.co.uk/2008/03/14/Flickr-turns-4.html"/>
   <updated>2008-03-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2008/03/14/Flickr-turns-4</id>
   <content type="html">
		
				 &lt;p&gt;I had a bit of fun with this:&lt;/p&gt;&lt;a href=&quot;http://www.flickr.com/photos/i-5-m/2331999618/&quot; title=&quot;Flickr turns 4 in the wild - Lamp post by i5m, on Flickr&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2065/2331999618_3cfbc390b2_m.jpg&quot; width=&quot;180&quot; height=&quot;240&quot; alt=&quot;Flickr turns 4 in the wild - Lamp post&quot; /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/groups/flickrturns4inthewild/&quot;&gt;Shame there wasn't more of it.&lt;/a&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Comments Again (again)</title>
   <link href="http://atomicules.co.uk/2008/03/01/Comments-Again-%28again%29.html"/>
   <updated>2008-03-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2008/03/01/Comments-Again-(again)</id>
   <content type="html">
		
				 &lt;p&gt;It seems like Haloscan have died a death. I mean the website is still there and it still works, but the forum is dead. There is no one from Haloscan around.&lt;/p&gt;&lt;p&gt;With that in mind I've finally got around to doing comments properly via rails. Since this site is on rails. It wasn't too hard (it shouldn't be I guess, but I'm very rusty), but it is only very basic, no user logon (probably a good thing!), no editing. Just comment and run.&lt;/p&gt;&lt;p&gt;Will probably need a bit of tweaking, but it seems to be basically working. I could do with making the comment appear via AJAX, etc rather than re-loading the whole page. But it'll do - I have to remember NO ONE reads this site anyway (especially since I've become very energy aware and I'm sleeping my machine/webserver much more than I used to!)&lt;/p&gt;&lt;p&gt;Nothing really negative to say, this is just an in-between post. It'll soon be gone. Oh, and as each post goes so do the comments. More Yay!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Comments Again</title>
   <link href="http://atomicules.co.uk/2007/12/12/Comments-Again.html"/>
   <updated>2007-12-12T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2007/12/12/Comments-Again</id>
   <content type="html">
		
				 &lt;p&gt;Not a lot else to say, but I've decided to include Haloscan again for my comments. &lt;/p&gt;&lt;p&gt;Since each post isn't around for long/ever it also means for all intents and purposes comments related to each post will only be around until the next post.&lt;/p&gt;&lt;p&gt;I could have done my own with rubyonrails, but I couldn't see the point. I just don't have a lot of time. And now this is hosted locally (with naff uptime) I really don't think anyone reads it. So the effort in developing my own just isn't worth it.&lt;/p&gt;&lt;p&gt;So, in hindsight I should have re-enabled comments quite a while ago. But like the CSS, it all takes time!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>CSS all grovy</title>
   <link href="http://atomicules.co.uk/2007/12/07/CSS-all-grovy.html"/>
   <updated>2007-12-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2007/12/07/CSS-all-grovy</id>
   <content type="html">
		
				 &lt;p&gt;I've finally fixed the niggling CSS (not &lt;a href=&quot;http://www.google.co.uk/url?q=http://en.wikipedia.org/wiki/Cansei_de_Ser_Sexy&quot;&gt;CSS&lt;/a&gt;) issue I've had at the bottom of the page since this version of the site launched.&lt;/p&gt;&lt;p&gt;Due to fitting in my rubbish logo (chopped off edges and all, but it was done in five seconds) all the divs, etc are shifted down to accommodate it. This works fine all the way down to the bottom of the page until the &quot;elsewhere on the web bit&quot; which overlapped the footer. It annoyed me so much I ignored trying to fix it for months.&lt;/p&gt;&lt;p&gt;I'm chuffed. Gonna have a beer to celebrate. Works fine in Gecko and Webkit/KHTML. Internet explorer? Who gives a shit.&lt;/p&gt;&lt;p&gt;To fix it took one line of CSS. Just adding a bottom margin to the &quot;elsewhere...&quot; div. Gah!&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Leopard</title>
   <link href="http://atomicules.co.uk/2007/11/09/Leopard.html"/>
   <updated>2007-11-09T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2007/11/09/Leopard</id>
   <content type="html">
		
				 &lt;p&gt;A bit of downtime as I upgraded to OSX 10.5 Leopard. It is very nice and shiny. It also comes with rails pre-installed, which is good.&lt;/p&gt;&lt;p&gt;Unfortunately that confused me a touch as how to get my site back up and running. I wasn't sure about mysql, but the 10.4 package works fine. Also the default rails install works, but I've heard worrying things about installing gems so I've just installed the ones I need manually in the Rails Vendor location. Woohoo, I'm back-up - although I'll have to check the Leopard firewall isn't interferring.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Moving from Filming to Photography</title>
   <link href="http://atomicules.co.uk/2007/10/11/Moving-from-Filming-to-Photography.html"/>
   <updated>2007-10-11T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2007/10/11/Moving-from-Filming-to-Photography</id>
   <content type="html">
		
				 &lt;p&gt;Video editing, although fun, is a killer time consumer. With photography it's just a still, with editing it's lots of stills with lots of &quot;rolls&quot; to add together. The processing power required is also a lot more, as is importing the footage in the first place so it takes a lot of time.&lt;/p&gt;&lt;p&gt;I don't have a lot of free time.&lt;/p&gt;&lt;p&gt;Actually getting to it, the biggest time killer is acquiring the image/footage in the first place. Taking a snap is an instantaneous thing, very unobtrusive, you can jump in and jump out. Filming means a sequence. It means removing yourself permanently from the event to capture it, it means getting in the way (in that you are constantly stood in the way of the subjects) and out of the way (in that you can't interact), both of which can be difficult for a family event, i.e. &quot;Just help hold this&quot; kind of thing. This is one of the main reasons why we have thousands of photos of Mouse's first year, but hardly any video footage.&lt;/p&gt;&lt;p&gt;And it's possible to take lots of shots and pick one good one, but with a video sequence, one bad moment can ruin the whole thing, and the moment could be lost forever (or lots of tricky editing).&lt;/p&gt;&lt;p&gt;After all the editing for video, you've then likely got a long encode time to get to distribution. With a photo (especially if digital, there it is). Immediately viewable. And the great thing is, is that it doesn't take long for someone to view your work, and for that reason more people are likely to look at it. With Video you need to set time aside to watch it, it's also more intrusive because of the audio (i.e. watching a video at work, vs looking at photos).&lt;/p&gt;&lt;p&gt;Equipment expense. Oh boy the expense. On a comparable level: consumer; prosumer; pro; - video is far, far more expensive than photography. In the price of camera vs video camera, in the price of hardware required to edit with it, in the price of hardware required to store video footage vs photos. Really, that is what finally nailed the lid on the coffin of my video editing. My camera still works and I have hours and hours of backlog of footage to edit, but my computer is broken enough that I can't edit video (and can't afford to repair), but for photos - no problem.&lt;/p&gt;&lt;p&gt;To date, I've never had an interest in Photography, although that's probably because the only cameras I've seen or used have been really basic film point and shoots. Not exactly much you can do with them, i.e. no settings to twiddle with.&lt;/p&gt;&lt;p&gt;Being more geeky than artistic I probably didn't feel I belonged there either. So as it turned out I got into video editing first, especially because of skateboarding, and also because digital video was really there before digital photography. And there it was, I had an iMac DV, so it'd be stupid not to get a video camera (it's only money afterall - and I already had the cable to connect it and a good excuse of going on a skateboarding trip to Barcelona - shame I smashed the camera on the first day). So I did and that was that. I was hooked on video editing (more than filming - there was a certain technical geeky element to editing that appealed to me, over the more artistic requirements of filming).&lt;/p&gt;&lt;p&gt;The biggy I guess though is that video editing captures more than a photo ever can. It has audio. Video without audio is nothing, but audio on it's own also isn't as good. It's the combination that is the winner. I.e. filming your kids babbling away as babies. Filming special events that, ok you might not watch often, but that it is really great to be able to do, like weddings and birthdays and first christmasses.&lt;/p&gt;&lt;p&gt;For me, video offers more creativity than photography, especially via video editing. With photography re-touching, etc, although skilful, can be frowned upon, in video there is more than can be done than just re-touch (it's a whole presentation package) and re-touching, if you are up to it, just helps.&lt;p&gt;However, flickr has got me hooked on photography - and I only started using flickr since it was an easy solution to sharing photos online - and that's it really, bye bye video editing. (For now).&lt;/p&gt;&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>First Post - Introduction</title>
   <link href="http://atomicules.co.uk/2007/04/12/First-Post---Introduction.html"/>
   <updated>2007-04-12T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2007/04/12/First-Post---Introduction</id>
   <content type="html">
		
				 &lt;p&gt;A brand new site. I couldn't help myself. This one is a lot more simple though. There's no history for starters, it's just going to be one post at a time and when it's gone it's gone. So I'll leave this post here for a bit and then get on with the real posting. Not that I have so much to say nowadays - I think I just needed to be tinkering with something rather than actually ranting about stuff which is why I've developed this site without ever really meaning to.&lt;/p&gt;&lt;p&gt;I got rid of my webhost and domain names to save a bit of cash (the price of beans on toast has gone up) so this is hosted on my mac at home. I can guarantee a 4.3% uptime. Well actually, it'll be quite good as long as it stays plugged in since the battery is screwed on my ageing 12&quot; powerbook.&lt;/p&gt;&lt;p&gt;I've used &lt;a href=&quot;http://www.rubyonrails.org/&quot;&gt;Ruby On Rails&lt;/a&gt; (not exactly pushing the boundaries of it, but it was fun for me) to develop this site and &lt;a href=&quot;http://mongrel.rubyforge.org/&quot;&gt;Mongrel &lt;/a&gt;to serve it.&lt;/p&gt;&lt;p&gt;Since I've been accused of being too negative in the past with each post (this one excepted since it's an introduction) I've forced myself to  present a positive and negative side to it. I predict this column (the one you are reading right now) will always be the longest, but the other one will always get something in it. I thought I'd write more in it now just so it feels good about itself.&lt;/p&gt;

			
   </content>
 </entry>
 
 <entry>
   <title>Photos</title>
   <link href="http://atomicules.co.uk/2006/12/19/Photos.html"/>
   <updated>2006-12-19T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/12/19/Photos</id>
   <content type="html">
		
				 &lt;p&gt;

I've given in and decided to transfer all my photos to &lt;a 

href=&quot;http://www.flickr.com&quot;&gt;flickr&lt;/a&gt;. As much as I'd love to do my own 

thing or use something like &lt;a 

href=&quot;http://www.fadingred.org/trac/snaps&quot;&gt;Snaps&lt;/a&gt;, it just seems &lt;a 

href=&quot;http://www.rubyforums.com/showthread.php?p=3610&quot;&gt;futile&lt;/a&gt; when flickr 

works so easily and does the job so well.

&lt;/p&gt;

&lt;p&gt;

A lot of &lt;a href=&quot;http://www.flickr.com/photos/i-5-m/&quot;&gt;my photos&lt;/a&gt; will be 

friends and family only. But, they'll be on flickr soon.

&lt;/p&gt;

&lt;p&gt;

Next is what to do with this blog?

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Other i5ms</title>
   <link href="http://atomicules.co.uk/2006/11/08/Other-i5ms.html"/>
   <updated>2006-11-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/11/08/Other-i5ms</id>
   <content type="html">
		
				 &lt;p&gt;

Prompted by a comment from another i5m I thought I'd post about the other i5ms I've found. So far

there are two:

&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;&lt;a href=&quot;http://www.myspace.com/i5m&quot;&gt;i5m on Myspace&lt;/a&gt; who is also on 

&lt;a href=&quot;http://webjay.org/by/i5m&quot;&gt;webjay&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://i5m.spaces.live.com/&quot;&gt;the i5m that posted a comment&lt;/a&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;

Someone recently registered my old .co.uk domain and it appears to be a &lt;a href=&quot;http://webwhois.nic.uk/cgi-bin/whois.cgi?query=i5m.co.uk&amp;amp;WHOIS+Submit.x=0&amp;amp;WHOIS+Submit.y=0&quot;&gt;real 

person&lt;/a&gt;, so perhaps there might be three soon.

&lt;/p&gt;

&lt;p&gt;

I find it odd that other people have the i5m name since mine was accidental

more than anything. I'd been using the nickname &lt;strong&gt;ism&lt;/strong&gt;, on a 

mac forum, which

I nicked from an old &lt;a href=&quot;http://www.wobblyweb.com/ue/37139.html&quot;&gt;Liverpool 

dance/techno group&lt;/a&gt; that I once saw in passing

at some free festival in London that I travelled to on some hippy bus. 

Incidentally, in searching for that ISM link again I found that one of the 

members is &lt;a href=&quot;http://www.myspace.com/babyvibes&quot;&gt;on myspace&lt;/a&gt;. I also

liked ism because of all the words that end in ism. Such as cynicism. Of course

when it came to domain names ism was well gone so I went for i5m. I wonder how 

the other two ended up there?

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Adventures in Text Editors</title>
   <link href="http://atomicules.co.uk/2006/11/07/Adventures-in-Text-Editors.html"/>
   <updated>2006-11-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/11/07/Adventures-in-Text-Editors</id>
   <content type="html">
		
				 &lt;p&gt;

I'm in limbo at the moment in a Text Editor of choice. I've been using &lt;a href=&quot;http://www.barebones.com/products/bbedit/index.shtml&quot;&gt;BBEdit&lt;/a&gt; for a pretty long time and was pretty happy with it. But then I hit a &lt;a href=&quot;http://www.appletalker.com/forum/index.php?req=thread&amp;amp;postid=4610&quot;&gt;bug in version 8&lt;/a&gt; that's only going to be fixed in a future point release of the current 8.5 version (really a 9.0). Unfortunately for me, version 8.5 has also removed a feature that I came to rely on, so there is no point me upgrading. 

&lt;/p&gt;

&lt;p&gt;

&lt;a href=&quot;http://www.macromates.com&quot;&gt;TextMate&lt;/a&gt; is meant to be the new cooler, hipper Mac Text Editor King. So I had a good look at that, but it seemed I was going to spend more time &lt;a href=&quot;http://www.appletalker.com/forum/index.php?req=thread&amp;amp;postid=4807&quot;&gt;trying to get it doing what I wanted&lt;/a&gt; (or what I thought it should do) rather than actually using it productively. 

&lt;/p&gt;

&lt;p&gt;

&lt;a href=&quot;http://smultron.sourceforge.net/&quot;&gt;Smultron&lt;/a&gt; is really good and completely free, but I was having &lt;a href=&quot;http://sourceforge.net/forum/forum.php?thread_id=1589942&amp;amp;forum_id=379995&quot;&gt;similar issues&lt;/a&gt; as I was with TextMate. It seems I want a combination of the two. The developer kindly &lt;a href=&quot;http://sourceforge.net/forum/forum.php?thread_id=1589946&amp;amp;forum_id=379995&quot;&gt;pointed me in the right direction&lt;/a&gt; in the source code, but there is no chance of me getting my head around that.

&lt;/p&gt;

&lt;p&gt;

At the moment, since to stand any chance of posting anything on this site I have to post via ssh from Work (ssh! don't tell them), I've resorted to using Vim. It maybe that Vim &lt;a href=&quot;http://rails.vim.tpope.net/&quot;&gt;does everything I want&lt;/a&gt; anyway. 

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>No more tag soup</title>
   <link href="http://atomicules.co.uk/2006/09/14/No-more-tag-soup.html"/>
   <updated>2006-09-14T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/09/14/No-more-tag-soup</id>
   <content type="html">
		
				 &lt;p&gt;This site should now be served properly as application/xhtml+xml and not

 as text/html. Since I'm now on a proper webhost I have no excuse to do

 otherwise anymore. I've given up trying to get it to work in Internet

Explorer as well. I've tried all kinds of mod_rewrite stuff and none

works. Still, there is no excuse to be using it anymore.&lt;/p&gt;

&lt;p&gt;I should be moving over to Lighttpd soon so perhaps I'll try again

there.Oh well, keeps me entertained.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Moved</title>
   <link href="http://atomicules.co.uk/2006/09/08/Moved.html"/>
   <updated>2006-09-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/09/08/Moved</id>
   <content type="html">
		
				 &lt;p&gt;This site is now hosted by &lt;a href=&quot;http://www.ocssolutions.com&quot;&gt;OCS Solutions&lt;/a&gt;. Bye bye dotmac&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Nearly moved</title>
   <link href="http://atomicules.co.uk/2006/09/04/Nearly-moved.html"/>
   <updated>2006-09-04T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/09/04/Nearly-moved</id>
   <content type="html">
		
				 &lt;p&gt;I've updated my i5m domain so it points to my newhost, but I had a couple of days where my site was just pointing to their server page instead of my site directory there. All is well and good now. However, the first step has been to redirect it straight back over to dotmac for the time being while I can rebuild my site for the new host and sort a load of other stuff out.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Moving servers</title>
   <link href="http://atomicules.co.uk/2006/08/31/Moving-servers.html"/>
   <updated>2006-08-31T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/31/Moving-servers</id>
   <content type="html">
		
				 &lt;p&gt;I've taken the leap and I'm ditching dotmac for a proper webhost and saving a bit of cash to boot! The homepage.mac.com address will no longer be valid after 13-Oct-2006. Just use the proper &lt;a href=&quot;http://www.i5m.me.uk&quot;&gt;www.i5m.me.uk&lt;/a&gt; one which should ultimately always get to the right place&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Things I thought I'd done</title>
   <link href="http://atomicules.co.uk/2006/08/30/Things-I-thought-I%26apos%3Bd-done.html"/>
   <updated>2006-08-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/30/Things-I-thought-I&apos;d-done</id>
   <content type="html">
		
				 &lt;p&gt;It's so annoying to say &lt;a href=&quot;/site/2006/08/25/Opening-doors-behind-the-scenes/&quot;&gt;you've done a load of changes&lt;/a&gt; only to find out they aren't all there. For some reason I failed to commit my changes to my subversion repository (still learning) and had instead stopped my Google site search from working altogether, instead of making it more accessible. Fingers crossed I got it right this time&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Further hosting possibilities</title>
   <link href="http://atomicules.co.uk/2006/08/30/Further-hosting-possibilities.html"/>
   <updated>2006-08-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/30/Further-hosting-possibilities</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://hosting.media72.co.uk/&quot;&gt;Media72&lt;/a&gt; are a very impressive, new (to hosting) UK based (although not servers at the mo') company. I'd go with them for the RoR support, but they don't have Webdav access. Yet. However, &lt;a href=&quot;http://www.ocssolutions.com/virtual-hosting.php&quot;&gt;OCS Solutions&lt;/a&gt; seem top notch in everything they offer, so I think I'm off there for the time being. Just a few queries to go before I make the leap, although I'm not doing any yearly plan things again.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>FCE fxscripts by Piero</title>
   <link href="http://atomicules.co.uk/2006/08/30/FCE-fxscripts-by-Piero.html"/>
   <updated>2006-08-30T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/30/FCE-fxscripts-by-Piero</id>
   <content type="html">
		
				 &lt;p&gt;Piero Fiorani now has his own site up. Head over there for the &lt;a href=&quot;http://web.mac.com/piero.fiorani/iWeb/PieroF%20FCE%20Effect/&quot; &gt;latest and greatest fxscripts for Final Cut Express&lt;/a&gt;. Everything posted and hosted here shall remain for reference, but since I'm no longer using FCE (sob, sob) and thus no longer working with fxscript I can't support or continue to develop anything I've done. I shall leave everything in Piero's capable hands.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Well what was the point in that then?</title>
   <link href="http://atomicules.co.uk/2006/08/29/Well-What-Was-The-Point-in-that-then.html"/>
   <updated>2006-08-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/29/Well-What-Was-The-Point-in-that-then</id>
   <content type="html">
		
				 &lt;p&gt;

Articles like this: &lt;a href=&quot;http://alistapart.com/articles/tohellwithwcag2/&quot; &gt; To Hell with WCAG 2&lt;/a&gt; and this: &lt;a href=&quot;http://diveintomark.org/archives/2006/08/23/overton-window&quot; &gt;W3C and the Overton window&lt;/a&gt; (which is where I found the first link) scare me a bit. I get the impression that a lot of the Web Standard gurus are leaving the &lt;a href=&quot;http://www.w3.org&quot; &gt;W3C&lt;/a&gt; after disagreements, etc and there seem to be emerging 'competitors' to W3C such as &lt;a href=&quot;http://microformats.org/&quot; &gt;Microformats&lt;/a&gt; as a result.&lt;/p&gt;

&lt;p&gt;But where does this leave the plebs like me, who don't understand the finer points that people are disagreeing on, or indeed care to understand those disagreements, but would at least like to do their little bit in trying to produce a site to some kind of standard?

&lt;/p&gt;

&lt;p&gt;Are we just screwed? If the big guns aren't behind a standard, then to me it's no longer a standard (or even a recommendation, which is what it really is anyway). Who are we to look to or follow? Personally, I'd prefer it if people didn't abandon things over disagreements, but instead stick at it and get it right at the next revision, etc. Perhaps these folk are a little to use to the Open Source lifestyle where at first sign of disagreement it seems you fork off (f**k off!) into your own thing. That's great for creativity and choice, but shite for standards where you don't want as much choice (leads to confusion and mistakes) or creativity (tried and tested wins the game).&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Opening doors behind the scenes</title>
   <link href="http://atomicules.co.uk/2006/08/25/Opening-doors-behind-the-scenes.html"/>
   <updated>2006-08-25T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/08/25/Opening-doors-behind-the-scenes</id>
   <content type="html">
		
				 &lt;p&gt;A long, long time ago I once validated my website (the old one) on &lt;a href=&quot;http://en.wikipedia.org/wiki/Bobby_%28software%29&quot;&gt;what was the Bobby website&lt;/a&gt;. Even though at the time my site was valid XHTML I was presented with a whole slew of errors and that was the end of that. I thought, &quot;Hell, no one reads it anyway, there's no need for accessibility&quot;. &lt;/p&gt;



&lt;p&gt;Recently, It's been niggling me again and I thought I'd take a look to see how far off I was. The Bobby website has now change and is called &lt;a href=&quot;http://webxact.watchfire.com/&quot;&gt;Watchfire WebXACT&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;As it turned out there wasn't too much to change. It only failed to pass Priority 2 and 3 automatic checks requiring the following:

&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;The javascript event handlers for the comments had to be changed so they didn't rely on a mouse&lt;/li&gt;

&lt;li&gt;I had to associate form controls with labels on the search form I have&lt;/li&gt;

&lt;li&gt;I had to create link phrases that make sense&lt;/li&gt;

&lt;li&gt;I had to make sure I didn't use the same link phrase on a page&lt;/li&gt;

&lt;li&gt;Include default place holding characters in the search box&lt;/li&gt;

&lt;li&gt;Separate adjacent links with more than whitespace&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;It turns out if I'd not bothered with comments things would have been better to start with - I wouldn't have the javascript to worry about for starters. As it was I had to add an onkeypress equivalent to the mouse one. The form controls one was the oddest since I'd never played with forms before and so just wasn't familiar with the elements. Creating link phrases that make sense and making sure I didn't use the same link phrase was a biggy: For example on any page I have the &quot;Permanent Link&quot; and &quot;Comment&quot; links used multiple times. I had to alter my Nanoblogger templates so these actually read &quot;Permanent Link to e2006-08-01T21_59_02.txt&quot; and &quot;Comment on e2006-08-01T21_59_02.txt&quot;. Using the post ID was the only way I could guarantee not having the same link text on a page - using the post title didn't guarantee this. Unfortunately the links, although now satisfying the link phrase requirements, were ugly to look at so I used CSS to hide those bits for visual readers - which gets me past the automatic accessibility checks it seems, but I'm not really sure how correct that really is. The separating adjacent links thing only applied to one link I have that's hidden normally - it's there for non CSS browsers to skip to the navigation.&lt;/p&gt;



&lt;p&gt;Unfortunately, In doing the accessibility changes I decided it was high time I started using a revision control system when modifying my web templates, etc, and so decided to learn and figure out &lt;a href=&quot;http://subversion.tigris.org/&quot;&gt;Subversion&lt;/a&gt;. That took me a bit of time, as things do nowadays, which is why it's taken until now for this post&lt;/p&gt;



&lt;p&gt;So my site (or most of it) now passes Priority 1, 2 and 2 automatic checkpoints. There are some warnings on the manual checkpoints, but I figure I'm off to a good enough start for now.&lt;/p&gt;



&lt;p&gt;Oh, still to do are defining some access keys, although I've started with them; The basics are there: &lt;strong&gt;F&lt;/strong&gt;resh, &lt;strong&gt;S&lt;/strong&gt;tale, &lt;strong&gt;Q&lt;/strong&gt;uery. Although I can only do what I can in the confines of Nanoblogger - I've already tweaked bits of the code, I don't want to do too much more because maintaining it gets tricky then.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Nanoblogger and Haloscan</title>
   <link href="http://atomicules.co.uk/2006/07/18/Nanoblogger-and-Haloscan.html"/>
   <updated>2006-07-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/07/18/Nanoblogger-and-Haloscan</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://www.haloscan.com&quot; &gt;Haloscan's&lt;/a&gt; default setup for including comments is to use a javascript command in the href attribute, ie:&lt;/p&gt;

&lt;blockquote&gt;

&lt;p&gt;

&amp;lt;a href=&quot;javascript:HaloScan('Name');&quot; &amp;gt;

&lt;/p&gt;

&lt;/blockquote&gt;

&lt;p&gt;However, this is &lt;a href=&quot;http://www.bbc.co.uk/guidelines/newmedia/technical/javascript.shtml&quot;&gt;a bit naughty and not nice&lt;/a&gt;. It is better to include a real link in the href attribute and put javascript in an onClick attribute. That in itself is easy to do, but the problem I had with Nanoblogger was that I was using the post ID (NB_EntryID) as the Haloscan comment name since it would be unique for all posts. This is in the format &quot;e2006-07-17T22_10_04.txt&quot;, but Haloscan reformats this on the fly to &quot;e2006_07_17T22_10_04_txt&quot;, which is all well and good, but if I'm not using javascript in the href attribute it means I need to reformat the NB_EntryID upfront.&lt;/p&gt;

&lt;p&gt;This had me puzzled for a bit, but Nanoblogger, being the cool thing that it is allows you to use Bash commands directly in the blog template files, which means I could put: &lt;/p&gt;

&lt;blockquote&gt;

&lt;p&gt;

href=&quot;http://www.haloscan.com/comments/i5m/`echo &quot;$NB_EntryID&quot; |sed -e 's/[^0-9eTtx]/_/g'`&quot;

&lt;/p&gt;

&lt;/blockquote&gt;

&lt;p&gt;Which is just pretty cool. The bits between ` and ` get executed. I've not used sed before, but have used awk and regexp, etc, very briefly: the &quot;s&quot; stands for substitute, the [^0-9eTtx] matches any character that isn't a number, letter e, T, t or x. The underscore, &quot;_&quot; is what to replace the matches with and the &quot;g&quot; means replace all occurences.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>RadRails and Rake</title>
   <link href="http://atomicules.co.uk/2006/07/09/RadRails-and-Rake.html"/>
   <updated>2006-07-09T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/07/09/RadRails-and-Rake</id>
   <content type="html">
		
				 &lt;p&gt;To fill in all the times at work when I should be doing engineering, but find it too boring I've been playing with RubyOnRails. Problems I've found on Windows:&lt;/p&gt;



&lt;ol&gt;

&lt;li&gt;MySQL, would start via TCP/IP and I really think this is needed for rails. Found no one that has managed to get RoR running via named pipes. The solution here? Simple. restart. When restarted Mysql started all nicely. Bizarre. &lt;/li&gt;



&lt;li&gt;Rake migrate can't be issued in RadRails. So &lt;a href=&quot;http://www.rubyonrailsforum.com/rails-code-questions/122-before-updating-scaffolding-new-db-schema-try-creating-table-your-model-2.html&quot;&gt;it won't create a table&lt;/a&gt;, won't provide any feedback that is hasn't worked. Either do via command prompt or configure external application:

&lt;ul&gt;



&lt;li&gt;location: C:\ruby\bin\rake.cmd&lt;/li&gt;

&lt;li&gt;working directory: ${project_loc}&lt;/li&gt;

&lt;li&gt;arguements: ${string_prompt}&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ol&gt;



&lt;p&gt;Works lovely&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>...and comments</title>
   <link href="http://atomicules.co.uk/2006/06/29/...and-comments.html"/>
   <updated>2006-06-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/06/29/...and-comments</id>
   <content type="html">
		
				 &lt;p&gt;Freebie comments via Haloscan now available so you can all comment how great I am. Or if you are my wife you can finally write how crap I am. I'm leaving them unmoderated until spam gets silly (I'll give it a day). Hopefully (just) fixed comment numbers as well. [EDIT: Fri Jun 30 21:20:21 BST 2006] Really have fixed comment counts&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Search my site</title>
   <link href="http://atomicules.co.uk/2006/06/28/Search-my-site.html"/>
   <updated>2006-06-28T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/06/28/Search-my-site</id>
   <content type="html">
		
				 &lt;p&gt;If you can find out how, you can now find. Stuff on my site, that is (courtesy of Google). It's not too sneaky, but I thought I'd put it out of the way. Also I've set max and min widths which I may or might not keep, I'm not too sure how much I agree with them.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Ruby Rocks</title>
   <link href="http://atomicules.co.uk/2006/06/23/Ruby-Rocks.html"/>
   <updated>2006-06-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/06/23/Ruby-Rocks</id>
   <content type="html">
		
				 &lt;p&gt;I'm not really sure what first got me interested in Ruby. Probably just reading about Ruby on Rails somewhere. I know &lt;a href=&quot;/code/2005/12/07/Image-Galleries/&quot;&gt;I mentioned it here&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;What I do know its that I Love Ruby. It's great. It rocks my world.&lt;/p&gt;



&lt;p&gt;Not being a programmer has certain advantages when it comes to programming. It means all languages are the same to me in that I just need to know that languages way of inputting and outputting, setting variables and doing some loops. It means I don't know how these things should be done. I don't know what is good or bad in a language. I don't really know or care what OOP is. I just know whats easy to use. And ruby is really easy to use (How's &lt;em&gt;if FileTest.exists?(filepath_pt)&lt;/em&gt; for easy, you can almost guess the commands). Plus &lt;a href=&quot;http://poignantguide.net/ruby/&quot;&gt;incredibly fun&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;I've managed to write such incredibly beautiful programs as this:&lt;/p&gt;

&lt;a href=&quot;/images/findnearestnode_big.png&quot;&gt;&lt;img class=&quot;right&quot; src=&quot;/images/findnearestnode.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;



&lt;p&gt;OK it looks rubbish, but it works and it was very easy to do. Since only windows users here are likely to use it the looks aren't important - they are used to rubbish GUIs. RubyTk is very easy to use and has the benefit of being completely cross platform so I can easily do stuff at home as well.&lt;/p&gt;



&lt;p&gt;I understand there are big arguements for and against certain languages, but I think this guy understands why Ruby is successful and taking off. It's because &lt;a href=&quot;http://www.cabochon.com/~stevey/blog-rants/anti-anti-hype.html&quot;&gt;it's cool&lt;/a&gt;. I gather from reading that, as an engineer I should probably be using Python (although I say Octave for pure maths), but I'm not the typical grey engineer (hence all my difficulties with engineering) so I find it amusing that ended up using Ruby without knowing any of that.&lt;/p&gt;



&lt;p&gt;I'm glad I've managed to do something fun at work, that also has a legit use (searching millions and millions of lines of Ansys files). If only I could do that every day.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>No more Final Cut Express for me</title>
   <link href="http://atomicules.co.uk/2006/06/22/No-more-Final-Cut-Express-for-me.html"/>
   <updated>2006-06-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/06/22/No-more-Final-Cut-Express-for-me</id>
   <content type="html">
		
				 &lt;p&gt;I was hoping to make a post of this title this year when Apple mentioned their &lt;a href=&quot;http://www.apple.com/uk/universal/crossgrade/&quot;&gt;amazing deal for going from Motion 2 to FCS&lt;/a&gt;. However, it didn't quite work out as planned:&lt;/p&gt;



&lt;p&gt;The fact that my machine has been out of action for editing (still no battery, still no internal hard drive or optical drive) for about 7 months and with no sign in site of me having the cash to mend it made me realise that video editing is a hobby I can't afford. So reluctantly I've sold them both.&lt;/p&gt;



&lt;p&gt;This of course means no more fxscript development by me, but I'm sure Piero will handle whatever updates are required. Feel free to get in touch (contact) still and I can put you in touch with Piero or post a message at the &lt;a href=&quot;http://discussions.apple.com/forum.jspa?forumID=936&quot;&gt;Final Cut Express Apple Discussion forum&lt;/a&gt; and I'm sure he'll pick up on it there.&lt;/p&gt;



&lt;p&gt;If I ever get my machine up and running, I'm going to be looking into using &lt;a href=&quot;http://www.jahshaka.org&quot;&gt;Jahshaka&lt;/a&gt;.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Is OSX the path to or from Linux?</title>
   <link href="http://atomicules.co.uk/2006/06/22/Is-OSX-the-Path-to-or-from-Linux.html"/>
   <updated>2006-06-22T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2006/06/22/Is-OSX-the-Path-to-or-from-Linux</id>
   <content type="html">
		
				 &lt;p&gt;I've read these posts with great interest about &lt;a href=&quot;http://diveintomark.org/archives/2006/06/02/when-the-bough-breaks&quot;&gt;why someone would choose to move to Linux from OSX&lt;/a&gt; and &lt;a href=&quot;http://daringfireball.net/2006/06/and_oranges&quot;&gt;why this is unusual and might be a bad idea&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;When I left University (wow - six years ago!) I could finally justify buying a personal computer. Up until then I couldn't. I know most students do have them, but since most of our work was team based and involved using big expensive software such as Pro/E and Adams we needed to be in Uni anyway. I'd had experience on a mix of operating systems (including Windows, Solaris and VMS) and knew that Windows wasn't for me. I liked the look of BeOS, but it seemed to be dying and Linux looked like a great idea, but too difficult for me (no Ubuntu then). Luckily Apple had announced the Public Beta of OSX so I went with a mac, and the rest is history.&lt;/p&gt;



&lt;p&gt;OSX has been a fantastic learning tool for me. The power of unix, but easy to use (and nice looking to boot). It's enabled me to go from knowing nowt to being quite a geek, but hasn't forced me to do that all in one go. And the more I've learnt the more I've become aware of the Open Source community and what it stands for (as well as the great apps). Plus, the more prone I've become to tinkering, so much so that OSX rarely 'just works' for me as I almost always want to tweak things or find a better way of doing it. So I'm wondering if I will eventually move to Linux because if I want to tinker that's the place to be and it fits better with how I feel about sharing information and knowledge.&lt;/p&gt;



&lt;p&gt;But then it's hard to judge what I'd miss without having tried any unix distribution. A lot of apps are replaceable and I guess most of the issues would be hardware related (where Apple and OSX are really good) such as sleeping on laptops, WiFi and Bluetooth (not that they don't work, but they might not work as well as I'm used to). However, there are a few apps that I think would be irreplaceable:&lt;/p&gt;



&lt;ul&gt;

&lt;li&gt;&lt;a href=&quot;http://www.redlers.com/mellel.html&quot;&gt;Mellel&lt;/a&gt;. Ok there are word processors, but Mellel is the only one I know of that supports style Sets. And Style sets rule. I could achieve similar (I think) with LaTex, or XHTML and CSS, etc, but there is also a reason why word processors exist over a red pen, blue pen and a piece of paper.&lt;/li&gt;



&lt;li&gt;&lt;a href=&quot;http://www.iwascoding.com/GarageSale/&quot;&gt;GarageSale&lt;/a&gt;. Nowt comparable on Linux for managing ebay auctions. Of course if I was rich then I wouldn't be selling anything on ebay, but then I also wouldn't care (as much) about using Linux&lt;/li&gt;



&lt;li&gt;&lt;a href=&quot;http://www.apple.com/macosx/features/applescript/&quot;&gt;Applescript&lt;/a&gt; and &lt;a href=&quot;http://www.apple.com/macosx/features/automator/&quot;&gt;Automator&lt;/a&gt;. Being able to script applications with one language is great. &lt;a href=&quot;http://www.kryogenix.org/days/2006/04/17/scripting-linux-desktop-applications&quot;&gt;Doesn't seem as if there is anythign as easy on Linux&lt;/a&gt; &lt;/li&gt;

&lt;/ul&gt;





&lt;p&gt;So that's it. Not many and none that really, really, prevent me from going.&lt;/p&gt;



&lt;p&gt;I wonder if moving to Linux, etc from OSX is a more natural step then going from Linux to OSX? Isn't this a more fitting progression? For example: I started editing movies on iMovie. That was great, it worked, it got me hooked and interested and learning. Then you learn the limitations and you want more so I moved to Final Cut Express and had I had the money I'm sure I would have kept going upwards. You generally move from easy to use to more powerful the more you learn.&lt;/p&gt;



&lt;p&gt;I guess the arguement is that OSX &lt;em&gt;is&lt;/em&gt; as every bit as powerful as Linux, it just happens to be easier to use as well.&lt;/p&gt;



&lt;p&gt;Perhaps it's education driven, i.e. to learn more OR as you become more aware of software development philosophies.&lt;/p&gt;



&lt;p&gt;Or is it snobbery? Why do people buy coffee beans and grind them and brew coffee rather than buy Nescafe instant? Let's neglect taste for now (that's personal preference, the nice GUI, but not the reason - in this analogy at least), the reason people do it is because they like doing it. There's a certain sense of achievement and satisfaction from doing something the hard way. You have that sense that you've achieved more than the majority have. Maybe moving to linux is the next step because you've had the ease of instant unix, but you want to learn more about the process behind coffee making.&lt;/p&gt;



&lt;p&gt;Or perhaps moving from OSX to linux could be compared to having coffee at Starbucks (and feeling all smug over the Nescafe instant users) and then realising and learning that perhaps there is further yet to go and there are &lt;a href=&quot;http://www.globalexchange.org/campaigns/fairtrade/coffee/starbucks.html&quot;&gt;fairer alternatives&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;I'm not sure, but I do feel that OSX is in the middle. It's the comfortable middle ground and that when you've learnt enough and are mature enough the respectable and decent thing to do is to step &lt;em&gt;up&lt;/em&gt; to Linux.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Piero Shapes Filter/Generator</title>
   <link href="http://atomicules.co.uk/2006/03/28/Piero-Shapes-Filter-Generator.html"/>
   <updated>2006-03-28T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/03/28/Piero-Shapes-Filter-Generator</id>
   <content type="html">
		
				 &lt;p&gt;&lt;strong&gt;[EDIT: 2011-03-24 - See &lt;a href=&quot;http://web.mac.com/piero.fiorani/PieroF_FCE_Effect/Frames.html&quot;&gt;Piero's website&lt;/a&gt; for this filter]&lt;/strong&gt;&lt;/p&gt;


&lt;p&gt;A new filter from Piero (all his handiwork). The notes he sent me with the original release are included below.

&lt;/p&gt;









&lt;blockquote&gt;

&lt;p&gt;Hi i5m,&lt;/p&gt;

&lt;p&gt;as probably you read in the FCE discussion, after a bad experience with import of .psd images into FCE I decided to use what I learned in the past adding features to your fxscripts, to write my own filter to build simple shapes like rectangle, square, circle and oval.&lt;/p&gt;



&lt;p&gt;Attached you can find this filter so you can use it, test it, modify it etc. as you like.

And if you like you can make it available to anybody in your site.&lt;/p&gt;

&lt;p&gt;Some technicalities:&lt;/p&gt;

&lt;ol&gt;

&lt;li&gt;

using it is quite simple (I guess) - no special instructions

&lt;/li&gt;

&lt;li&gt;

limitation: tested only for PAL, but probably works for NTSC as well

&lt;/li&gt;

&lt;li&gt;

you can find some description in the comments

&lt;/li&gt;

&lt;li&gt;

something I tried but I wasn't able to fix:

&lt;ol&gt;



&lt;li&gt;make it a generator - I always got FXScript error when loading my new generator - since I made just a single change of the first statement from &quot;filter&quot; to &quot;generator&quot; I don't know what else to do...&lt;/li&gt;

&lt;li&gt;make it work correctly with imported pictures with size different from 768x576&lt;/li&gt;

&lt;li&gt;make some general purpose &quot;debugging&quot; functions (On () end) of the type: debugOpen, debugWrite, debugClose where debugWrite builds a string of 1 or more items like &quot;Label=value&quot; - to monitor the internal variables

&lt;ol&gt;

&lt;li&gt;

I found out no global variables are allowed: those declared outside the &quot;ON () end&quot; statement are NOT available inside

&lt;/li&gt;

&lt;li&gt;

that forces to use more parameters in parenthesis when calling the procedure

&lt;/li&gt;

&lt;li&gt;

then I got stuck with parameter passing, probably some issue about strings passed as value

&lt;/li&gt;

&lt;li&gt;

I gave up (more to learn in the future)

&lt;/li&gt;

&lt;/ol&gt;

&lt;/li&gt;

&lt;/ol&gt;

&lt;/li&gt;

&lt;li&gt;

Given the above problem my testing statements are just an unstructured sequence of instructions to write values - these instructions are commented in the current version to avoid debugging output during production work.



&lt;/li&gt;



&lt;/ol&gt;





&lt;p&gt;Have fun...&lt;/p&gt;

&lt;p&gt;And let me know your comments and suggestions!&lt;/p&gt;

&lt;p&gt;Thanks and ciao&lt;/p&gt;

&lt;p&gt;Piero&lt;/p&gt;

&lt;/blockquote&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Love of BBEdit, RegExp and Octave</title>
   <link href="http://atomicules.co.uk/2006/03/08/Love-of-BBEdit%2C-RegExp-and-Octave.html"/>
   <updated>2006-03-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/03/08/Love-of-BBEdit,-RegExp-and-Octave</id>
   <content type="html">
		
				 &lt;p&gt;Been a busy, busy bee. And (SHOCK HORROR!) I've actually been busy doing work stuff. Following on from that other annoying incident at work I've been re-visiting my Ansys data.&lt;/p&gt;

&lt;p class=&quot;interlude&quot;&gt;Engineering Interlude: In validating the analysis I looked at the raw output files so I could check for stress discontinuity at the nodes (the same corner node will exist in more than one element and thus there will be more than one stress value at that node). This was a Royal Pain in the Butt since there are about 3000000 lines of text to search through. Before I clued myself up I was using Notepad on Windows which meant I could only be arsed to check one node point on the path of interest&lt;/p&gt;

&lt;p&gt;Before I charged down the route of telling my colleagues to &quot;Naff off! I've spent ages explaining why this analysis is invalid and now you want me to just give the results anyway?!!&quot; I thought I would do a bit more checking of stress discontinuity, etc. I decided to develop a clue and starting learning regular expression searching for a quicker way of finding the single line I was interested in from 3000000. So it's been great. What better way of doing regular expression searches than on &lt;a href=&quot;http://www.barebones.com&quot;&gt;BBEdit&lt;/a&gt; on my mac? So I've had a fun couple of weeks using my mac at work legitimately for a change. I've also been able to relearn &lt;a href=&quot;http://www.octave.org&quot;&gt;Octave&lt;/a&gt; (so lovely) and use that to help process the Ansys Raw Output stuff. Now I've finished on my mac I can transfer the techniques across to Windows at work using &lt;a href=&quot;http://www.cygwin.com&quot;&gt;Cygwin&lt;/a&gt; (for the other unfortunate souls). I've been very at home doing this kind of thing, if only there was more of it in my job.&lt;/p&gt; 


			
   </content>
 </entry>
 
 <entry>
   <title>EBay vs .Mac Bandwidth. .Mac loses.</title>
   <link href="http://atomicules.co.uk/2006/02/24/EBay-vs-.Mac-Bandwidth.-.Mac-loses.html"/>
   <updated>2006-02-24T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/24/EBay-vs-.Mac-Bandwidth.-.Mac-loses</id>
   <content type="html">
		
				 &lt;p&gt;I've just checked my dotmac bandwidth usage to find that my site was probably down (I don't know; I didn't check) on the 13th, 14th and 15th of this month. I've amazingly shot up to over 10GB of files a month. I know I have a few large files on the fieldlife site, but I can't believe that many people have been downloading it. Therefore it must be the images I hosted for 29 ebay auctions I had running. Checking back I had a total of 29MB of images for my Auctions which means I could shift approx. 3GB with just 100 views of each auction. Ooops. Silly me. Think I'll have to see if I can optimise those images a bit better next time or just not run so many auctions at once. Anyway, if my site disappears you now know why. Check back on the 1st or 16th of the month as that's when my bandwidth gets reset.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Camino 1.0</title>
   <link href="http://atomicules.co.uk/2006/02/14/Camino-1.0.html"/>
   <updated>2006-02-14T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/14/Camino-1.0</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://www.caminobrowser.org&quot;&gt;

&lt;img class=&quot;left&quot; alt=&quot;I Love Camino!&quot; title=&quot;I Love Camino!&quot; src=&quot;/images/60x60_1.png&quot; /&gt;&lt;/a&gt;

My favourite mac browser out there got to it's 1.0 release today. It's great. It's gorgeous. Give it to someone for Valentines&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>XHTML1.1 as text/html</title>
   <link href="http://atomicules.co.uk/2006/02/10/XHTML1.1-as-text_html.html"/>
   <updated>2006-02-10T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/10/XHTML1.1-as-text_html</id>
   <content type="html">
		
				 &lt;p&gt;I know I'm &lt;a href=&quot;http://www.xml.com/pub/a/2003/03/19/dive-into-xml.html&quot;&gt;not supposed to serve XHTML1.1 as text/html&lt;/a&gt;, but since this is hosted on &lt;a href=&quot;http://www.mac.com&quot;&gt;.mac&lt;/a&gt; there is nothing I can do about it. Plus the W3 recommendation only says &quot;Should&quot; and I'm not about to republish everything as XHTML1.0 . Also since I host my site locally on Apache I know that it doesn't break when served as application/xhtml+xml. I know because I've checked. It looks exactly the same. Although I do wish I could configure my Apache to do this properly. The only way I can get it to do it is if I use the .xhtml extension. All the other hints, such as the mod_rewrite one linked above, give me errors. Must be something weird with Apache on OSX.&lt;/p&gt;

&lt;p&gt;The other bonus (I guess) is that since .mac serves it as text/html it means IE users can see it.&lt;/p&gt;

&lt;p&gt;So there you go, that's my excuse&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Cleaner stuff my end</title>
   <link href="http://atomicules.co.uk/2006/02/08/Cleaner-stuff-my-end.html"/>
   <updated>2006-02-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/08/Cleaner-stuff-my-end</id>
   <content type="html">
		
				 &lt;p&gt;Pretty much since I've had this site back up I've had two copies of the thing locally. This is obviously well redundant, but was driven by me wanting to use BBEDIT's Site Syntax Checker. If I'd just run it through my Nanoblogger directory it would be checking a load of folders I don' want it to (i.e. metadata files, databases, caches, etc used to generate the blog) and would generate a shed load of errors. So instead I synced a local copy of just the blog so I could check it all easily and also upload more easily.&lt;/p&gt;

&lt;p&gt;BBEDIT does offer a tool for skipping certain directories when checking Site Syntax, but these directories have to be enclosed in brackets/parentheses. I finally figured out how to alter Nanoblogger enough (config.sh - wasn't that hard, I just hadn't had time to look) so that I could do this. So now it's all a lot neater my end with just one copy of my site.&lt;/p&gt;

&lt;p&gt;Then I just altered my upload command: &lt;/p&gt;

&lt;p&gt;find . -newer .lastupload \! \( -name &quot;.*&quot; -or -path &quot;*(*&quot; -or -name &quot;blog.conf&quot; \) -type f -print | cpio -pdumv /Volumes/myidisk&lt;br /&gt;

touch .lastupload&lt;/p&gt;

&lt;p&gt;Lovely&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Sometimes at work I do work (kind of)</title>
   <link href="http://atomicules.co.uk/2006/02/01/Sometimes-at-work-I-do-work-%28kind-of%29.html"/>
   <updated>2006-02-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/01/Sometimes-at-work-I-do-work-(kind-of)</id>
   <content type="html">
		
				 &lt;p&gt;I've been fiddling with VBA. it isn't nice, but is pretty easy to use. We use Autodesk: Inventor at work. It's a pretty cruddy 3D MCAD package, but WAY better than Autodesk: AutoCAD. In an effort to make life more interesting I thought I'd have a go at writing some macros in VBA. So far I've managed to produce two things:&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;&lt;a href=&quot;http://discussion.autodesk.com/thread.jspa?threadID=449931&quot;&gt;Calculating the mass of visible items only&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://discussion.autodesk.com/thread.jspa?threadID=452211&quot;&gt;Plotting views 1:1&lt;/a&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Both of these macros overcome some of the major short comings from Inventor, that any application at rev 10 shouldn't have.&lt;/p&gt;

&lt;p&gt;As you can see the response from the Inventor Community is as great as the response I received at work (&quot;Get on with what you are meant to be doing!&quot;)&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Puzzle TV</title>
   <link href="http://atomicules.co.uk/2006/02/01/Puzzle-TV.html"/>
   <updated>2006-02-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/01/Puzzle-TV</id>
   <content type="html">
		
				 &lt;p&gt;If I had any talent in skating, filming or editing this is what I would be doing. Check these guys out in the iTunes Podcast directory. Excellent skating, quality editing, good music all for free. Full vids available for download from their site: &lt;a href=&quot;http://www.puzzlevideo.com&quot;&gt;www.puzzlevideo.com&lt;/a&gt;&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Nanoblogger Updates</title>
   <link href="http://atomicules.co.uk/2006/02/01/Nanoblogger-Updates.html"/>
   <updated>2006-02-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/02/01/Nanoblogger-Updates</id>
   <content type="html">
		
				 &lt;p&gt;Oooh, now on &lt;a href=&quot;http://nanoblogger.sourceforge.net/archives/2006/01/27/T19_09_06/index.html&quot; &gt;3.3 RC4&lt;/a&gt;. Which was a bit of a shocker since I've played about with some of the plugins to get formatting how I wanted and all of a sudden my Category archives only listed headlines and my archive list was blank.&lt;/p&gt;

&lt;p&gt;For anyone using NB who wants the full category entry type you'll notice it says &quot;IMPORTANT: Please edit category_entry.htm accordingly.&quot;, but doesn't tell you what to edit. Well it turns out it is as simple as setting the target for CATENTRY_TEMPLATE in nb.conf to the same as the ENTRY_TEMPLATE. &lt;/p&gt;

&lt;p&gt;As to getting the monthly list, use the masterfullindex.sh plugin instead of master_index.sh and then edit it so it only prints the month list. Ideally I should edit it so it doesn't bother processing the entry list and category list (since I'm not using it, it's a waste of time), butI haven't figured the code out enough yet to go cutting large chunks out of it&lt;/p&gt;

&lt;p&gt;First impressions: It does seem a lot faster. Might be a bug in deleting entries in that it doesn't update the category index, BUT that could well be me - I don' update it as the author recommends (due to my tweaks). Will investigate. UPDATE: Have investigated. It's something I've done as it works fine on a clean install. Oh arse, now what have I deleted that I shouldn't have?&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>PieroFi5m Timecode Display Filter v3.0 for FCE</title>
   <link href="http://atomicules.co.uk/2006/01/30/PieroFi5m-Timecode-Display-Filter-v3.0-for-FCE.html"/>
   <updated>2006-01-30T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/30/PieroFi5m-Timecode-Display-Filter-v3.0-for-FCE</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;/code/2005/11/29/FCE-Timecode-Display-Plugin/&quot;&gt;FCE Timecode Display Downloads&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Unbeknown to each other Piero and I were both working on a followup to this plugin. The main focus being able to display the start and end time codes of a clip as either the In/Out points or the clip Media limits.&lt;/p&gt;

&lt;p&gt;Piero, beat me there, added timecode handle displays (media before/afer in/out points) as well AND made the performance of the plugin a lot better to boot!&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Category Feeds Now Available</title>
   <link href="http://atomicules.co.uk/2006/01/16/Category-Feeds-Now-Available.html"/>
   <updated>2006-01-16T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/16/Category-Feeds-Now-Available</id>
   <content type="html">
		
				 &lt;p&gt;Don't applaud, it's not like it required any effort on my part, just flicking a switch in Nanoblogger. I wasn't going to bother with them because I thought &quot;Who the hell reads this crap anyway?&quot; and &quot;Of those people who will be using RSS and want to know when &lt;strong&gt;a&lt;/strong&gt; certain area of the site gets updated?&quot;&lt;/p&gt;

&lt;p&gt;However, someone found a broken link on my site and it occurred to me I hadn't checked through my links in a while. Lo and behold when I did I had hundreds of errors because I'd forgotten to edit out the category feed links from my templates. So I thought, rather than update my templates and then almost every page on this site I'd just turn on creation of the category feeds (and update almost every page on this site), after all what harm can it do?&lt;/p&gt;

&lt;p&gt;So, there you have it. If you want to ignore 99% of the drivel on this site you can now subscribe to just the sensible portions of the site (I'll leave you to decide what they are) and check back once a year&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Rounded Corners</title>
   <link href="http://atomicules.co.uk/2006/01/13/Rounded-Corners.html"/>
   <updated>2006-01-13T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/13/Rounded-Corners</id>
   <content type="html">
		
				 &lt;p&gt;Since I'm skint I'm afraid I can only afford to round two corners per box. Well, that and I can use the excuse that &quot;Actually, I wanted it to be that way&quot;&lt;/p&gt;

&lt;p&gt;I've been playing about. The best article I've found so far is this one: &lt;a href=&quot;http://www.howtocreate.co.uk/wrongWithIE/eightpointbox.html&quot;&gt;Fluid frame using before: and after:&lt;/a&gt; since I would like round corners, but I don't want to &lt;a href=&quot;http://www.alistapart.com/articles/customcorners/&quot;&gt;compromise my mark-up with loads of extra divs&lt;/a&gt; and I'm not clever enough to use &lt;a href=&quot;http://pro.html.it/esempio/nifty/&quot;&gt;javascript to create rounded corners&lt;/a&gt;. In theory I could round all corners using generated content (as per that first link), but it has issues with Gecko and since I at least want this to work in Gecko based browsers (I use &lt;a href=&quot;http://www.caminobrowser.org&quot;&gt;Camino&lt;/a&gt;) and KHTML ones I've opted for just the two corners. It should still be reasonable looking in IE as well (I think one corner will be rounded!)&lt;/p&gt;

&lt;p&gt;I'm quite happy with it. It looks alright. It's still a nice fluid layout.  I've had to lose the borders on boxes (no biggy) as I haven't figured out how to stop the square border on the round corner and it looks silly like that.&lt;/p&gt;

&lt;p&gt;Next I need some drop shadows or perhaps rounded borders. I think this will be really tricky without extra markup though&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Fieldlife on your Video iPod</title>
   <link href="http://atomicules.co.uk/2006/01/11/Fieldlife-on-your-Video-iPod.html"/>
   <updated>2006-01-11T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/11/Fieldlife-on-your-Video-iPod</id>
   <content type="html">
		
				 &lt;p&gt;One of the problems with hosting on .mac and using masked domains is that it's hard to be found by Google. Try searching for &quot;Huddersfield Fieldlife skateboarding&quot; and it won't find my &lt;a href=&quot;http://www.fieldlife.co.uk&quot; &gt;FIELDLIFE&lt;/a&gt; site.&lt;/p&gt;

&lt;p&gt;Anyway, in case people stumble upon it I've now made the entire video available for free (on afore mentioned site) in the iPod Video H.264 format. You could also play it on your computer with Quicktime Pro.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Cropping in Quicktime Pro</title>
   <link href="http://atomicules.co.uk/2006/01/11/Cropping-in-Quicktime-Pro.html"/>
   <updated>2006-01-11T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/11/Cropping-in-Quicktime-Pro</id>
   <content type="html">
		
				 &lt;p&gt;A limitation of FCE is that you are stuck with DV and HDV frame sizes. I.e. it isn't very good for Multimedia projects (It's also not good for this because of interlacing and framerate limitations). In FCP you can work with whatever sequence settings you want, say if you wanted to work with a 320x240 frame size for web delivery. You can always re-size your FCE DV-PAL sequence on export down to 320x240, but sometimes you want to import and export material at that size, such as a computer generated animation sequence, etc.&lt;/p&gt;



&lt;p&gt;One way of doing this is to import the 320x240 clip and re-size it in FCE to fill the PAL/NTSC frame. This can then be scaled down again on export. This could result in a significant loss of quality though.&lt;/p&gt;



&lt;p&gt;One possible solution is to work with a DV sequence. For this example PAL at 720x576 will be assumed. Asjust instructions as necessary for NTSC. Import the footage that is smaller say 320x240 and drag to the timeline so that FCE plonks it in the middle of the Canvas at it's original size. You will effectively have a big black border all around. I think FCE automatically adjusts the aspect ratio to suit rectangular pixels. This is good normally, but not what we want in this case. Double click on the clip in the sequence to open it in the Viewer. Reset the Distort section in the Motion tab. Next do whatever sequence edits you want and export at full DV frame size (default Quicktime Movie Export). This can then be cropped in Quicktime Pro back down to the desired size.&lt;/p&gt;



&lt;p&gt;To crop in Quicktime Pro you first need to create a mask. In an application such as &lt;a href=&quot;http://www.graphicconverter.net&quot;&gt;GraphicConvertor&lt;/a&gt; Create an image 720x576 pixels. Make it pure white. Put a black rectangle 320x240 in the middle. In GraphicConverter the easiest way to do this is to create a new image 320x240 and then paste into the original document using &quot;paste centered&quot;. Save it as a gif or pict.&lt;/p&gt;



&lt;p&gt;In Quicktime Pro go to Window &amp;gt; Show Movie Properties. Select the Video Track and the Visual Settings Tab. In the mask area select Choose... and pick the image file you saved. The movie should immediately resize. Save as a self contained movie or reference movie depending on what you want to do with it. Remember it's still in DV-PAL video codec which means it's interlaced, etc.&lt;/p&gt;



&lt;p&gt;Note: In trying this it wasn't resizing for me, that's because my timecode track was enabled in my Quicktime Movie Export. FCE uses need to be aware of this. Delete the timecode track or at least turn it off.&lt;/p&gt;



&lt;p&gt;Final Note: If working with computer animation, etc it maybe easier to work in the 720p30 format since it' progressive and has square pixels and saves all the grief of working out pixel aspect ratios. I think I've got it spot on above about not letting FCE adjust it, but I haven't checked extensively.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>View Images Actual Size - Applescript for GraphicConverter</title>
   <link href="http://atomicules.co.uk/2006/01/06/View-Images-Actual-Size---Applescript-for-GraphicConverter.html"/>
   <updated>2006-01-06T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/06/View-Images-Actual-Size---Applescript-for-GraphicConverter</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;https://gist.github.com/884911&quot;&gt;i5m-GraphicConverter_View_actual_size&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I really like Gimp since it allows you to set the Monitor Resolution that you are working on. OSX, etc assumes a screen resolution of 72 ppi when viewing images at Actual/Original size. More often than not this isn't the case. For instance on my 12&quot; powerbook the screen is 9.68&quot; x 7.26&quot;. At a resolution of 1024x768 pixels this gives: 1024 / 9.68 = 105.8 ppi. No where near the assumed 72 ppi.&lt;/p&gt;

&lt;p&gt;It can be really handy to have an image on screen at the actual size it will print. For me it was printing a picture the correct size to fit into a picture frame for a Doll's House (it's not my Doll's House, it's Mimi's; but I do play with it - I have to!). It was handy to hold the frame over my display and see that the image was going to come out the right size&lt;/p&gt;

&lt;p&gt;To me this seems pretty fundamental stuff and I'm surprised Apple don't include this scaling automatically. Since they control software and hardware it should be relatively easy to do, or at least include a system wide user defined option&lt;/p&gt;

&lt;p&gt;Anyway, next is figuring out a way to do the same in Preview.app&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Destructive editing in FCE</title>
   <link href="http://atomicules.co.uk/2006/01/05/Destructive-editing-in-FCE.html"/>
   <updated>2006-01-05T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2006/01/05/Destructive-editing-in-FCE</id>
   <content type="html">
		
				 &lt;p&gt;I thought I'd already covered this. Anyway, many folks moving from iMovie to FCE would like a way to destructively edit as per iMovie 4. Some of the reasons maybe that they haven't got time to to sit with the camera/tape deck and log all the footage (It's certainly quicker scrubbing through footage on a hard drive than it is on tape) and/or they'd prefer to do a straight long import to reduce wear and tear on the camera mechanism.&lt;/p&gt;

&lt;p&gt;The best way to destructively edit is to set your editor preference to Quicktime Pro in FCE. You can then right click on the captured media clip in the browser and select &quot;Open in Editor&quot;. This will open the actual media from your scratch disk in Quicktime Pro. Any edits made there will be destructive. I.e. trimming footage from the start or finish. You could even split clips up, etc, all retaining the timecode information making for safe re-capturing. Simple, but effective&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>iMovie DV Stream to Final Cut Express Media Convertor</title>
   <link href="http://atomicules.co.uk/2005/12/31/iMovie-DV-Stream-to-Final-Cut-Express-Media-Convertor.html"/>
   <updated>2005-12-31T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/31/iMovie-DV-Stream-to-Final-Cut-Express-Media-Convertor</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;https://gist.github.com/884926&quot;&gt;i5m_iMovie2FCE v0.9&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's an Applescript droplet that you can drag the iMovie DV stream media files onto and it'll run away and convert them. There's also a standalone version of the script if you want to run it from the script menu on individual files, etc. It's a 0.9 release since for ease of development in Applescript it doesn't include any error handling, etc. Also I've just realised it assumes 16 bit audio. Although I think you really should be working with this anyway. I'll sort this for a later version.&lt;/p&gt;

&lt;p&gt;Related to this post on &lt;a href=&quot;/art/2005/11/29/Importing-iMovie-Captures/&quot;&gt;how to manually convert iMovie captured media from the DV Stream format to a FCE compatible one&lt;/a&gt; and this thread, &lt;a href=&quot;http://discussions.apple.com/thread.jspa?threadID=213003&quot;&gt;&quot;Importing Files Captured in iMovie HD&quot; on Apple Discussions&lt;/a&gt; I've figured out how to automate the process with Applescript. I thought it would be a lot harder than it turned out to be, hence why I've only just got around to it. Next I'll have to figure out how to turn it into an Automator action. That would be cool and an excuse to look at Xcode. &lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Gimp Image slicing plugin for use with Motion 2</title>
   <link href="http://atomicules.co.uk/2005/12/29/Gimp-Image-slicing-plugin-for-use-with-Motion-2.html"/>
   <updated>2005-12-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/29/Gimp-Image-slicing-plugin-for-use-with-Motion-2</id>
   <content type="html">
		
				 &lt;p&gt;

Download: &lt;a href=&quot;https://gist.github.com/884938&quot;&gt;i5m-image-subdivide.zip

&lt;/a&gt;

&lt;/p&gt;



&lt;p&gt;

A very clever man called Patrick Sheffield posted on Apple Discussions a technique for doing &lt;a href=&quot;http://discussions.apple.com/message.jspa?messageID=1216525#1216525&quot;&gt;fun things with a photo in Motion&lt;/a&gt;. It required slicing the image up using Photoshop/Imageready. I wanted a way to do this with Gimp since I don't have Photoshop. There are lots of image slicing plugins for Gimp, but I took &lt;a href=&quot;http://registry.gimp.org/plugin?id=3565&quot;&gt;this one&lt;/a&gt; (since it is purely script-fu based; no other laguages required) and modified it slightly so that the tiles are numbered sequentially and not by row and column. 

&lt;/p&gt;



&lt;p&gt;

Just incase you've not used Gimp, here are some notes on getting it and using it for this technique in Motion:

&lt;/p&gt;



&lt;ol&gt;



&lt;li&gt;

Get &lt;a href=&quot;http://gimp-app.sourceforge.net&quot;&gt;Gimp.app&lt;/a&gt;. There are other ways, but this seems to most simple way to me

&lt;/li&gt;



&lt;li&gt;

Install the i5m-image-subdivide plugin.

&lt;br /&gt;



Unzip the downloaded file. To install this you need to place it in the Gimp user defaults folder. Unlike native Apple applications this is not found in ~/Library/Preferences but in common with a lot of *nix style apps in a hidden folder in your home directory. You will need to launch Gimp first in order to create this folder.

&lt;br /&gt;



Once you have done that, in the Finder you select &quot;Go &amp;gt; Go to folder&quot; or &quot;Command+Shift+G&quot; and type in &quot;~/.gimp-2.2&quot;

This simply opens the .gimp-2-2 folder in Finder. Normally any files or folders beginning with a period are hidden from the Finder.

&lt;br /&gt;



Place the i5m-image-subdivide.scm file in the scripts folder.

&lt;/li&gt;



&lt;li&gt;

Launch Gimp again. Open an image file. Select Script-Fu&amp;gt;i5m&amp;gt;Image subdivide. Running it is simple: You can select the image type and the number of rows and columns to split the image into. The file names are incremented automatically in the same directory as the image you've opened, i.e. the original file name is appended with each &quot;tile&quot; number. Therefore you may want to rename your image before you run this script to include a space at the end, or a dash, or underscore, etc. Unfortunately there are no user configurable options for the file naming or for setting the output location.

&lt;/li&gt;



&lt;li&gt;

In Patrick's technique he creates a Quicktime movie from an image sequence. I don't see the point in this step (could be my ignorance though). I would just skip straight to importing the image sequence into Motion. Then replicate this sequence using Tile Fill. Set Origin as Upper Left and Build Style to By Row. Adjust size to suit. To get the complete image go into the Inspector for the Replicator and set Source Frame Offset to 1. Uncheck Play Frames and you are good to go.

&lt;/li&gt;



&lt;/ol&gt;





&lt;p&gt;

This is the first time I've ever looked at the Gimp scripting language. I might eventually look at modifying the script so you can set filename suffixes and specify output locations. However, since this works ok as it is I'm not going to rush to it.

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Uploading the right stuff</title>
   <link href="http://atomicules.co.uk/2005/12/28/Uploading-the-right-stuff.html"/>
   <updated>2005-12-28T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/28/Uploading-the-right-stuff</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://nanoblogger.sf.net&quot;&gt;Nanoblogger&lt;/a&gt;, is great and all that for static and local publishing and it's pretty good at only updating the bits that need updating and not every single page on the site (100+ pages), but I've been stuck as to how to then efficiently upload the changes to my &lt;a href=&quot;http://www.mac.com&quot;&gt;iDisk&lt;/a&gt;. 

&lt;/p&gt;

&lt;p&gt;

It shouldn't have been a hard problem to solve since all I want is to copy all the files modified after the last upload. But, it's taken me a while to figure it out. 

&lt;/p&gt;

&lt;p&gt;I couldn't get &lt;a href=&quot;http://developer.apple.com/documentation/Darwin/Reference/ManPages/man1/rsync.1.html&quot;&gt;rsync&lt;/a&gt; to work even though &lt;a href=&quot;http://homepage.mac.com/barijaona/web/blosxom_dotmac.html&quot;&gt;others seemed to use it&lt;/a&gt;, it seemed to insist on copying everything, probably something to do with how the &lt;a href=&quot;http://www.decimus.net/forum/viewtopic.php?t=117&quot;&gt;iDisk fails to handle file dates properly&lt;/a&gt;, plus rsync will read from my iDisk which is damn slow over a bluetooth modem, I don't want it to check there for what needs updating I just want to copy what I know needs uploading. I tried things like &lt;a href=&quot;http://www.decimus.net/synk&quot;&gt;Synk&lt;/a&gt;, but that had the same problem as rsync. To slow: as it tries scanning it all on the receiving end. I definitely didn't want to use the built in idisk syncing, no way am I trying to sync that whole thing when I want to update a few pages. I was stumped. I knew it must be possible from the command line, but it wasn't immediately obvious since none of the copy commands: cp, ditto, etc support a &quot;Modified after date&quot; flag. &lt;a href=&quot;http://www.google.co.uk/search?q=unix+command+copy+files+modified+after+date&quot;&gt;I failed miserably to find anything via Google&lt;/a&gt;. Until I found &lt;a href=&quot;http://www.macosxhints.com/article.php?story=20051005204725280&quot;&gt;this on Macosxhints&lt;/a&gt;. That then set me straight. You have to use find and pipe the output into cpio. 

&lt;/p&gt;

&lt;p&gt;

Now all I need to do is sort out my local publishing a bit. At the moment I've got two local copies. The active one which is full of templates and raw data, etc and a clean one which I update containing only the files required for publishing. There is no real need for all this duplication, but it was a quick way to solve the problems of filtering stuff for upload and for site syntax/xhtml validation in &lt;a href=&quot;http://www.barebones.com/products/bbedit/featuresweb.shtml&quot;&gt;BBEdit&lt;/a&gt;.

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Loser</title>
   <link href="http://atomicules.co.uk/2005/12/21/Loser.html"/>
   <updated>2005-12-21T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/21/Loser</id>
   <content type="html">
		
				 &lt;p&gt;Oh well, didn't even even make the &lt;a href=&quot;http://www.bbc.co.uk/calc/radio1/competition_runner_up.shtml&quot;&gt;runners up in the BBC VJing competition&lt;/a&gt;. Haven't had time to check out those entries yet, but didn't think &lt;a href=&quot;/art/2005/12/01/BBC-Superstar-VJing-Competition&quot;&gt;mine was that bad&lt;/a&gt; compared to the winners. Luckily I wasn't depending on a VJing break through to end my engineering career!

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Continuing CSS Mods</title>
   <link href="http://atomicules.co.uk/2005/12/21/Continuing-CSS-Mods.html"/>
   <updated>2005-12-21T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/21/Continuing-CSS-Mods</id>
   <content type="html">
		
				 &lt;p&gt;A few more recent tweaks to get my inline images sorted. You'll probably not notice. Still not perfect, but I'm happier now my images aren't sticking out of by blog posts. Not that there are many images; I really should start putting some more in. &lt;/p&gt;

&lt;p&gt;Main things I had to do were to .byline (the bit at the bottom of my posts with my name and date) a block so clear it so it would always sit below any images. Of course, then I had to tweak the margins a bit (well, remove them). Any inline images are still simply floated left or right. Still a bit of an issue with images not floating completely cleanly depending on where in the source they occur. I don' quite get it, but it's not a biggy&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>FCE - Mono Pair to Stereo</title>
   <link href="http://atomicules.co.uk/2005/12/13/FCE---Mono-Pair-to-Stereo.html"/>
   <updated>2005-12-13T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/13/FCE---Mono-Pair-to-Stereo</id>
   <content type="html">
		
				 &lt;p&gt;If, for &lt;a href=&quot;http://discussions.apple.com/thread.jspa?messageID=1063050&amp;amp;#1063050&quot;&gt;whatever bizarre reason&lt;/a&gt;, FCE decides to capture or import a clip as a mono pair instead of stereo you can 'fix' this by doing the following: Drag the clip to the timeline, use &lt;strong&gt;Modify &amp;gt; Stereo Pair&lt;/strong&gt;, drag it back to the browser and then remove (cut) the original clip.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>iTunes script - Set Composer to Album</title>
   <link href="http://atomicules.co.uk/2005/12/08/iTunes-script---Set-Composer-to-Album.html"/>
   <updated>2005-12-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/08/iTunes-script---Set-Composer-to-Album</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;https://gist.github.com/884917&quot;&gt;Set Composer to Album - Applescript for iTunes&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it does: &lt;/strong&gt;This script utilises the Composer field of a track so that you can browse through full albums only on your iPod. It avoids having to suffer the usual 'browse by album' view on your iPod being cluttered with albums with one or few tracks. Suitable for those who don't sync their full library to their iPod, but do sync a mixture of full albums and individual tracks (from full albums from their iTunes library). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BACKGROUND INFO:&lt;/strong&gt; I have an iPod mini so I don't sync everything from my iTunes library. I ALWAYS sync some hand picked playlists (mainly genre/mood based). In addition I sync a playlist containing complete albums, varied as and when I get bored of them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;THE PROBLEM:&lt;/strong&gt; It's pretty impossible using the iPod interface to easily browse through the full albums I've placed on my iPod, since you can't browse a playlist by album, only the entire music collection. In browsing the entire music collection the album view becomes cluttered with &quot;albums&quot; containing one or two tracks, etc from my hand picked playlists.&lt;/p&gt;

&lt;p&gt;So, what I decided to do was to make use of the composer field. I don't much care who composed a track, so it's not important for me to keep this info:&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;I use a smart playlist called Si-iP_full_albumsX that selects everything not in my Si-iP_full_albums playlist AND that has a non-blank comment field.&lt;/li&gt;

&lt;li&gt;The first part of this script then runs through the Si-iP_full_albumsX playlist and sets the composer fields to blank.&lt;/li&gt;

&lt;li&gt;The second part of the script then runs through the Si-iP_full_albums playlist and sets the composer field of each track to &quot;&amp;lt;album&amp;gt;&quot;.&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Then when I browse by composer on my iPod it is easy to browse the list of complete albums I have on my iPod. Happiness at last.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>iTunes Script - Only Albums</title>
   <link href="http://atomicules.co.uk/2005/12/08/iTunes-Script---Only-Albums.html"/>
   <updated>2005-12-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/08/iTunes-Script---Only-Albums</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;https://gist.github.com/884913&quot;&gt;OnlyAlbums - Applescript for iTunes&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it does:&lt;/strong&gt;This script will attempt to compile a playlist of only albums from the full iTunes music library, based on user inputted values for min. number of tracks per album and min. album duration&lt;/p&gt;

&lt;p&gt;This started off after a post by siMac on the &lt;a href=&quot;http://forums.macnn.com&quot;&gt;Macnn forums&lt;/a&gt;. I'd always fancied having this script anyway, so thought I'd have a go. As you can see from the thread: &lt;a href=&quot;http://forums.macnn.com/showthread.php?t=273932&quot;&gt;iTunes: Create playlist containing only albums?&lt;/a&gt;, it wasn't successful for the user although it did work for me. You can also see an alternative version of the script developed by TETENAL in that same post&lt;/p&gt;

&lt;p&gt;I then stumbled across a post by siMac on the &lt;a href=&quot;http://forums.ipodlounge.com/forumdisplay.php?s=&amp;amp;forumid=62&quot;&gt;iPodLounge Forums&lt;/a&gt;. The moderator there, deeg,  points out &lt;a href=&quot;http://forums.ipodlounge.com/showthread.php?s=&amp;amp;threadid=125716&quot;&gt;some possible improvements to me script&lt;/a&gt;. I've not done them since &quot;It works for me&quot;, but you might want to bear them in mind&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>iTunes Script - Add Wishlist Item</title>
   <link href="http://atomicules.co.uk/2005/12/08/iTunes-Script---Add-Wishlist-Item.html"/>
   <updated>2005-12-08T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/08/iTunes-Script---Add-Wishlist-Item</id>
   <content type="html">
		
				 &lt;p&gt;Download: &lt;a href=&quot;https://gist.github.com/884922&quot;&gt;Add Wishlist Item - Applescript for iTunes&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it does:&lt;/strong&gt; When run the script prompts you for Title/Artist/Album info and uses a small dummy aiff file as a kind of placeholder in a pre-determined playlist in your music library. The intent is that you can add these 'wishlist' items for future reference, e.g to remind you to acquire the tracks or as placeholders when developing playlists&lt;/p&gt;

&lt;p&gt;Written a long time ago (still works, still useful) i had intended on submitting these to &lt;a href=&quot;http://www.dougscripts.com/itunes/index.php&quot;&gt;Doug' Applescripts for iTunes&lt;/a&gt;. In fact I did submit this one back in August. Doug got back to me with some ideas for improvement. I was too busy to do anything for awhile, but I finally have modified this one. I haven't resubmitted it since it isn't as good as it could be, but I can't think of how to make it any better&lt;/p&gt;

&lt;p&gt;It works great. The only possible problem that could arise is if you have an existing track in your library called &quot;wishlist&quot; since the script will target this and rename it instead of the dummy file it's just imported. &lt;/p&gt;

&lt;p&gt;This wasn't a problem until iTunes got video capability since up to then I could use a dummy Quicktime created mp3 file that I could target a bit better. This is because importing a dummy Quicktime file called &quot;wishlist.mp3&quot; comes in to iTunes as a track with name &quot;wishlist.mp3&quot; It's very unlikely anyone will have an actual track called &quot;wishlist.mp3&quot;, but possible someone could have a track called &quot;wishlist.mp3&quot;. Unfortunately as iTunes got video capability all the dummy Quicktime files should up as blank videos. The only way around this was to use an Aiff file and for some weird reason importing an Aiff file called &quot;wishlist.mp3&quot; comes in with a track name of &quot;wishlist&quot;. &lt;/p&gt;

&lt;p&gt;Perhaps I could just call the file some weird name, perhaps not though. I prefer to leave the script as &quot;Works ok for me&quot;.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>iPhoto Colour[Color] Shift, iPhoto 5.0.4, 10.4.3</title>
   <link href="http://atomicules.co.uk/2005/12/07/iPhoto-Colour-Shift-iPhoto-5.0.4-10.4.3.html"/>
   <updated>2005-12-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/07/iPhoto-Colour-Shift-iPhoto-5.0.4-10.4.3</id>
   <content type="html">
		
				 &lt;p&gt;Been doing a bit of investigation of the &lt;a href=&quot;http://www.macosxhints.com/article.php?story=20050601191113703&amp;amp;query=safari+bug&quot; &gt;ColorSync&lt;/a&gt; &lt;a href=&quot;http://www.oreillynet.com/pub/wlg/7345&quot;&gt;issues&lt;/a&gt; of iPhoto. I've found that if I apply a ColorSync profile (using Automator) such as &quot;sRGB&quot; and DO NOT check &quot;Preserve original color space&quot; that any edits in iPhoto will not remove this profile, i.e. it stays as sRGB. If the box is checked then on editing in iPhoto the profile will change to &quot;Generic RGB Profile&quot;. This is the same as editing a photo without a profile in the first place.&lt;/p&gt;

&lt;p&gt;However, it still doesn't change the problem of a slight colour[color] shift occuring when the sRGB profile is applied in the first place.&lt;/p&gt;

&lt;p&gt;If you use ColorSync Utility you have three options (in the help):&lt;/p&gt;

&lt;ol&gt;

&lt;li&gt;&quot;Apply Profile&quot; which doesn't actually change the ColorSync Profile, it just adjusts the image.&lt;/li&gt;

&lt;li&gt;Assign Profile. This is not meant to alter the image, only apply a profile&lt;/li&gt;

&lt;li&gt;Match Profile. Is meant to adjust the image to suit the new profile as well as applying it&lt;/li&gt;

&lt;/ol&gt;

&lt;p&gt;I guess these correspond to the Automator Action and the check box. However, I wonder if there is a bug in the Automator action as the image looks the same whether or not &quot;Preserve original color space&quot; is selected? All Automator modified images look like the &quot;Match Profile&quot; option. So I guess for now, I'll go for that.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Image Galleries</title>
   <link href="http://atomicules.co.uk/2005/12/07/Image-Galleries.html"/>
   <updated>2005-12-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/07/Image-Galleries</id>
   <content type="html">
		
				 &lt;p&gt;

I've had right fun with these (really). There are obviously billions of bits of software out there for creating image galleries, much the same as there are for blogging. But it takes ages to find the one you want. Ideally I wanted a nice plugin to &lt;a href=&quot;http://www.apple.com/ilife/iphoto&quot;&gt;iPhoto&lt;/a&gt;. The default web page export leaves a lot to be desired in terms of web standards. There's a &lt;a href=&quot;http://allthatissolid.com/well-formed/index.php&quot;&gt;Well-Formed&lt;/a&gt; plugin, but that doesn't do slides only an index page. There's a bunch of other plugins; all have the same problem in that even if they are template based they still insist on having some unuser configurable code that writes the images out as a table. I wanted divs so I could have a &lt;a href=&quot;http://www.alistapart.com/articles/practicalcss/&quot;&gt;floatly light layout&lt;/a&gt;

&lt;/p&gt;

&lt;p&gt;

I stumbled across &lt;a href=&quot;http://rjbs.manxome.org/projects/jgal/&quot;&gt;jgal&lt;/a&gt; mentioned on the &lt;a href=&quot;http://groups.yahoo.com/group/nanoblogger/&quot;&gt;Nanoblogger&lt;/a&gt; user list. It seems to be defunct now, but it's command line and so matches &lt;a href=&quot;http://nanoblogger.sf.net&quot;&gt;Nanoblogger&lt;/a&gt; nicely. I can't decide if it's good or bad that it doesn't make use of the built in OSX image technologies: it uses &lt;a href=&quot;http://www.imagemagick.org&quot;&gt;ImageMagick&lt;/a&gt;. It'd be nice to have an image gallery script with more integration with the OS, but then it's ace that I can install and run a thing like this on OSX in the first place.

&lt;/p&gt;

&lt;p&gt;As it is I had to tweak it a bit anyway. Since I wanted a div layout it' easier for me to achieve with square thumbnails. To avoid me having to learn too much Perl it' easier to let jgal do it' thing and then write some &lt;a href=&quot;http://www.apple.com/automator&quot;&gt;Automator&lt;/a&gt; workflows that delete the exisitng thumbnails and replace them with square ones. I'm quite sure I could do this with ImageMagick, but it'd mean me having to figure that out and also editing the jgal code correctly. 

&lt;/p&gt;

&lt;p&gt;Again to avoid editing the jgal code, I then use a &lt;a href=&quot;http://www.barebones.com&quot;&gt;BBEdit&lt;/a&gt; Text Factory to parse the gallery index and convert it from a table layout to a div one (easy to do if you create a table layout with one column, which I can do with jgal). I guess I could have done this with other table based layout plugins (such as the built in iPhoto ones), but jgal is template based and has a nice flat folder structure which makes sorting links out easier.

&lt;/p&gt;

&lt;p&gt;

However, finally I decided I could avoid looking at the jgal code no more. In the templates there is a place holder for the Gallery Title, but I could find no way of entering this as a command line option. The only way I could get it in was by parsing all the html files afterwards and replacing the empty tag for it. However, I've actually managed to edit the jgal Perl script and add a title option into the command line arguments. I'm quite impressed I've managed to do this. Now I've done this I might have to re-think editing the script so that it writes a div based layout to start with, since, afterall, a simple div based layout should be A LOT easier than a table based one. I could also see if I could figure out the ImageMagick scaling of images.

&lt;/p&gt;

&lt;p&gt;

Recently I came across a &lt;a href=&quot;http://hailstonesoftware.com/articles/2005/10/25/web-album-creator-script&quot;&gt;web album creator script&lt;/a&gt;  written in &lt;a href=&quot;http://www.ruby-lang.org&quot;&gt;Ruby&lt;/a&gt;. I'd like to use this since it has slightly more integration with iPhoto, it'd be cool to learn Ruby and it uses built in OSX image events. However, it isn't template based and the time it would take for me to make it template based means I might as well stick with jgal for now.

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Welcome Back</title>
   <link href="http://atomicules.co.uk/2005/12/03/Welcome-Back.html"/>
   <updated>2005-12-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/03/Welcome-Back</id>
   <content type="html">
		
				 &lt;p&gt;Welcome back! This site has been down for over a year now! Crikey! Who'd have thought that for the sake of saving £5 a month I'd lose my site for a year? So, yeah, for the sake of saving a bit of cash I closed my account with &lt;a href=&quot;http://www.22host.co.uk&quot; &gt;22host&lt;/a&gt;, losing my domain name with it (my fault), hence the current .me.uk one. Loosing a proper webhost meant I couldn't use &lt;a href=&quot;http://www.blogger.com&quot; &gt;Blogger&lt;/a&gt; anymore and it's taken until now for me to find a solution I'm happy with that will work with &lt;a href=&quot;http://www.mac.com&quot;&gt;dotmac&lt;/a&gt;; I thought I might as well make the most of the hosting I'm paying for anyway.&lt;/p&gt;

&lt;p&gt;And that leads me to &lt;a href=&quot;http://nanoblogger.sf.net&quot;&gt;Nanoblogger&lt;/a&gt; a small weblog engine that runs in Bash. It's groovy stuff. The most important things for me were that it would output static pages (nothing dynamic such as SSI on dotmac) and that it was customisable. Oh and free/cheap. Nanoblogger is free and can be edited to suit. Great stuff. Although the layout is slightly constrained by Nanoblogger the fact that I can update all pages in one fell swoop is better than before where I was doing it all by hand.&lt;/p&gt;

&lt;p&gt;So there we go. Much the same as before. Still the same sections moaning about Women (Wo), and Engineering (Eng) and the ONLY serious section on this site: Mental Health (Heads). I've dropped all the old Huddersfield University Formula Student / FSAE stuff; it was out of date at the time!. I've added a Video (Vid) section that will mainly get used for posting with regards to technical issues with Final Cut Express, etc, such as plugins I've written in fxscript. So it's all ready to go, the only thing that might continued to get tweaked a bit is the CSS.&lt;/p&gt;

&lt;p&gt;Nanoblogger, plus &lt;a href=&quot;http://www.barebones.com&quot;&gt;BBEdit&lt;/a&gt; from the command line is a groovy thing&lt;/p&gt;

&lt;p&gt;One final point, this site is all XHTML+CSS, if it looks rubbish you are very likely on windows and using IE6 or something. Do yourself a favour and get a decent browser such as &lt;a href=&quot;http://www.mozilla.org/firefox&quot;&gt;Firefox&lt;/a&gt; or &lt;a href=&quot;http://www.opera.com&quot;&gt;Opera&lt;/a&gt;. I'm against CSS hacks because it makes it way harder for me more than anything else&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>BBC Superstar VJing Competition</title>
   <link href="http://atomicules.co.uk/2005/12/01/BBC-Superstar-VJing-Competition.html"/>
   <updated>2005-12-01T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/12/01/BBC-Superstar-VJing-Competition</id>
   <content type="html">
		
				
				
				&lt;iframe src=&quot;http://player.vimeo.com/video/202436?portrait=0&amp;color=01AAEA&quot; width=&quot;500&quot; height=&quot;375&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
				
				&lt;div class=&quot;descrip&quot;&gt;&lt;p&gt;My entry for the recent &lt;a href=&quot;http://www.bbc.co.uk/calc/radio1/competition.shtml&quot;&gt;BBC Superstar VJing Competition&lt;/a&gt;. I didn't win, nevermind. I think I did alright for a mechanical engineer who has had every ounce of creativity crushed out of me by the industry&lt;/p&gt;
&lt;/div&gt;	
		
   </content>
 </entry>
 
 <entry>
   <title>LiveType Quality Issues</title>
   <link href="http://atomicules.co.uk/2005/11/29/LiveType-Quality-Issues.html"/>
   <updated>2005-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/29/LiveType-Quality-Issues</id>
   <content type="html">
		
				 &lt;p&gt;

After a few months I finally had one of those &quot;A ha!&quot; moments when everything

falls into place (I hope).

&lt;/p&gt;



&lt;p&gt;

I've wondered why there are frequently posts on Apple Discussions and other forums regarding &quot;Livetype Quality&quot;,

etc, yet others don't have these problems? Was it a subjective thing, user error or other?

&lt;/p&gt;





&lt;p&gt;

Often the user is referring to the quality of the display in the Canvas in

FCE/FCP. Responses are often along the lines of:

&lt;q&gt;

&quot;The Canvas and computer

monitor are not capable of displaying the same quality as a TV Monitor can,

etc and you should always check output on a TV Monitor&quot;

&lt;/q&gt;, etc.

&lt;br /&gt;

This makes sense since a TV Monitor is interlaced and (I think) the canvas

drops a field in it's display (at least when not set to 100%)

&lt;br /&gt;

However, I don't think that's the real problem some of these people are

having. It's all down to the codec.

&lt;br /&gt;

I bet these users are working in the DV codec which unfortuntely just can't

do what Livetype is capable of in the Animation codec.

&lt;br /&gt;

Unfortuantely, those replying are probably pros and are working in better

codecs than DV, such as uncompressed 8-bit, etc and therefore the

degradation isn't as great for them. They aren't having the issue due to

this.

&lt;br /&gt;

So I think in most cases the

issues with Livetype/Motion Quality are nothing to do with the user mis-interpreting what the Canvas

displays over a TV monitor, but to do with the user working with DV.

&lt;/p&gt;



&lt;p&gt;Further to that &lt;cite&gt;Kevin Monahan&lt;/cite&gt; made &lt;a href=&quot;http://www.kenstone.net/cgi/discussions/general.cgi?noframes;read=60455#60455&quot; &gt;an excellent post&lt;/a&gt; over at Kenstone's site:&lt;/p&gt;



&lt;blockquote cite=&quot;http://www.kenstone.net/cgi/discussions/general.cgi?noframes;read=60455#60455&quot;&gt;



&lt;p&gt;

Are you working on DV? Were you aware that it is a highly compressed format

at 5:1? There is usually only so much quality you can get out of the DV

Codec

&lt;/p&gt;



&lt;ul&gt;

&lt;li&gt;Are you monitoring your graphics properly as you work on a decent pro video

monitor?

&lt;/li&gt;

&lt;li&gt;Have you checked the dark green &quot;FULL&quot; bar in the Sequence&amp;gt;Render menus

before rendering?

&lt;/li&gt;

	&lt;li&gt;Have you enabled the RT Pop up menu to &quot;Safe RT&quot; and Full Quality?&lt;/li&gt;

	&lt;li&gt;Is your Motion Filtering Quality set to &quot;Best&quot; in your User Prefs &amp;gt; Render Control?&lt;/li&gt;

	&lt;li&gt;Is your Render Quality set to 100%?&lt;/li&gt;

	&lt;li&gt;Are your graphics placed on whole, even X, Y integers?&lt;/li&gt;

	&lt;li&gt;Are you placing the Wireframes in different positions rather than moving the point controls in the Controls Tab?&lt;/li&gt;

	&lt;li&gt;Are you using the poorer quality &quot;legacy&quot; FCP title generators? (You should be using Title 3D instead).&lt;/li&gt;

	&lt;li&gt;Do you know how to properly prepare graphics in Photoshop?&lt;/li&gt;

&lt;/ul&gt;



&lt;/blockquote&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Importing iMovie Captures</title>
   <link href="http://atomicules.co.uk/2005/11/29/Importing-iMovie-Captures.html"/>
   <updated>2005-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/29/Importing-iMovie-Captures</id>
   <content type="html">
		
				 &lt;p&gt;

OK, here's what I'd do based on what I've tried so far in getting iMovie

.dv files into FCE and avoiding having to render.

&lt;/p&gt;



&lt;ul&gt;

	&lt;li&gt;Open your iMovie .dv file in Quicktime Pro.&lt;/li&gt;

	&lt;li&gt;Extract the audio track&lt;/li&gt;

	&lt;li&gt;Export the audio track as a Quicktime Movie, Linear PCM format, Channels Stereo (L R), 48kHz, 16bit sample size&lt;/li&gt;

	&lt;li&gt;Delete the audio track from the .dv file&lt;/li&gt;

	&lt;li&gt;Open the exported audio file, select all and copy.&lt;/li&gt;

	&lt;li&gt;Select All in the .dv file&lt;/li&gt;

	&lt;li&gt;Add the exported Audio file using Add to Movie&lt;/li&gt;

	&lt;li&gt;Export/Save As the .dv file as a self contained Quicktime Movie&lt;/li&gt;

	&lt;li&gt;Use this movie in FCE&lt;/li&gt;

&lt;/ul&gt;



&lt;p&gt;

The benefit of this approach as opposed to exporting .dv file in one go is

that the only thing that is truely exported, etc is the Audio track which is

relatively quick. The video track is left unchanged so there is no loss in

quality.

&lt;/p&gt;



&lt;p&gt;

The resultant file never has to be rendered in FCE.

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>FCE Timecode Display Plugin</title>
   <link href="http://atomicules.co.uk/2005/11/29/FCE-Timecode-Display-Plugin.html"/>
   <updated>2005-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/29/FCE-Timecode-Display-Plugin</id>
   <content type="html">
		
				 &lt;p&gt;Since FCE lacks the ability to display the timecode of a captured clip 

I set about learning and writing an fxscript to do so once I realised it was possible (due to Joe Maller's Time Bender Plugin). The result was version 1 and then 2 of the plugin.&lt;/p&gt;

&lt;p&gt;PieroF of the &lt;a href=&quot;http://discussions.apple.com/&quot; &gt;Apple Discussions board&lt;/a&gt; took what I had written and improved it and that resulted in version 2.1. Then, unbeknown to each other we both set about improving the plugin, however Piero beat me there with bells on. The latest version is v3.0.1 It is much improved. In his own words:&lt;/p&gt;



&lt;ol&gt;

	&lt;li&gt;Added display of Clip Start and; End Timecode: [xx:xx:xx:xx]&lt;/li&gt;

	&lt;li&gt;Added display of handles size: ±xx:xx:xx:xx	(origin: IN and OUT)&lt;/li&gt;

	&lt;li&gt;Added Control for selecting IN and OUT (in place of 1, 2, all)&lt;/li&gt;

	&lt;li&gt;Added Control for selecting Start and End&lt;/li&gt;

	&lt;li&gt;Added Control for selecting handles size&lt;/li&gt;

	&lt;li&gt;Moved controls to a better position&lt;/li&gt;

	&lt;li&gt;Disabled Control for Left, Centre, Right Alignment, ONLY WHEN Text Display = Inline&lt;/li&gt;

	&lt;li&gt;Modified Alpha handling: removed AlphaType(kblack) to avoid side effects (see code)	&lt;/li&gt;	

&lt;/ol&gt;



&lt;ul&gt;

	&lt;li&gt;&lt;strong&gt;[EDIT: 2011-03-24 - For up-to date, maintained and much, much better versions of this, see &lt;a href=&quot;http://web.mac.com/piero.fiorani/PieroF_FCE_Effect/Timecode_Display.html&quot;&gt;Piero's website&lt;/a&gt;. For reference/archival purposes the previous verisons I was involved are recorded as commits in the Github Gist linked to below.&lt;/strong&gt;&lt;/li&gt;

&lt;li&gt;Previous Versions

&lt;ul&gt;

	&lt;li&gt;&lt;a href=&quot;https://gist.github.com/890174&quot; &gt;v3.0.1&lt;/a&gt; Select in/out point timecodes and/or media limits, plus the addition of media handle sizes. By Piero. NOTE: I erroneously stated that the plugin displayed the time to in/out point from current frame instead of displaying the handle size (Perhaps we'll add this in at some point!). I've reworded the plugin to avoid this confusion, hence v3.0.1&lt;/li&gt;
	
	&lt;li&gt;v2.2 -  More formatting controls by me.

	&lt;/li&gt;

	&lt;li&gt;v2.1 - Formatting controls added by PieroF&lt;/li&gt;

	&lt;li&gt;v2 - Added Clip start and end timecodes in addition to current frame's timecode&lt;/li&gt;

	&lt;li&gt;v1 - Basic timecode display for PAL and NTSC&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ul&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>FCE Counter</title>
   <link href="http://atomicules.co.uk/2005/11/29/FCE-Counter.html"/>
   <updated>2005-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/29/FCE-Counter</id>
   <content type="html">
		
				 &lt;p&gt;A filter to display a clock/counter on the clip. Inspired by the Too Much Too Soon Clock filter that

unfortunately can't be used with FCE since it requires keyframing.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;&lt;strong&gt;[EDIT 2011-03-24: For an up-to date, maintained, and much much better version of this plugin see &lt;a href=&quot;http://web.mac.com/piero.fiorani/PieroF_FCE_Effect/Counter_Display.html&quot;&gt;Piero Fiorani's&lt;/a&gt;. A link to my original version (and previous revisions as commits) as a Gist on Github is given below for reference/archival purposes]&lt;/strong&gt;&lt;/li&gt;


	&lt;li&gt;Previous Versions

		&lt;ul&gt;

			&lt;li&gt;&lt;a href=&quot;https://gist.github.com/890192&quot; &gt;Current Release v0.9.1&lt;/a&gt;

			&lt;br /&gt;Somethings a bit iffy since NTSC and PAL counters don't match

			&lt;/li&gt;

		&lt;/ul&gt;

	&lt;/li&gt;

&lt;/ul&gt;




			
   </content>
 </entry>
 
 <entry>
   <title>FCE Batch Capture using XML</title>
   <link href="http://atomicules.co.uk/2005/11/29/FCE-Batch-Capture-using-XML.html"/>
   <updated>2005-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/29/FCE-Batch-Capture-using-XML</id>
   <content type="html">
		
				 &lt;p&gt;

As we already know it can be done (Search Final Cut Express part of Apple Discussions for &quot;iDive&quot;), but here's how to do it. The good news it's pretty simple.

&lt;/p&gt;





&lt;p&gt;

You will need a pen and paper batch capture list and a tool for calculating frame numbers from timecode. You can do it in your head, but I like TC Calculator by Eric Fry. Search versiontracker for it (although his site seems to be down at the moment). If you've got Tom Wolsky's book you'll have it on the DVD.

&lt;/p&gt;





&lt;p&gt;

Download the &lt;a href=&quot;https://gist.github.com/884871&quot; &gt;XML Template&lt;/a&gt;. It is a default batch capture file that you can use as a base and edit to suit. It contains a single clip captured to one bin. To capture more than one clip simply duplicate everything between &amp;lt;clip&amp;gt;&amp;lt;/clip&amp;gt; and paste below the exisiting &amp;lt;clip&amp;gt;&amp;lt;/clip&amp;gt;. Same goes if you want more than one bin.

&lt;/p&gt;





&lt;p&gt;

When you've edited the file to suit, drag into the browser of FCE, it will pop up a dialog box. Most of this can be left as is. The just Capture Project

&lt;/p&gt;





&lt;p&gt;

Most of the bits you need to change are highlighted by *** ***

&lt;/p&gt;



&lt;ul&gt;

&lt;li&gt;

***BIN NAME*** give it any name you want.

&lt;/li&gt;



&lt;li&gt;

***CLIP NAME*** Change both of these to match

&lt;/li&gt;



&lt;li&gt;&amp;lt;duration&amp;gt;&amp;lt;/duration&amp;gt; Alter the number here to set the duration of the captured clip. This is in number of frames.&lt;/li&gt;



&lt;li&gt;

&amp;lt;ntsc&amp;gt;&amp;lt;/ntsc&amp;gt; This file is set for PAL. For NTSC users change this value to TRUE

&lt;/li&gt;



&lt;li&gt;&amp;lt;timebase&amp;gt;&amp;lt;/timebase&amp;gt; This sets the frames per secs. Mine is set for PAL. For NTSC users change to 30&lt;/li&gt;



&lt;li&gt;

***LOG NOTE*** Change to whatever or delete the &amp;lt;logginginfo&amp;gt;&amp;lt;/logginginfo&amp;gt; section out if you don't want it

&lt;/li&gt;



&lt;li&gt;

&amp;lt;timecode&amp;gt;&amp;lt;/timecode&amp;gt; This is the important section:



&lt;ul&gt;



&lt;li&gt;

&amp;lt;string&amp;gt;&amp;lt;/string&amp;gt; specifies the starting timecode of the clip. Note that if you are using NTSC and dropped frame timecode then you need to use a semi-colon in the timecode, i.e. 00:00:00;00. If it's dropped frame then you should add &amp;lt;displayformat&amp;gt;DF&amp;lt;/displayformat&amp;gt; inbetween the &amp;lt;timecode&amp;gt;&amp;lt;/timecode&amp;gt; element

&lt;br /&gt;



&amp;lt;frame&amp;gt;&amp;lt;/frame&amp;gt; This SHOULD NOT be required as well as the &amp;lt;string&amp;gt;&amp;lt;/string&amp;gt; element since it is duplicate information, but for me it would not work without it. FCE would rewind to the start of the tape, sit there and moan about insufficient pre-roll for timecode. So I suggest putting it in. Note it doesn't even have to be the right value, FCE will warn you of a mismatch, take the &amp;lt;string&amp;gt;&amp;lt;/string&amp;gt; value and still work. The WIERDNESS of FC.

&lt;/li&gt;





&lt;li&gt;

***REEL NAME*** More for you than anything else.

&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ul&gt;







&lt;p&gt;

NOTES:

&lt;/p&gt;





&lt;p&gt;

Notes on editing the XML files. Just use Apple's TextEdit but ensure you save as UTF-8.

&lt;/p&gt;



&lt;p&gt;

WARNING to BBEDIT users: For some reason FCE/FCP is very quirky with text files and even though BBEDIT can control the text format (encodings, line endings/breaks, etc) better than TextEdit I have not been able to get a bbedit created file to work. When importing to FCE I get a File Error: File Unknown. I've been into contact with Barebones about this and they are a bit stumped as well. The only difference they could spot between a bbedit created file and a TextEdit one was the line break encoding. I've tried every setting in BBEDIT and can't get it to work even though in thoery the file is correct. So the work around is to edit in bbedit, then open with text edit and click save, before importing into FCE.

&lt;/p&gt;





&lt;p&gt;

FCE 3 is based on FCP4.5. This uses the xmeml version 1. FCP5 uses xmeml version 2.

&lt;/p&gt;



&lt;p&gt;

For further information see the &lt;a href=&quot;http://developer.apple.com/appleapplications/fcpxml.html&quot; &gt;Apple FCP XML Page&lt;/a&gt;

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>FIELDLIFE</title>
   <link href="http://atomicules.co.uk/2005/11/28/FIELDLIFE.html"/>
   <updated>2005-11-28T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2005/11/28/FIELDLIFE</id>
   <content type="html">
		
				 &lt;p&gt;Skating &lt;em&gt;was&lt;/em&gt; part of my life since I was about 12 till I was about 26. So at that point is was at least half of my life skating;  mainly on, sometimes off like my busy times at uni and my busy times at work and the shite winters that were Huddersfield.  I'm sad to say that it is no more now. My final moment was the completion of the &lt;a href=&quot;http://www.fieldlife.co.uk&quot; &gt;Fieldlife video&lt;/a&gt;. Somewhere in these posts it might mention a huge backlog of video editing to do, well it did finally get done and that DVD is the result&lt;/p&gt;

&lt;p&gt;So it's a shame. I had fun times. But since I'm now old, married and boring I don't skate anymore. Just have the memories. There is unlikely to be much posted under this heading anymore&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>John Peel</title>
   <link href="http://atomicules.co.uk/2004/10/27/John-Peel.html"/>
   <updated>2004-10-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2004/10/27/John-Peel</id>
   <content type="html">
		
				 &lt;p&gt;I'm surprised at just how upset I was to hear about the death of John

Peel. I felt/feel gutted. Maddness. The memories I have include many of

travelling late at night listening to John Peel, sometimes flicking to

something else cus his eclectic taste wasn't necessarily mine (nevermind

damn right confusing if you'd just tuned in sometimes to hear something

bizarre &quot;This isn't Radio1 is it?!&quot;). Also I remember taping an entire

Festive 50 one christmas and listening to it all through the next year. It's

a sad loss. I hope I can get to Glastonbury next year, but I think it'll be

more popular than ever.&lt;/p&gt;

&lt;p&gt;It's tempting sometimes (especially for me) to dismiss muso types, along

with the arty farty masses as a bit worthless and not really contributing to

society. This is bred from pure jealously from spending my time working far

too hard doing engineering with the impending realisation that I was the one

who was wasting my life, not them. Yeah, so John did something he loved, he

didn't put out fires, build bridges, make the ill better or anything

tangible. Although he certainly led to bands prospering. But there is

something else as well. Many of the 'grey'; world like me do owe a lot to

John and his ilk. I know I wouldn't/couldn't have done my GCSEs, A-Levels or

degree (and often some days at work) without listening to music. So

thank-you, goodbye, you'll be missed.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Assorted Selection</title>
   <link href="http://atomicules.co.uk/2004/09/03/Assorted-Selection.html"/>
   <updated>2004-09-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2004/09/03/Assorted-Selection</id>
   <content type="html">
		
				 &lt;p&gt;Anyone who knows me knows I like the &lt;a href=&quot;http://www.thefreestylers.com&quot; &gt;Freestylers&lt;/a&gt;, and I really, really like the new album Raw As Fuck. Unfortunately not on the iTunes Music Store, but why not get it here if in the UK: &lt;a href=&quot;http://www.karmadownload.com/artist/?Freestylers&quot;&gt;Karmadownloads&lt;/a&gt;? Wow. £7 for bliss. Ok so there's one less track than on the album, but you can't complain.&lt;/p&gt;

&lt;p&gt;Music download charts. The BBC have just launched their &lt;a href=&quot;http://www.bbc.co.uk/radio1/chart/top40/download.shtml&quot; &gt;music download chart&lt;/a&gt;. What can I say? Technological progress obviously doesn't mean improvements in taste of the nation.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Happy Birthday to i5m</title>
   <link href="http://atomicules.co.uk/2004/07/26/Happy-Birthday-to-i5m.html"/>
   <updated>2004-07-26T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2004/07/26/Happy-Birthday-to-i5m</id>
   <content type="html">
		
				 &lt;p&gt;Happy birthday to i5m by the way. Two years old, officially, although the

contents been up slightly less&lt;/p&gt;&lt;p&gt; The makeover has commenced, it'll just

take awhile&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Email posting</title>
   <link href="http://atomicules.co.uk/2004/05/18/Email-posting.html"/>
   <updated>2004-05-18T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2004/05/18/Email-posting</id>
   <content type="html">
		
				 &lt;p&gt;Test post via email.  Oooh if this works then I might start posting more

often again&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Wedding vid</title>
   <link href="http://atomicules.co.uk/2003/09/16/Wedding-vid.html"/>
   <updated>2003-09-16T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/09/16/Wedding-vid</id>
   <content type="html">
		
				 &lt;p&gt;Was away most of last week, sorting the house out &lt;img src=&quot;/images/thehouse.jpg&quot; alt=&quot;&quot; class=&quot;right&quot; /&gt;, spent 6 days without any internet access. Lucky I was so busy otherwise I might have noticed.  Not a lot else I can be arsed to say.  Oooh, yeah, a first for me I filmed a wedding.  Just got to edit it now, and everyone knows how long it takes me on that front.  I've been given about 2 weeks, some how I reckon about two months.  Crazy.  Someone please buy my a &lt;a href=&quot;http://www.apple.com/powerbook/index12.html&quot; &gt;new 12&quot; powerbook.&lt;/a&gt;

&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Anniversary</title>
   <link href="http://atomicules.co.uk/2003/09/01/Anniversary.html"/>
   <updated>2003-09-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/09/01/Anniversary</id>
   <content type="html">
		
				 &lt;p&gt;Well Happy birthday to my site, it's been up and running so to speak for over a year now.  And I still haven't finished half the pages.  About time for a complete redesign (if I had time) and concentrating on the bits that are really there.   Maybe won't leave much!&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Poor James</title>
   <link href="http://atomicules.co.uk/2003/08/08/Poor-James.html"/>
   <updated>2003-08-08T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/08/08/Poor-James</id>
   <content type="html">
		
				 &lt;p&gt;So I've had quite possibly the shitest Friday in a while: My girlfriends pissed with me (suprise!), made fuck up at work, had to walk home from work, got blisters on my feet, stink and am sweaty.  So I thought I'd listen to James to deepen my black mood.  Really fancied 'sometimes' on the way home.  But now after listening to all of laid I'm on Seven and it's just ace.  I'm actually starting to feel in a better mood, which is shit in a way cus I was going to have a right bitch.  Oh well.  Wish I had a beer.  Wish I didn't have to go to work tomorrow.  And walk there and back at that.  Someone make me un-poor.  Please. &lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Not all bad vibes</title>
   <link href="http://atomicules.co.uk/2003/07/23/Not-all-bad-vibes.html"/>
   <updated>2003-07-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/07/23/Not-all-bad-vibes</id>
   <content type="html">
		
				 &lt;p&gt;It's not all bad vibes.  He's a picture &lt;img src=&quot;/images/me_and_amy_glasters.jpg&quot;  alt=&quot;&quot; class=&quot;left&quot; /&gt;of me and the lady at Glastonbury.  She how happy she is to be with me.&lt;/p&gt;

&lt;p&gt;Can't really blame her with that twat next to her.&lt;/p&gt;

&lt;p&gt;Yes she was drunk when she met me&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Other things</title>
   <link href="http://atomicules.co.uk/2003/07/16/Other-things.html"/>
   <updated>2003-07-16T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/07/16/Other-things</id>
   <content type="html">
		
				 &lt;p&gt;And I really should have written something before now about what I've been upto, but I've had other things to concentrate on.   I've been to Glastonbury this year which really was quite good, and I'll try and write something about it before next year.  But once again it's late at night and I'm in desperate need of SLEEP.  Where does all the time go?&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>New Blogger</title>
   <link href="http://atomicules.co.uk/2003/07/10/New-Blogger.html"/>
   <updated>2003-07-10T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/07/10/New-Blogger</id>
   <content type="html">
		
				 &lt;p&gt;Ooh a new blogger, not that you will notice, but it just shows how long it is since I last posted anything.  So this is more of a test than anything else, have my templates gone awry?&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Moblogging</title>
   <link href="http://atomicules.co.uk/2003/05/29/Moblogging.html"/>
   <updated>2003-05-29T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/29/Moblogging</id>
   <content type="html">
		
				 &lt;p&gt;So there are ways (&lt;a href=&quot;http://www.manywhere.com/Moblogger.html&quot;&gt;Manywhere - Moblog&lt;/a&gt; and &lt;a href=&quot;http://www.bitwaste.com/wasted-bits/archives/000093.html#000093&quot; &gt;a perl script&lt;/a&gt; to blog via SMS, I just can't be arsed to figure them out.  It just won't be a five minute job for me unfortunately&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Films</title>
   <link href="http://atomicules.co.uk/2003/05/27/Films.html"/>
   <updated>2003-05-27T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/27/Films</id>
   <content type="html">
		
				 &lt;p&gt;Well haven't managed to catch &lt;a href=&quot;http://us.imdb.com/Title?0234215&quot;&gt;Matrix Reloaded&lt;/a&gt; yet, the opening kind of clashed with Amy's birthday, and for some odd reason she didn't want to go and see it&lt;/p&gt;

&lt;p&gt;My chances of actually getting to see it are slim, in a year of seeing each other the only time we've managed to get to the cinema together is to see &quot;&lt;a href=&quot;http://us.imdb.com/Title?0251127&quot;&gt;How to loose a guy in ten days&lt;/a&gt;&quot;.  And I'm not to sure if I should be posting that on the internet.  I wanted to see &lt;a href=&quot;http://us.imdb.com/Title?0183649&quot;&gt;Phone booth&lt;/a&gt;, cus of Katie Holmes, but we just missed it, so we opted for the other.  Oh well, I'll be getting it on DVD anyway.&lt;/p&gt;

&lt;p&gt;Not a lot of other news that I'm sure I should write about&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Bluetooth</title>
   <link href="http://atomicules.co.uk/2003/05/21/Bluetooth.html"/>
   <updated>2003-05-21T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/21/Bluetooth</id>
   <content type="html">
		
				 &lt;p&gt;Honestly, this whole bluetooth thing rocks.  I get SMS messages appearing on my computer screen when my phone is sat over the otherside of the room.  I can then reply from my computer.  I didn't even hear that I'd got a text because my phone was still on silent.  It's so cool.  God &lt;a href=&quot;http://www.apple.com&quot;&gt;Apple&lt;/a&gt; rock.  And people use windows, why?&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Bluetooth Sync</title>
   <link href="http://atomicules.co.uk/2003/05/20/Bluetooth-Sync.html"/>
   <updated>2003-05-20T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/20/Bluetooth-Sync</id>
   <content type="html">
		
				 &lt;p&gt;On a plus point, I've got my &lt;a href=&quot;http://www.dlink.com/products/usb/dbt120/index.htm&quot;&gt;D-Link bluetooth adaptor&lt;/a&gt; and can now do &lt;a href=&quot;http://www.apple.com/bluetooth/&quot;&gt;nifty things&lt;/a&gt; with my phone via bluetooth and very nifty things with &lt;a href=&quot;http://homepage.mac.com/jonassalling/Shareware/Clicker/&quot;&gt;Salling Clicker&lt;/a&gt;, an ace bit of software.  So if I wanted to I could start my mac playing music whilst in bed.  It's of no real use I guess, but terribly geeky and fun.

&lt;/p&gt;

&lt;p&gt;It meant I could sync the address book on my computer with my phone and also with the one in my webmail account.  And I can also transfer images to my phone wirelessly.  Stoked.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Spotted</title>
   <link href="http://atomicules.co.uk/2003/05/13/Spotted.html"/>
   <updated>2003-05-13T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/13/Spotted</id>
   <content type="html">
		
				 &lt;p&gt;&lt;a href=&quot;http://www.ideasasylum.com/weblog/2003_05_01_archive.html#200231774&quot;&gt;He's noticed that I found him&lt;/a&gt;, still I can feel less lame about getting in touch because he hasn't.  Unless he sent me porn, in which case it got filtered.  Don't send me porn, I am quite capable of finding it myself&lt;/p&gt;



&lt;p&gt;The &lt;a href=&quot;http://hiveware.com/enkoder_form.php&quot;&gt;goodness of safe email addresses&lt;/a&gt; isn't really working.  Well it could be worse I guess. &lt;/p&gt; 


			
   </content>
 </entry>
 
 <entry>
   <title>Unless - Carol Shields</title>
   <link href="http://atomicules.co.uk/2003/05/01/Unless---Carol-Shields.html"/>
   <updated>2003-05-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/01/Unless---Carol-Shields</id>
   <content type="html">
		
				 &lt;p&gt;What else have I been doing?  I read &lt;a href=&quot;http://www.amazon.co.uk/exec/obidos/ASIN/0007137699/qid=1051829089/sr=2-1/ref=sr_2_3_1/202-2199007-7966257&quot;&gt;Unless by Carol Shields&lt;/a&gt;.  I quite liked it.  I try to read entirely different novels from whatever I've read previously to get a good range.  It gives me something to do on the train, although I do tend to read too quick. I should join a library I guess.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Found him!</title>
   <link href="http://atomicules.co.uk/2003/05/01/Found-him%21.html"/>
   <updated>2003-05-01T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/05/01/Found-him!</id>
   <content type="html">
		
				 &lt;p&gt;I found one of my friend's from School the other day through &lt;a href=&quot;http://www.friendsreunited.co.uk&quot;&gt;FriendsReunited&lt;/a&gt;, well that is I've seen them registered there.  Of course I haven't paid up to send them a message.  Luckily in this case my &lt;a href=&quot;http://www.ideasasylum.com&quot;&gt;friend has a website&lt;/a&gt; so I can contact him through that.  I still haven't.&lt;/p&gt;




			
   </content>
 </entry>
 
 <entry>
   <title>Back up?</title>
   <link href="http://atomicules.co.uk/2003/04/23/Back-up_.html"/>
   <updated>2003-04-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/04/23/Back-up_</id>
   <content type="html">
		
				 &lt;p&gt;Seems we are back up and running again.  Still going for moveabletype though&lt;/p&gt;

&lt;p&gt;Especially as my archives are now screwed.  Arse&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Archives Accessible</title>
   <link href="http://atomicules.co.uk/2003/04/23/Archives-Accessible.html"/>
   <updated>2003-04-23T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2003/04/23/Archives-Accessible</id>
   <content type="html">
		
				 &lt;p&gt;Archives sorted.  Had lost my templates and thus all my SSI had gone screwy and stupidly I hadn't kept a copy of my archive template&lt;/p&gt;

&lt;p&gt;A spot of relearning and it's all ace&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Site, Debt, Video Editing, Summer!</title>
   <link href="http://atomicules.co.uk/2003/04/02/Site-Debt-Video-Editing-Summer%21.html"/>
   <updated>2003-04-02T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/04/02/Site-Debt-Video-Editing-Summer!</id>
   <content type="html">
		
				 &lt;p&gt;So I really am keeping my word.  Seriously too busy to do anything to this site.  Which is a shame.  Still way off getting moveabletype up and running even though I installed it ages ago.  Had hoped for a quick implementation of a comment system using &lt;a href=&quot;http://www.haloscan.com&quot; &gt;Haloscan&lt;/a&gt; but it seems signups are closed.  Arse. &lt;/p&gt;

&lt;p&gt;Have lots to add to the debt section.  Yes it seems to be getting worse.  Stupid Barclaycard put my limit up again.  Quite simply I need more of an income.  I'm fed up of eating shite.  I already had a zero amount of money to live off the moment I got paid this month.  What's the point of working harder, longer, faster, when the money's the same at the end of the day?  Stupid bloody conscience and work ethic of mine&lt;/p&gt;

&lt;p&gt;Anyway.  I'm still way behind on my video work.  I'm not sure where my evenings seem to go.  I've taken months fannying about with DVDs, VCDs and SVCDs and I've still to author the bit of video I spent ages editing.  I need &lt;a href=&quot;http://www.roxio-shop.com/cgi-bin/shop/en/shop_main.cgi?func=rubrik&amp;amp;wkid=4556563183&amp;amp;rub1=Toast&quot;&gt;toast&lt;/a&gt;, which I've ordered.  Unfortunately you can't download outside USA which means resorting to the old &lt;a href=&quot;http://www.royalmail.com&quot;&gt;real network&lt;/a&gt; delivery 

which quite frankly is a pain in the arse when you're hardly at home.  Someone needs to come up with a better idea.  Anyway, when it eventually gets here I'll have a crack at SVCDs and hopefully that'll work on my bird's DVD player.&lt;/p&gt;

&lt;p&gt;The good news is that the clock's have changed.  British Summer Time is here bringning light evenings.  So assuming I ever get out of work at a reasonable time then I might start skating a bit more since I'll be able to skate the park which is a bit more inspiring than Sainsbury's curb.&lt;/p&gt;

&lt;p&gt;This weekend was Mia's 2nd birthday, and we all went to &lt;a href=&quot;http://www.chesterzoo.org.uk/&quot;&gt;Chester Zoo&lt;/a&gt;.  I've not been to the zoo in years and it was rad.  Should have some reasonable footage from the whole weekend, which means more fun editing for me.  Didn't think about that!  Ohwell, it can join the queue.&lt;/p&gt;

&lt;p&gt;And I can't think of anything else to say&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>DVD authoring</title>
   <link href="http://atomicules.co.uk/2003/02/27/DVD-authoring.html"/>
   <updated>2003-02-27T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/02/27/DVD-authoring</id>
   <content type="html">
		
				 &lt;p&gt;Another week of none events.  Where does my time go and what do I achieve?&lt;/p&gt;

&lt;p&gt;It's taken me a few weeks to figure out how to get DVDs authored correctly.  My geek dilemma is recounted on the &lt;a href=&quot;http://forums.macnn.com/showthread.php?s=&amp;amp;threadid=145733&quot;&gt;macnn forums&lt;/a&gt; (one of a couple of places I asked for help, as you can see I didn't get too many replies)&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Slow encoding</title>
   <link href="http://atomicules.co.uk/2003/02/10/Slow-encoding.html"/>
   <updated>2003-02-10T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/02/10/Slow-encoding</id>
   <content type="html">
		
				 &lt;p&gt;Well it took a day and a half to encode 30 mins of footage to MPEG2 at 9800 kbits/sec.  And now I can't friggin Mplex the files together.  I think it is because I have one huge video file at over 5GB.  Somehow I need to split this down.  This is all a learning thing for me.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>No action here</title>
   <link href="http://atomicules.co.uk/2003/02/07/No-action-here.html"/>
   <updated>2003-02-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/02/07/No-action-here</id>
   <content type="html">
		
				 &lt;p&gt;Well true to my word I've been doing knack all with this site, but have managed to finish editing the footage of my girlfirend's daughter, Mia, from Christmas.  I had my artistic flair curtailed as I was under strict orders not to cut any footage of Mia out at all.  So basically all I could do was put a nice beginning and a nice ending on it.  The rest of the video is pretty much as filmed.  And there was me thinking that the 30 mins of footage would end up around 10mins when edited, tops.  Oh well.  I like what I've done, now I've just got to try and encode it to MPEG2 so I can get a DVD (Everyone wants DVDs nowadays, video just isn't good enough).  This should be amusing anyway, encoding 30mins of video on a 450MHz G3 imac, I'll leave it running for a few days and see if it manages it.&lt;/p&gt;

&lt;p&gt;Since I can't afford a new mac, I'm using &lt;a href=&quot;http://mediapipe.sourceforge.net/&quot; &gt;mediapipe&lt;/a&gt;, &lt;a href=&quot;http://thegoods.ath.cx/~hmason/sizzle/&quot;&gt;sizzle&lt;/a&gt; and a &lt;a href=&quot;http://www.lacie.co.uk&quot;&gt;lacie&lt;/a&gt; external burner to achieve my goals. No DVD menus, but it'll do.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Must ... Edit ... Video</title>
   <link href="http://atomicules.co.uk/2003/01/29/Must-Edit-Video.html"/>
   <updated>2003-01-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/01/29/Must-Edit-Video</id>
   <content type="html">
		
				 &lt;p&gt;Well, I'm going to have to lay off the site for awhile because I have about 6 months of video editing to catch up on.  I'm really behind.  Sometimes I wish I didn't have a decent internet connection at home because then I wouldn't get distracted so easily.  Never happy, hey?&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Bold</title>
   <link href="http://atomicules.co.uk/2003/01/03/Bold.html"/>
   <updated>2003-01-03T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2003/01/03/Bold</id>
   <content type="html">
		
				 &lt;p&gt;Bollocks, for some reason, my css file for my blog was set so all my text was bold, and I hadn't even noticed til now. &lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Harry Potter</title>
   <link href="http://atomicules.co.uk/2002/11/29/Harry-Potter.html"/>
   <updated>2002-11-29T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2002/11/29/Harry-Potter</id>
   <content type="html">
		
				 &lt;p&gt;Way hey! More drunken posting.  So I said I'd write something about &lt;a href=&quot;http://www.harrypotter.co.uk&quot;&gt;Harry Potty&lt;/a&gt;, and indeed I should.  In fact I did start writing something, but &lt;a href=&quot;http://chimera.mozdev.org/&quot;&gt;Chimera&lt;/a&gt; crashed out on me, and I couldn't be arsed to start agian.&lt;/p&gt;

&lt;p&gt;So, I was until Tuesday a complete Harry Potter Virgin, purposefully of course.  I had skillfully managed to avoid all books and films.  Personally I am not interested in the books.  I mean they obviously must be good because they have done so well, but if I wanted to read decent kids books that also cater for adults I'd read something by &lt;a href=&quot;http://www.terrypratchettbooks.com/&quot;&gt;this&lt;/a&gt; guy, or if I wanted to read a decent book full stop I'd read &lt;a href=&quot;http://www.complete-review.com/reviews/houelbqm/partelem.htm&quot;&gt;this&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;But, saying that , the film was good.  Very well produced,with good special effects.  In itself it would be a very impressive film in the fantasy genre, if it weren't for Lord of the Rings going on at the same time.  It didn't matter that I hadn't got a clue what a &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;ie=ISO-8859-1&amp;amp;q=golden+snitch&quot;&gt;golden snitch&lt;/a&gt; was, the film was obviously made to cater for newbies as well as those more familar with the Harry Potter phenomenon.  The film is pretty long at 2 and a half hours, but just manages it, although it could be shorter and still manage the same.  I can't imagine any kid sitting through that long a film though.&lt;/p&gt;

&lt;p&gt;The only one really bad bit in the film is when the phoenix bites the eyes out of the snake, and they have to cut to Voltare (or whatever he is called) saying &quot;You're Phoenix may have pecked his eyes out, but he still has his sense of smell&quot;.  Things like this aren't good.  I can't imagine the director wanted this in.  Basically if what is happening on screen doesn't convey the message then it obviously isn't good enough.  This bit really looked like it had been edged in because someone thought the audience wouldn't get what was going on.  Maybe they wouldn't, but it still wouldn't have runined the film, and it isn't necessary to spell everything out.  It is good to watch a film a couple of times and discover new things.&lt;/p&gt;

&lt;p&gt;In the end it still hasn't made me want to rush off and read the books, but I have to grudgingly admit that the Harry Potter  phenomenon, is rightfully so&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Small Achievements</title>
   <link href="http://atomicules.co.uk/2002/11/11/Small-Achievements.html"/>
   <updated>2002-11-11T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2002/11/11/Small-Achievements</id>
   <content type="html">
		
				 &lt;p&gt;Small achievements in life are what please me, even if no one else cares.  But, finally &lt;a href=&quot;/archive/&quot;&gt;my archives&lt;/a&gt; are now formatted properly.  It shouldn't have been hard considering &lt;a href=&quot;http://www.blogger.com&quot;&gt;blogger&lt;/a&gt; post all the &lt;a href=&quot;http://publicmind.blogger.com/enduser/group.jsp?node=161&quot;&gt;help&lt;/a&gt; you need, and this evening, probably about my fifth time of reading the same help page, it finally clicked and I've got the &lt;a href=&quot;http://www.bignosebird.com/ssi.shtml&quot;&gt;SSI&lt;/a&gt; queries working,  ace, now people can read all the shit I wrote a &lt;a href=&quot;/archive/&quot;&gt;few days ago.&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Next I really need to move from &lt;a href=&quot;http://www.blogger.com&quot;&gt;blogger&lt;/a&gt; to&lt;a href=&quot;http://www.moveabletype.org&quot;&gt; moveable type&lt;/a&gt;.  Hell if I was really clever I could run this off my machine.  But that would likely take me years to achieve.&lt;/p&gt;

&lt;p&gt;Now that most of the Barca story is there, I really need to get my arse in gear and edit some video. Lazy lazy lazy.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>New Beer</title>
   <link href="http://atomicules.co.uk/2002/11/07/New-Beer.html"/>
   <updated>2002-11-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2002/11/07/New-Beer</id>
   <content type="html">
		
				 &lt;p&gt;This stuff is my new beer.&lt;a href=&quot;http://www.twinings.com/en/explore_our_range/prod_detail_herbal.asp?dept_id=11&amp;amp;blend_id=208&quot; &gt;&lt;img src=&quot;/images/W70177082598.jpg&quot; alt=&quot;&quot; title=&quot;Twinings Blackcurrant, Ginzing and Vanilla tea&quot; /&gt;&lt;/a&gt; I seem to have gone off real beer.  I think I must be ill. &lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Atomised</title>
   <link href="http://atomicules.co.uk/2002/11/07/Atomised.html"/>
   <updated>2002-11-07T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2002/11/07/Atomised</id>
   <content type="html">
		
				 &lt;p&gt;The most semi-interesting thing is that the other week, due to the shitty train strikes that have been happening recently up north, I decided to buy a book from WHSmiths at Manchester Picadilly.  This was in preparation for the bloody coach journey I would have to take since the trains weren't running.  I haven't read a book in a while let alone bought one, but ended up buying &lt;a href=&quot;http://www.richmondreview.co.uk/books/atomised.html&quot;&gt;Atomised&lt;/a&gt;, by Michel Houllebecq.  It is &lt;a href=&quot;http://www.impacdublinaward.ie/2002/Winner.htm&quot;&gt;Winner of the International IMPAC Dublin Literaty Award 2002&lt;/a&gt;.   So I was expecting something quite good, it sounded pretty interesting. &lt;/p&gt;&lt;p&gt;It definitely is different.  Some parts I found a bit tricky to follow since it seemed to keep jumping back and forth along the timeline.  However, about two thirds of the way through I was thinking &quot;there must be more depth to this book than what has happened so far?&quot;.  Or unless I was particulary shallow, but that's not me that's &lt;a href=&quot;http://www.hotornot.com/r/?emid=EREUKZ&quot;&gt;Dave&lt;/a&gt;.  Anyway, as it turns out it pulls a right ending out of the bag.  So pretty good. I could see this ending up as some wierd film.  Read some more reviews &lt;a href=&quot;http://www.amazon.co.uk/exec/obidos/ASIN/0099283360/qid=1036627166/sr=2-2/ref=sr_2_3_2/026-7242428-7987649&quot;&gt; here&lt;/a&gt;.  Worth a read as long as you don't mind gratuitous wanking&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Barca editing</title>
   <link href="http://atomicules.co.uk/2002/11/06/Barca-editing.html"/>
   <updated>2002-11-06T00:00:00-08:00</updated>
   <id>http://atomicules.co.uk/2002/11/06/Barca-editing</id>
   <content type="html">
		
				 &lt;p&gt;Have started to off load some of my Barcelona footage.  Kind of glad I didn't come back with 10 hours of footage, beacuse it takes long enough to go through a single tape.  Let alone edit it.  My day job is really getting in the way of things.  I just don't have enough spare time.  Or enough sleep at the moment.  &lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Ring</title>
   <link href="http://atomicules.co.uk/2002/10/24/Ring.html"/>
   <updated>2002-10-24T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/10/24/Ring</id>
   <content type="html">
		
				 &lt;p&gt;I hadn't realised that the recent showing of &lt;a href=&quot;http://us.imdb.com/Title?0298130&quot;&gt;The Ring&lt;/a&gt; at &lt;a href=&quot;http://www.uci-cinemas.co.uk/2000/whatson/cinemas/uci28/index.html&quot;&gt;my local cinema&lt;/a&gt; was prompted by the recent release of a &lt;a href=&quot;http://us.imdb.com/Title?0298130&quot;&gt;remake&lt;/a&gt;.  I can't vouch for the remake, but the original Ring series (&lt;a href=&quot;http://us.imdb.com/Title?0298130&quot;&gt;Ring&lt;/a&gt;, &lt;a href=&quot;http://us.imdb.com/Title?0218553&quot;&gt;Ring2&lt;/a&gt; and &lt;a href=&quot;http://us.imdb.com/Title?0235712&quot;&gt;Ring-0&lt;/a&gt;) in Japanese are superb and well scary.  I think the fact that you have to read the sub-titles and thus cannot look away from the screen really help.  I can't imagine a &lt;a href=&quot;http://www.dreamworks.com/thering/&quot;&gt;hollywood-ised version&lt;/a&gt; being as good, but the &lt;a href=&quot;http://us.imdb.com/CommentsShow?0298130&quot;&gt; reviews&lt;/a&gt; aren't too bad.  Maybe I'll go and see it.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Mo' Tabs</title>
   <link href="http://atomicules.co.uk/2002/10/15/Mo-Tabs.html"/>
   <updated>2002-10-15T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/10/15/Mo-Tabs</id>
   <content type="html">
		
				 &lt;p&gt;I'm addicted to tabbed browsing, be it &lt;a href=&quot;http://www.mozilla.org&quot;&gt;Mozilla&lt;/a&gt; or &lt;a href=&quot;http://chimera.mozdev.org/&quot;&gt;Chimera&lt;/a&gt; (Probably even &lt;a href=&quot;http://www.opera.com&quot;&gt;Opera&lt;/a&gt; if I had it) I just can't seem to help opening every link I click on in a new tab.  It's not like tabbed browsing is new and I don't even think I realise I am doing this.  There is obviously no need for this behaviour, but for some reason I seem to feel I must not move forward from the page I'm on (it's like I don't possess a &lt;strong&gt;back&lt;/strong&gt; button), but instead must leave it intact incase there is a link I've left unexplored.  I really must stop or get a widescreen monitor to fit all those tabs&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Coupling</title>
   <link href="http://atomicules.co.uk/2002/10/07/Coupling.html"/>
   <updated>2002-10-07T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/10/07/Coupling</id>
   <content type="html">
		
				 &lt;p&gt;This programme is the most funniest thing (if you are me) on telly at the moment: &lt;a href=&quot;http://www.bbc.co.uk/comedy/coupling/&quot;&gt;Coupling&lt;/a&gt;.  It's just all so true.  Check here for some good moments: &lt;a href=&quot;http://www.richardcoyle.fsnet.co.uk/JEFF%20PLUS/jeffquotes.html&quot;&gt;RichardCoyle&lt;/a&gt;&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Bosstones</title>
   <link href="http://atomicules.co.uk/2002/10/03/Bosstones.html"/>
   <updated>2002-10-03T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/10/03/Bosstones</id>
   <content type="html">
		
				 &lt;p&gt;Went to see &lt;a href=&quot;http://www.bosstones.com&quot;&gt;Mighty Mighty Bosstones&lt;/a&gt; last night at &lt;a href=&quot;http://www.umu.man.ac.uk/&quot;&gt;Manchester University&lt;/a&gt; and had a suprise bonus of &lt;a href=&quot;http://www.snuff.net&quot;&gt;Snuff&lt;/a&gt; supporting.  Good to see both of them since I haven't seen either for a couple of years.&lt;/p&gt;&lt;p&gt; Both are definitely getting old (as were NOFX at Reading).  Makes me wonder how old you can be and still be punk.  Be dead funny to see them at the age of 60 on stage.  Don't think they would be quite as lively somehow.&lt;/p&gt;&lt;p&gt;Walking through Manchester last night makes me want to be a student again.  Ohwell, live for the weekends now&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Site Launch</title>
   <link href="http://atomicules.co.uk/2002/09/06/Site-Launch.html"/>
   <updated>2002-09-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/09/06/Site-Launch</id>
   <content type="html">
		
				 &lt;p&gt;So the idea of my own site has been kicking around for about 2-3 years now.  Not very quick am I.  Think I've finally got most of the &lt;a href=&quot;http://www.w3.org/Style/CSS/&quot;&gt;CSS&lt;/a&gt; to a point where I am happy with the look on windows and mac.  Happy enough for now anyway.  Please &lt;a href=&quot;https://profiles.google.com/u/0/i5ivem/about&quot;&gt;contact&lt;/a&gt; me with any glarring errors.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>Reading Festival</title>
   <link href="http://atomicules.co.uk/2002/09/06/Reading-Festival.html"/>
   <updated>2002-09-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/09/06/Reading-Festival</id>
   <content type="html">
		
				 &lt;p&gt;Anything interesting recently? Hmmm.&lt;/p&gt;&lt;p&gt;Went to the &lt;a href=&quot;http://www.readingfestival.com&quot;&gt;Reading Festival&lt;/a&gt;.  Everyone I know finds this odd since I live right next door to &lt;a href=&quot;http://www.leedsfestival.com&quot;&gt;Leeds&lt;/a&gt;.  But it is better.&lt;/p&gt;&lt;p&gt;Highlights of the weekend.  Seeing &lt;a href=&quot;http://www.epitonic.com/artists/peaches.html&quot;&gt;Peaches &lt;/a&gt;play.  Chosen purely on the picture of her arse and hotpants in the programme, I was a bit disappointed to find out she was a rough looking mullet wearing 40ish year old (at least looks like it) Canadian.  No musical talent whatsoever did not stop her from being the most entertaining thing I saw all weekend.  Pissed out of her head she was half singing half MC-ing whilst downing bottles of red wine.  Her cohort, &quot;Minion&quot;, was a better singer but even stranger and made her entrance be rolling around on the stage to the music tied up in ropes.  The highlight of the set was when they disappeared for ages (everyone thought she had finished and started leaving) only to re-appear on the stage both in black hot pants.  Stood to attention,  they started singing a song called &quot;Shake your tits&quot; with actions, and then opened their legs to produce two huge red strap-ons.  The song, which I shall remember for ever and may even feel inclined to performed at a party if drunk enough, then became &quot;Shake your tits and shake your dicks&quot;.  With actions.  Classic.&lt;/p&gt;&lt;p&gt;Musically:&lt;br /&gt;RAD: Janes Addiction, Reel Big Fish, Spunge, Fingathing (just ace), Herbaliser, NOFX&lt;br /&gt;BAD: Goldfinger (only because they came on late played for about 10 mins and had the cheek not to play 99 Red Balloons!  Made me miss Less than Jake as well.)&lt;br /&gt;COULD HAVE BEEN BETTER: Prodigy.  Although the cover of Madness' Night Boat to Cairo was good.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>OSX fulltime, finally</title>
   <link href="http://atomicules.co.uk/2002/09/06/OSX-fulltime-finally.html"/>
   <updated>2002-09-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/09/06/OSX-fulltime-finally</id>
   <content type="html">
		
				 &lt;p&gt;Been spending most of this week finally upgrading to &lt;a href=&quot;http://www.apple.com/macosx/&quot;&gt;Mac OS X&lt;/a&gt;.  Been a long wait since I first tried out the Public Beta, but worth it.  Even seems to run OK on my G3 imac.  Had to spend enough to upgrade this to get OSX on it: another hardrive to back-up, more memory and then Jaguar itself.  Would love a &lt;a href=&quot;http://www.apple.com/imac/&quot;&gt;G4 imac&lt;/a&gt; though.&lt;/p&gt;&lt;p&gt;So now I've finished upgrading I can get back to filling in all the blanks on this site.&lt;/p&gt;


			
   </content>
 </entry>
 
 <entry>
   <title>First Post!</title>
   <link href="http://atomicules.co.uk/2002/09/06/First-Post%21.html"/>
   <updated>2002-09-06T00:00:00-07:00</updated>
   <id>http://atomicules.co.uk/2002/09/06/First-Post!</id>
   <content type="html">
		
				 &lt;p&gt;Well here we go then...&lt;/p&gt;&lt;p&gt;After playing about with mozblog I've decided to give it a miss for now.  Deleting about 10 blank posts, all apparently posted within exactly the same second, isn't fun.  It could just be the shit connection we have at work though, I think the entire company is routed through a 28.8k modem.&lt;/p&gt;&lt;p&gt;There goes the idea of browsing and blogging at work.  Back to work then...&lt;/p&gt;


			
   </content>
 </entry>
 
 
</feed>


