Flickr RSS Feeds. Too big, too small


In this article about using slideshows in wordpress I showed you how to embed slideshows in WordPress blog posts and sidebars using the Google Ajax Feed API.

I prefer to use this facility to pull in Image feeds from Flickr.

The problem with the images in these feeds is that they’re either too large or too small.

The MediaRSS specification has a <media:thumbnail> tag which lets you have a thumbnail image in your feed. That’s great, but the image size of the thumbnail is 75×75 pixels, which is useless for a nice looking slideshow. It ends up looking terribly blurry with no detail.

The Google Ajax Feeds API tries to get around this by letting you specify a “thumbnailTag” in the slideshow options object. Basically, you set this to “content” to tell the API to look for the image in the “content” section of the feed, rather than the <media:thumnail> section. This is also great, but the problem is that Flickr uses the LARGE (or even worse, ORIGINAL) image size in this section. So you get nice large detailed images in the feed, but they’re so large that they take ages to load, and your slideshow sits there for ages saying “Loading….” while it grabs the huge images and chews up your audiences bandwidth.

So I wrote a simple PHP screen scraping utility which grabs the Flickr feed, and changes the ImageUrl…_L.jpg to ImageUrl….M.jpg – in other words, it modifies the feed to include the medium size image rather than the large size.

Medium sized images are fine for slideshows, and they load quite quickly.

Here’s the PHP code:

$first_var = "1";
foreach($_GET as $variable => $value)
if ($variable == 'uri')
$uri = $uri . $value;
$uri = $uri . "&" . $variable . "=" . $value;
header("Content-Type: application/xml; charset=ISO-8859-1");
$ch = curl_init() or die(curl_error());
curl_setopt($ch, CURLOPT_URL,$uri);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data1=curl_exec($ch) or die(curl_error());
$data1=str_replace('height="75"', "",$data1);
$data1=str_replace('width="75"', "",$data1);
echo $data1;
echo curl_error($ch);

Just save this in a file named FlickrRSS.php in the top folder of your wordpress directory. Then instead of using your flickr RSS feed, pass the feed as a query parameter to the PHP utility.

You’ll need to change the &lt; and &gt; tags in the file to < and >.

So if your feed URL was this:

Use this instead

This will change the <media:thumbnail> tag to point to the lager sized image, so your slideshows will load quickly, and look nicer 🙂

Outlook not showing embedded images

Sometimes when I received an email in Outlook with an embedded image, the image would not display, but I’d just see a white rectangle with a small red “X” in it instead.

This was nothing to do with the outlook security settings.

To fix the problem, I deleted the following registry key:


After I deleted it, I restarted outlook, and my images now appear fine.

What’s cool, what’s not?

Technology is cool.

There is so much new cool stuff you can do these days.

Here’s just a few:

ShipWatcher – a new website I created that lets you look at the webcams of cruiseships, view their progress on a map, and take photos of ships you like. Every hour ShipWatcher picks webcams that it thinks are “interesting” and take a couple of photos, automatically uploading them to….

Flickr – a fantastic service, from Yahoo that lets you share photos with other people, place them on a map, group them into sets and collections, pool them into groups with other people, and even track the type of camera that took the photo – to help you choose your next camera. I even used Flickr to share some great looking Photo Mosaics that I generated with…

Andrea Mosaic – a clever little utility which lets you generate mosaic pictures like this one I did, from pools of photos that you might have. In fact, if you have large pools of photos, you might be interested in…

Photosynth – amazing new technology from Microsoft that pools photos, organizes them in relation to each other, and lets you view a 3-d model of the real world, by aggregating thousands of photos. This really has to be seen to be beleived. I have a copy of it on my main machine which runs….

VMWare -fantastic software that lets you build “virtual” computers. You can configure a number of different types of computers with different amounts of memory, diskspace, networking abilities, each of which can run a different operating system like Windows XP, Linux, Vista, DOS, and run them all at the same time. You can even get your virtual machine to take a snapshot of itself. Do some risky stuff, and then if you don’t like the result, rollback your machine to the state it was in when the snapshot was taken. Great for demos, when you want the demo to revert back to its previous incarnation when you’re finished. If you have a laptop, copy your virtual machine from your desktop to your laptop, and it’s ready to go. Everything on the laptop is the same as when you last used it on your desktop. So easy to backup too. Just copy the virtual disk (one file). I use VMWare to do all my software development, including a cool web development tool called…

Iron Speed Designer – easy to use software that lets you quickly generate websites based on any existing SQL, Oracle or Access database. I’ve never developed websites before, and Ironspeed made it easy to look like a pro. Great stuff.

It seems things just keep getting better. Life gets easier for us. We can do more, in less time.

BUT. Some things aren’t cool. They make life harder. They suck. Even some things that are cool can suck. For example….

Iron Speed Designer – although a great tool, decided that they didn’t like people using their software inside a virtual machine. Aparently some people were using the flexibility of virtual machine software such as VMWare to defeat the copy protection mechanism. So the folks at Ironspeed decided they’d put a limitation in version 5 of their software that makes it refuse to run on a virtual machine.

You may think “so what?”. But think about what this means. If you’ve got your entire development environment inside a virtual machine. And one of your development tools stops working in that machine. What do you do? Uninstall it and move it to a real machine I suppose.

But I use MS Visual Studio in conjunction with Ironspeed. So I suppose that would have to come out too.

Then, to make it consistent, I suppose all my Visual Studio projects would have to come outside the virtual machine.

And then – what happens if I want to go out of town for a week and take my laptop. How do I easily move all this stuff from desktop to laptop?

The Virtual machine becomes useless. All because Ironspeed doesn’t like you using their products in a virtual machine.

So one software supplier digs their heals in over technological innovation. Where will this end?

I predict one of two things will happen:

1. Ironspeed will see the error of their ways, repent, and their next version will run inside a virtual machine. Probably with some sort of licensing service that runs on a physical machine to police the licensing policy.

2. As more developers start using virtual machines, another software vendor will release an alternatuve web development utility, that does what Ironspeed does – except the new software will run inside a VM.

People who work in the technology industry can’t run away from technological innovation. Or they will end up being people who USED to work in the technology industry. Technology is all about innovation. Anyone who wants to stay in the technology industry needs to embrace innovation, not shun it.

So, here’s my message to Alan Fisher and the great guys at Ironspeed: You guys have a fantastic product. I love it. It’s brilliant and makes my life easier. It’s worth every cent that I paid for it. But if you want me to chose between Ironspeed and my Virtual Environment, then I’ll chose the latter. I want my technological life to be easier, not harder.

Please change your mind.

UPDATE December 2007. The folks at Ironspeed have responded to user requests, and removed the restriction on ISD running in a virtual environment. Fantastic decision, guys. A great product just got even better. Thanks for listening to us!