Mobile Apps and Web Solutions

Bedside Clock v3.0.1.0 for WP7 release notes

A minor, mainly bug fix release to our Bedside Clock for WP7 app has finally made it through the release process into the wild.

This change should hopefully fix some of the very occasional crashes being reported by the WIndows Phone Dev Center when the local weather forecast is being loaded.

Other than a few minor cosmetic changes - the settings page now follows the UI guidelines a bit better - it's still basically the same app as before.

Next step - which is still work in progress - is to make a Windows Phone 8 specific build using the improved features of the new OS.

If you see any issues with the update, feel free to drop us a line at


N.B. This blog post has now moved to

From Bing To Skype

After working on Bing for as long as it's been in existence - I was there back in the "Windows Live Search" days - I've now taken a position with the Skype team in London.

It will be a big change for me, and I'll really miss working with some of the smartest people I've ever met. However, I'm definitely ready to try something new and I'm very excited to move to Skype at what's a very exciting time.

I'll hopefully be learning lots of new skills and techniques - and reacquainting myself with some old ones! - so I'm also hoping I'll have some interesting things to post on here too.

N.B. This blog post has now moved to

Adventures in Posterous template design

I've got several blogs than run on Posterous - including this one - but to be honest the default templates are all a little dull. Therefore I thought I'd have a go at building my own fully customised template.

Now as you can see I'm no designer, but I am reasonably pleased with the results so far with just a few remaining minor glitches.

There are some obvious limitations on what you're allowed to put in your Posterous blog template, the main one being no additional JavaScript references are allowed - either to an external file or inline.

This is fair enough for security reasons, but that means the dynamic features of the Bootstrap framework I'm using don't work - for example trying to use a dropdown in the top nav bar now fails. Unfortunately this means the navbar doesn't really match the one on the main BraveLocation website, but I don't think there is anything to be done about that.

The other main problem which I haven't solved yet is the injection of the Posterous control at the top right of the page messes up the size and hence the alignment of the top navbar is slightly off. More irritating than anything else, and I can live with that as my CSS skills aren't strong enough to bother seeing if I can solve it.

Aside from those small issues, overall it's really nice this blog now at least resembles the main website, and for me I'm pretty happy with the way both look.

N.B. This blog post has now moved to

Updating my Chrome extension to manifest version 2

I got an email from Google saying I needed to update the manifest for my "Bing Translate" Chrome extension - which turned out to be slightly trickier than I thought.

According to the depreciation guide, developers need to update the manifest file that describes the extension properties to version 2 reasonably soon - although to be honnest without looking I have absolutely no idea what version Chrome is currently on.

You can see all the code on GitHub if you are interested, but the trickiest change was to do with the improved security model to help prevent cross site scripting attacks. In particular my code calls the Bing Translate API in a JavaScript call to, which I now had to specifically enable in the manifest file.

The line I had to add to the manifest was:

"content_security_policy": "script-src 'self'; object-src 'self'",

... a detailed explanation of which can be found on the Chrome Extensions documentation site

The key point to note is that this only works for https secure websites, but fortunately the Translator API also works via, so once I'd figured that out everything worked again.

If you are one of the users of this slightly useful tool, please go to Tools->Extensions menu and click on "Update Extensions now" to get the updated v1.1.

N.B. This blog post has now moved to

Making a JQuery Slideshow

I've been trying to learn more about jQuery recently, and had an opportunity to try to figure out how to make a slideshow on my friend Josie's web site.

Josie has been trying to show how she paints her fantastic pictures by taking a photo every hour during the creation process. We've been thinking for a while on how best to show this on the website, and decided on making a slideshow to animate the images as there are over 60 in the set!

Searching on the web, there are a lot of JQuery slideshows out there of differing quality, so I was very happy when I found a fantastic article by Jonathan Snook, that not only documented a simple but effective slideshow, but also explained how it worked.

You can see the complete code in the slideshow at, but basically it can all be done in a couple of lines of code which reorders the stack of images (which have been all placed on top of each other) dynamically.

I amended the code slightly by adding in a "pause" and "play" button via a simple boolean variable, and am pretty happy with the results.

I added the code to Gist if you want to use, improve, extend - and it turns out Posterous will automatically embed inline if I just include the Gist URL:


Jonathan's code is very elegant, so as well as coming up with a pretty simple solution I also learnt a lot about image handling and transitions in JQuery.

Just for fun, here's the completed picture of LeeLoo - Milla Jovovich from The Fifth Element:

N.B. This blog post has now moved to