Skip to main content


Showing posts from 2009

Removing dead tracks from iTunes

On occasion, for one reason or another, iTunes seems to have a link to a file that no longer exists. Your options are then to either hunt for the file manually, one by one, or manually hunt and delete all the dead ones. There is a handy exclamation point icon that will tell you which are broken, but there is no way to filter for these. Fortunately, thanks to a bit of logical jiggery pokery, you can use Smart Playlists and a cunning quirk of iTunes to do it for you. Herein lies a step-by-step guide to finding all those annoying broken links. Step 1 Create a new Smart Playlist with a single Artist Does Not Contains rule. Put some garbage into the search field so it will return every artist. Call this playlist "All Music". Step 2 Create a normal playlist called "Working Music". Step 3 Create a Smart Playlist with 2 rules. These are: Playlist - is - All Music Playlist - is not - Working Music

iTunes Dupe Wrangling

Using a music management program like iTunes can be very useful when keeping a large collection in order. It can rename files, keep them organised in a decent directory structure and let you browse and edit the tags with ease. Perfect, as long as the songs you import are all properly tagged and have no duplicates. If anything is wrong, though, it can be a royal pain in the posterior. When creating an iTunes library out of an existing music collection, it is often the case that an existing set of MP3s has to be imported into an existing iTunes library. In this case, many terrible things can happen, including duplicates and MP3s with subtly different (and sometimes incorrect) tags. Enter Dupin , from Doug's AppleScripts . Dupin is a handy iTunes duplicate finder and remover. This is not a free tool, but if you're dealing with several thousand MP3s and don't fancy the agony of the iTunes dedupe tool, it's well worth a tenner. The key to ef

Pallas at the Monty Hall

Last night I went to see a classic prog rock band at my local Classic Rock Society venue, the Montgomery Hall in Wath-on-Dearne. I went to see Pallas there a couple of years ago, and they put on an amazing live show. They might not have the lightshow, the arena-sized crowds or the support of big labels, but they have what matters; enthusiasm, talent and showmanship. Looking around the room and seeing maybe 110 people, averaging about 45 years old, it struck me that it is a good job the CRS exists. Somebody needs to be promoting gigs for great bands like Pallas, Magenta and Threshold, even if only to a handful of faithful followers in Wath. Old rockers never die, and new rockers are coming along all the time. Cheers, CRS, for letting us see them!

Bad code is good?

I has been recently pointed out to me, after a rant on the state of a particular codebase, that I actually love terrible code. The only time I sound truly enthusiastic about my job is when describing just how badly factored, bug-ridden and generally god-awful a piece of code is, and just what I'm going to do about it. The only time I sound happy with my job is just after refactoring, reworking, rewriting and thoroughly debugging said code, and I have an air of triumph about me. So, is bad code, in fact, the only thing that makes my job even remotely bearable? Discuss.

Backup the Apples and Pears

It's often said that a backup strategy is only as good as the corresponding recovery strategy. Your backup is useless, after all, if you can't restore from it. Unfortunately I have recently had to test the backup strategies I have been using for my two most frequently used computing devices; my iPhone and my Macbook. The sad demise, and subsequent revival, of my iPhone has already been documented in a previous post. Thanks to the joy that is iTunes, my phone was automatically backed up the day before the incident, minimising the amount of lost data. The worst thing I lost was my Rally Master 3D save-game, so no big deal. I have used several mobile phone sync/backup tools before, and suffice it to say that they suck. Often flaky or having badly integrated 3rd party components, I have yet to find one that really syncs properly. Even the venerable Palm handhelds (yes, I know they're not phones, or at least, didn't used to be) became a nightmare to sync once they starte

Apples and Oranges

So good news, everybody! Apple's lovely, lovely iPhone is available on Orange now. My carrier is officially supported! I shall be upgrading to a shiny new 3GS in about 4 weeks, which is the earliest my contract allows. In the meantime, I'm still using the iPhone 2G, suitably unlocked to accept my Orange SIM. Unfortunately, it all nearly went terribly wrong. I did a routine reboot yesterday and when it came back on, it was deactivated. This means that it was prompting me to plug it into iTunes to allow Apple to reactivate. Bugger. So, what the hell, I tried it. Sure enough "Your SIM is not supported." Arse. It's been working fine for 6 months on official firmware, but no longer it seems. As soon as I put an official Apple firmware on there, it immediately locks me out. Fortunately I am in the habit of backing up regularly so all (well, most) of my data is safe. I just need a way to activate the thing. A quick Google indicates that redsn0w is the way to go. Su

Updating the iPhone APN

I just got a new little update for my iPhone. Yay, thinks I, and so it is installed. What does it do? It bloody well hides my APN settings and sets them to O2. My iPhone is on Orange. Now my data doesn't work unless I use Data Roaming. After digging around for a few moments, it became abundantly clear that the settings page for APN has completely disappeared. I can't actually change the settings on the device itself. This is a pain. Enter, a very handy little website for doing exactly what I need. So use it, go to from Safari on your iPhone. Follow the on-screen prompts, enter the proper APN data, and voila, a little settings bundle appears. Install it, and you're good to go. It took just a few seconds to change it on mine, and after disabling Data Roaming, I still get access to the web. Marvellous. Edit : It does do something else ... now the text that says Orange in the corner is slightly larger and a bit fuzzier. Well wort

Software as an Enabler

Over my long, somewhat protracted software development career, I have come across many situations of what I like to call "software as a disabler". Situations in which the software seems to work against the end user using arbitrary constraints or limitations that, to the developer, make perfect technical sense. This phenomenon is perfectly summerised by Little Britain's famous catchphrase "Computer says no". How many times have you used software that just wouldn't quite let you do what you want to do? A lot, I would wager. Problems such as these often occur due to over-ambitious implementation of requirements, usually at a very technical level. Consider a simple calendar application for scheduling meetings. It makes logical sense that users would not want to be double booked, so a naive developer may put in a constraint that prevents such a situation from occurring. The hapless end user comes to the software. They have a meeting scheduled with a client on

Hints for X11 on Mac OS X

One of the lovely features of Mac OS X, being based on Unix technology, is that it's possible to run X11 based applications with an almost native look and feel. Unfortunately this doesn't translate completely due to the way the X11 server is implemented. It is a single app, and all X11 windows are considered children of it, so the OS X window manager treats all X11 windows as a large group. This does mean, however, that those of us used to working with X11 apps in a different way to OS X native apps can do so, as long as you don't mind the slight mismatch of behaviour. One of the first things folk notice about the OS X window manager for X11, quartzwm, is that the mouse focus model is completely unintuitive. Focussing a window requires clicking within it, but then activating controls requires another click. You can't just move the mouse over to a window and click, and expect anything to happen. This is usually resolved in one of two ways; turning on "focus follow

NAS Replacement Tat

I have purchased a couple of bits to replace the now defunct Iomega NAS that once graced the shelf next to my battered Compaq laptop and somewhat eccentric router. This should hopefully allow me to rescue and reuse the 500GB SATA drive, while I cheerfully throw the NAS enclosure out of the nearest sixth floor window. This is the caddy: This is the interface card: Hot from Hong Kong, don't you know. They should arrive sometime within the next 5 to 28 days. About right for Parcel Force. I've had my fill of £100+ drive enclosures. This little lot set me back a grand total of 16 quid, including international postage.

Of ActiveX, and service packs, and firewalls, and things ...

I have recently had cause to reinstall a Windows XP Pro machine after a serious virus infection. Not a big job, really. I'm sure I could go on about how installing $linux_distribution only takes 20 minutes, but all in I reckon a full XP Pro install, including drivers, should only take about an hour. Or so I thought. What actually happened was a comedy of errors lasting almost 20 hours filled with grief, annoyance, frustration and a large amount of tea. The basic installation worked fine, the drivers all went on perfectly, and even the PCI wireless card was no problem. All was looking well, until I tried to update to the latest service pack. Upon launching the Windows Update site, I was presented with the usual "checking version" message that precedes every scan for updates. So far so good, but a couple of minutes later it all went badly wrong. Rather than the nice list of service packs and hotfixes I was expecting, all I got was an error message: 0x8DDD0004. Nice and

Sheffield CAMRA 35th Steel City Beer Festival!

The first weekend of October has rolled around, so once again it is time for the Sheffield CAMRA Steel City Beer Festival. Now in its 35th year, the festival has seen a lot of change in the recent past. After the terrifying ordeal that was the Darnall Liberal Club, standing out in a field with beer seems like a much nicer proposition. Unfortunately, reviews of the 34th festival were tainted with dissatisfaction, both with the venue and the organisation as a whole. I didn't attend last year, but I attended this year with some trepidation. Thankfully, the whole event was better run than I had been led to believe, but not without its fair share of hiccups. Two marquees provided more indoor space, the place didn't smell like a donkey sanctuary, and the beer tasted great. There were around a hundred beers to try, and thirty ciders, so even more than some previous years. After a couple of false starts, our little troop of merry drinkers (myself, Emma and Chris) finally arrived at

The Snow Leopard Cometh

After using my lovely Gen1 Macbook for nearly three and a half years with it's default Tiger install, I decided to take the plunge and upgrade to the latest incarnation of Mac OS X, Snow Leopard. I never upgraded to Leopard because, well, Tiger did everything I want and better the devil you know. Or something. I dunno, Leopard just never really "clicked" with me. However, as soon as I heard about what Apple were doing with Snow Leopard I signed up for notification of release. Snow Leopard isn't a dramatic upgrade from the point of view of the user interface. It's very much just Leopard with polish. But what polish! Lots and lots of small incremental improvements, including a smoother Dock, better popout windows for folders in the Dock, an overhauled Finder, improved window display in Exposé, better image preview and selection in the picture importer ... Just generally better. Installation was ... well, very boring. Insert disk, double click installer, click co

iPhone OS 3.0.1 fixes SMS hijack bug

A lot of Apple haters have been rubbing their tiny hands with glee recently after news reports of a security flaw in the iPhone OS 3.0 that could allow hackers to "Hijack every iPhone in the world" . Many were quick to point out how slow Apple were for not releasing a patch, and many simply made it a soap box for "iPhone sucks, use Android" rants. However, on July 31st, Apple released iPhone OS 3.0.1, with a patch for this SMS issue. It installs easily enough, job done. Of course, not being privy to such information as how to hack my own phone with this exploit, I can't check if it does the job. Either way, there it is. A fix. More detail on the OS 3.0.1 release notes . on Mac OS X - Bullet point corruption fixed

One continuous gripe I have with on Mac OS X is the apparent failure to properly handle bullet points. It only affects MS Word .doc format, and looks something like this: This is apparently caused by the .doc format itself. Saving a .doc file in Word or and opening it in OOo will result in this bug. It is caused by a complete encoding failure on the part of the Word document format for bullet point symbols, as it explicitly looks for a particular glyph in the Symbol font rather than looking for the Unicode code point for the character. So, on machines that don't have the Windows version of Symbol.ttf installed ... it simply displays a nonsense character. OS X has its own Symbol font with different glyphs. Fortunately the workaround for this is very simple. You can use font substitution to make OOo look at a "Symbol compatible" font for the glyph - in this case, OpenSymbol. Open the preferences panel and navigate to the Fonts page. Then,

Autobots, transform!

So I just got back from seeing Transformers 2: Revenge of the Fallen , and having read various reviews from serious film-lovers and SF fans, I really didn't know what to expect. After all the anti-hype, I hoped it wasn't as bad as all the reviews made it out to be. But do you know what? I really enjoyed it. Yes, sure, it was absolutely ridiculous. The storyline was present, sort of, and there was a lot of very silly slapstick moments throughout the film, but none of that is really a criticism. If you were hoping that the Transformers franchise would be turned into a serious, epic SF story arc with poignancy and emotion, then you will definitely be disappointed. If you were hoping that it would be a comedy action flick with lots of things blowing up and big robots fighting a lot, then you are most certainly in for a treat! There's not a lot else I can say about it really. It was a good film insofar as it was very entertaining. If that's not the point of such things,

iPhone OS 3.0 Upgrade Joy

Good news! If you are fortunate enough to own an iPhone 2G, and have unlocked it to any network using my previous instructions ... The OS 3.0 upgrade will present no problems at all, except it seems that the Youtube application doesn't work unless you are on a "proper" iPhone contract. No idea why, but it claims not to even be able to contact Very strange. Not a big loss for me, seeing as I never used it, but there it is.   So just let iTunes do its thing and upgrade the phone. The baseband on the 2G remains untouched, as does the bootloader. It's all good.

Which are you supporting? The systems or the customer?

Last weekend, the company that used to host this blog ( 4Uhosting ) had a major meltdown, along with several other companies using the same datacentre. The UKGrid Greenheys DC had a major power outage, taking out many servers entirely and effectively causing many hosts to drop off the 'net completely. A news update on the support page at had the following to say: "We would like to make it very clear that this incident occured through no fault of ours. It could happen at any facility at any time. We rent floor space in UK datacentres to run our business and we do not expect this kind of thing to happen. Unfortunately, from time to time it does and we can neither predict, or prevent such problems." Fair enough, if your entire data centre melts down and takes servers out with it, you can't expect to have a great deal of control over the situation and it comes down entirely to disaster recovery. They did, in fact, do a grand job of moving their entire o

Unlocking an iPhone for non-O2 SIMs

So I finally joined the 21st century, boosted my Apple nerd cred, and got a funky phone to boot. An iPhone is now in my posession! So far so good, except for one small problem - I have 12 months left on my Orange contract and I don't really want to pay all that off now just to get an O2 contract. I need a way to get the iPhone to work with my Orange SIM. Enter ... QuickPWN and PWNTools ! These two excellent apps allow you to unlock and jailbreak your iPhone in style and comfort. It's not as straightforward as just following the instructions, though, so allow me to elaborate a bit. In order to unlock the iPhone, you need to build a custom IPSW package using PWNtools. This is because QuickPWN only builds a firmware to jailbreak the phone, rather than unlock it. For that, you need to replace to boot loader as well as the firmware. Ick. To build an unlocked boot loader, you need to have a copy of bl46.bin from somewhere. My first experiment in building a custom IPSW with PWN

Silverlight ... ouch!

For some reason, several places on the web with streaming video (e.g. ITV player ) have gone with Microsoft's Silverlight for the interface. I have no idea what Silverlight is like as a platform, but I do know that it's a really bad choice for streaming video. The main problem I have with it is that, on a 6MB/s ADSL connection, I get skip free performance from the likes of youtube and the BBC iplayer. Silverlight players, not so much. 0% left in the buffer every 30 seconds or so for even small videos, and there is no apparent way to change the buffer settings. If anyone knows how I can make Silverlight less crappy, please to be posting comments!

Joining the 20th Century

Being the Luddite I am, I have thus far shunned the idea of having a television in my flat. I really couldn't see the point, given that I have plenty of other things to entertain me, and the fact that there is seldom anything on. Anything I do watch I do so on DVD, iPlayer, or *ahem* handy, handy torrents. However, I do have two children who like to watch the these things, and it is much nicer to watch DVDs on a decent sized screen than on my 13.3" MacBook. I have previously used a projector for such purposes, but it's a faff to set up (don't have anywhere permanent to mount it) and in recent months the picture has turned increasingly yellow. So, I had a plan. Don't get a telly. Get a decent monitor instead. A nice TFT monitor would let me do all the things I currently do on a much better display. Genius. And that's exactly what I was going to do, until I saw a UMC 21.6" TV in Tesco for very little cash. I went over to my local Tesco (all of half a

Twitter, part deux

Some many moons ago now, I had a little rant about a new scourge on the internets ... the beast that is Twitter. In it, I said that I can understand the draw of social messaging (I use IRC and IM, so the concept is not alien to me) but that I can't understand the point of sending out details of the minutiae of your life to complete strangers. However, a long time has passed since I wrote that post, so I thought it time to revisit. Why? Well, simply because I've been actively using Twitter for a while now. Yes, I have been sucked in. Bugger. Seriously, though, I have started using it. The reasons are manifold and complex. Actually, that's a lie, it's very simple. A bunch of people I know also started using it more actively and I joined in. Why does anyone do anything on these social networking type sites? Because other people do. It's as good a reason as any. Although I have started using Twitter more actively, I still use it in a fairly limited way. For instance,

VirtualBox Guest Additions on Linux guests

This is just a quick post to remind myself how to do this, because for some reason I keep forgetting ... It might come in handy for others though! If you're installing the VirtualBox Guest Addition on a Linux guest, you might have problems with display resizing, mouse capture, and complete breakage if you upgrade your kernel. This is easily fixed. Just installed DKMS ( Dynamic Kernel Module Support ) before running the VBoxLinux*.sh script for your architecture. This handily enables automatic recompilation of the VirtualBox kernel modules if you change your kernel, and in my case, also actually makes them work in the first place. Double win! Hope this helps somebody. If not, it can just be a post to jog my memory in the future.

Cheap electronics and a loss of innocence

Today I decided to buy a new USB flash drive, seeing as I appear to have lost my old Kingston DataTraveler II down the back of a sofa somewhere. I figured I'd probably end up paying about a tenner, although most non-specialist shops sell them for about 20 quid or so. Imagine my surprise, then, when I checked the Boots photo centre and they had 4GB Sony MicroVault drives reduced from £24.99 to £4.99! So, while making a mental note that these things might eBay well, I headed to the till. While waiting, I perused the pack to make sure it wasn't going to be crippled in any way. Right on the front was a big star that I'd managed to previously miss, advertising the fact that the new Sugababes album is preloaded in MP3 format. I'm not sure the Sugababes would be pleased to know that their inclusion warranted a 80% price reduction! I found this use of MP3 format very interesting indeed. Sony are no strangers to negative publicity over their DRM policies. In fact, they are