Monday, November 16, 2009

ObSrv: Why only 21 images at a time?

Read More

Aaron asked a good question they other day.


Why does ObSrv only ever return 21 images at one time?


I thought it was a bug in my code, but it’s not. ObSrv pulls images from Google Image Search, and Google only ever returns 21 images in one go.


But this is not a problem. The images are embedded into a MediaRSS feed. That feed is cached for a maximum of one hour. After this time if you request the same feed, ObSrv will search again, but will only show images that it didn’t show last time. In the unlikely event that it runs out of images, it starts searching from the beginning again.


So although there’s nothing I can do about the 21 images at a time issue, it’s not a major problem because you will get more images after the feed refreshes – but remember, to save server resources (and to stop Google from banning me) it waits an hour between doing searches on the same terms.


Saturday, September 05, 2009

On Yer Bike!

Read More

I took Steve and Harrison on a bike ride this morning, along the North Pine River, up to Lake Samsonvale, and then back along the North Pine Rover.


It was a hoot! A little bit slower than normal, because Harrison is only 9 and his bike is a bit worse for wear. But it was fun all the same.


And I got to try out a new program for my Nokia N95 mobile phone. Nokia Sports Tracker Uses the inbuilt GPS on the phone to record speed and height info. While you’re cycling, your N95 acts like a speedo, and odometer, showing you all the vital stats. But when you get home, you click the button, and upload the data to sports tracker.


The really cool thing is that if you take any photos with the phone on your journey, it will upload and geotag them.


So the map on the left here is where we went. You can drag and zoom it if you want more detail.


But the fun part is that the data is also uploaded to the Sportstracker community. Here’s a link to the data for our ride today. If you tick the “altitude” box, you can see every hill, and how fast we were going.


The thing I like most about this technology is that it adds to the fun of getting out and exercising. At times I’ve found it hard to overcome my inertia to regularly exercise. In regards to exercise, if it makes me think “Oh yeah! I want to do that again!” then I think it’s a great thing.


Oh – and you can use Sports Tracker for running, walking, skiing, rowing – whatever floats your boat.


P.S. I’ve ordered a mounting bracket to attach my phone to my handlebars. Till that arrives, I’m using some of Lilly’s hair ties :)


Sunday, August 30, 2009

Flickr RSS Feeds. Too big, too small

Read More

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 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 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:



<?php
date_default_timezone_set('UTC');
$uri="";
$first_var = "1";
foreach($_GET as $variable => $value)
{
if ($variable == 'uri')
{
$uri = $uri . $value;
}
else
{
$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("_s.jpg","_m.jpg",$data1);
$data1=str_replace('height="75"', "",$data1);
$data1=str_replace('width="75"', "",$data1);
echo $data1;
echo curl_error($ch);
curl_close($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 <> tags in the file to <>.


So if your feed URL was this:

http://api.flickr.com/services/feeds/photos_public.gne?id=8575807@N07&lang=en-us&format=rss_200


Use this instead

http://YourBlogUrl/FlickrRSS.php?uri=http://api.flickr.com/services/feeds/photos_public.gne?id=8575807@N07&lang=en-us&format=rss_200


This will change the tag to point to the lager sized image, so your slideshows will load quickly, and look nicer :)



Sunday, August 02, 2009

Cool technology

Read More
Six and mean

Lilly came in to my office the other day. “Dad I have to go out now. Can you get the TV to record my favourite show in an hour”.


“Hmmmm????”, I replied in typical pre-occuipied father mode.


But she had an intensity in her eye that made me realize I ignored this six year old at my peril, despite my displike of leaving my desk while in the middle of solving a problem.


Happily, I didn’t have to get up from my chair. I just logged in to IceTV, found the program she was interested in, and told my PVR to record it via the website.  My PVR is a High-Definition Beyonwiz DP-S1. It’s wireless, but I’ve wired it in to the house LAN so we can watch movies from our D-Link DNS323 1TB NAS


We also have an older Topfield 5000 PVRT.  It’s only standard definition, but the cool thing about it is that it has an open programming interfacem , so a lot of people have written their own software to get it to do cool things.  One application I added to it was ToppyPC by John De Angelis.  It has a program called “TWIN” which adds a web page to your Topfield PVR.  So you can set timers, and record shows, like IceTV lets you do with the Beyonwiz.   ToppyPC needs another utility to run – an FTP server (ftp4t by Aldarin) which runs on a PC which I connect to the Topfield via a USB cable.


All this technology is both good and bad. It’s convenient, but I don’t get the exercise I need going up and down stairs to program the PVR!


But at least I don’t have an angry six-year-old to contend with!


Monday, July 27, 2009

Some amazing facts

Read More



I just watched this fascinating Youtube video. The world is an amazing place!


Friday, July 17, 2009

My Inbox

Read More
Neil's empty inbox - a rare event

Neil's empty inbox - a rare event


 


Isn’t this beautiful?


I haven’t seen an empty inbox for years, and I love it! When it’s full I feel like I have the cares of the world on my shoulders. But when it’s empty, it’s like I’m making progress. Even if it might be illusory, I like that feeling.


So I’m going to persist in my strategy which can be described simply as:

If it’s junk, get rid of it.

If it’s someone elses problem, forward it.

If it’s worth reading, read it now, then delete it.

If it needs more info, request more info and delete it.

If it needs acting on, then act on it now, then delete it.


Monday, July 13, 2009

Slideshow from RSS for Wordpress

Read More




Loading…


It took me hours to find, but the easiest way I found to build a slideshow from a MediaRSS feed and add it to a WordPress blog was using the Google Ajax Feed API.


There are a few plug-ins that are supposed to work with WordPress, but I didn’t like them because they were really limited, or didn’t work on an IIS hosted blog. Good old Javascript, although it’s verbose, works fine.


That’s what I’ve used on this blog. Have a look at the slideshow on the lower right. It’s generated by the Google Ajax Feeds API.


If you don’t like getting your hands dirty with JavaScript, the best Flash based slideshow generator I know of is at VuVox.com. That’s what I use for some of the ObSrv examples of slideshows here.


The beauty of building a slideshow from an RSS Feed is that you don’t need to have the images on your own site, and the content updates continually as more items are added to the feed.


Of course, sometimes it’s hard to find a good feed. That’s where ObSrv.com comes in, because it can generate a feed from a google images search.


So when you use the Google Ajax Feed API and ObSrv.com you can make a slideshow of any topic you’d like. The one on this site is for “Information Technology”.


And just to make this post pretty, I thought I’d include a slideshow of the most recent ten pictures from the Creative Commons group on Flickr


Sunday, July 12, 2009

We've Moved!

This blog has moved!
The new address is


Please update your browser and RSS reader to the new links. All of my existing articles have moved too.

I'm now using WordPress as my blogging platform, and really like it.

If you've got any comments or suggestions, please let me know.

Thursday, May 21, 2009

Using Twitter

A few friends have asked me to explain twitter.

Rather that re-invent the wheel, I thought I'd upload a few links that explain what it's all about.

1. The official Twitter Help Resources / Getting Started

2. How to Use Twitter Without Twitter Owning You - 5 Tips (Tim Ferriss)

3. How to Use Twitter (Darcy Logan, includes great short video)

4. Newbie's guide to Twitter

5. Twitter Fan Wiki (Sort of like Wikipedia for Twitter)

6 HashTags

Actually HashTags deserve a post all of their own. I'll post something about that later.

I hope these links help. The bottom line for Twitter I think is to follow people who have something interesting to say. Don't just follow anyone, because then the interesting comments will get drowned out with "noise".

And the converse is that it's important make your posts useful. Say stuff that will be interesting to people who follow you. Here's some examples of people who post some really great twitter articles:

@Astro_Mike An Austronoaut tweeting from orbit
@tferriss Author and blogger on lifestyle design
@612brisbaneMy local ABC radio station

Oh, and if you're interested, I'm on twitter as @NeilEnnis

Sunday, March 22, 2009

ObSrv: Server Problems Fixed

I apologise for the unavailability of ObSrv.com over the last few days.

Our server failed, so we bought a new server, which also failed.

Not being one to give up easily, I've been on this issue since Friday lunchtime, and am relieved to say that as of about 10pm last night, everything is now working fine.

On the bright side, we have a larger, faster server so things should run much better than before.

Wednesday, February 25, 2009

RSS Feed Do's and Don'ts



To the right you can see a screen shot of three RSS feeds as seen on my iGoogle page. Two of them are good, one of them is not so good. Can you tell the difference?

They're all really specific in nature. The first one just shows breaking news as reported by the ABC. The second shows recent posts made be people about cruises in Australia via the CruiseCritic.com message boards, and the third shows new posts to the "General Cruise Discussions" section of the OzCruiseCritics message boards.

With the ABC feed, whenever there's a new story, it appears at the top of the list, pushing older stories off the bottom of the list.

Same with the Cruise Critic feed (the 2nd one). As a new post is received on a particular subject, that subject goes to the top of the list, pushing older ones off the bottom.

The problem with the third feed ("General Cruise Discussions") is three-fold:

1. The name of the feed doesn't do OzCruiseCritics justice. Anyone casting a quick glance at the feed doesn't know where it's from. With the first two feeds on this example, it's quite plain who's supplying them, but not the third feed.

2. The discussion topics are not formatted properly. The name of the feed is repeated in each of the item descriptions. E.g. you see "General Cruise Discussions :: Re: Queensland Cruise" and "General Cruise Discussions :: Re Snorkelling". This is redundant. We already know what feed the item is coming from by looking at the title of the feed. Each of these items should have a more concise description. In this case they should be "Queensland Cruise" and "Snorkelling".

3. You can't see it from the picture, but take my word for it, whenver someone replies to a topic on the OzCruiseCritics feed, it generates a new feed item. So if I was to reply to the "Snorkelling" discussion, the feed would end up looking like this:
General Cruise Discussions :: RE: Snorkelling
General Cruise Discussions :: RE: Queensland Cruise
General Cruise Discussions :: RE: Snorkelling

I think that is crowded and difficult to read. What should really happen is that if an item is updated, it goes to the top of the list, and the old version of that item is removed from the list. So the feed should look like this:

Snorkelliung
Queensland Cruise

These suggestions might seem pedantic, but the whole aim of RSS is to get your content read. Whish means the info needs to pack as much punch as possible, with as little clutter as possible. The reward for this is that your message gets out, more people hear what you say, and you get more traffic to your site.

Wednesday, February 04, 2009

ObSrv: Improved image search

I just fixed a couple of minor bugs which were preventing ObSrv from serving up images based on advanced google image searches.

They should be working ok now.

If you still have any problems, please let me know or reply to this post.

Friday, January 30, 2009

ObSrv: Getting an RSS feed from ANY site with images

I mentioned earlier that I'd modify ObSrv to be able to generate an RSS feed from any site that has images.

I didn't realize it, but it already does this.

Just key in the search words, followed by site:yourdomain.com

For example, if you want a feed of all images of the planet Saturn from Nasa.gov, just type in:
Saturn site:nasa.gov

Or for a feed of all images of Antarctica from NationalGeographic.com, type in:
Antarctica site:nationalgeographic.com

How cool is that?

Thursday, January 29, 2009

ObSrv: Some example image feeds

Here's some slideshows built on image feeds from ObSrv. If you've got some you'd like to show the world, please send an email to mail {at] ObSrv [d0t} com and I'll be happy to showcase it here for you.





Sunday, January 25, 2009

ObSrv: Watching the World

I've just completed a project called "ObSrv" which will convert Google Image Searches into MediaRSS compliant RSS feeds.

If you don't know what an RSS feed is, perhaps you should read this, or this. I love RSS because it's an easy way to let other people know what you're doing, and to find out news that is of specific interest to you. This blog (like almost all others) has an RSS feed. Most news sites and picture sharing sites have RSS too. This makes it easy for you to show their content on your website, or to view their content in an RSS reader.

If you don't know what MediaRSS is, you might want to read the specification. Basically, it's for a special type of RSS feed that contains media, such as pictures, video, and music. These feeds are cool because pictures, videos and music are much more entertaining than plain text. You can do more with them. For example, there's a slideshow on the right hand side of this blog that updates every few seconds with pictures of hi-tech gizmos. It's based on a Media RSS feed.

My favourite Media RSS application is John's Background Switcher. It updates the wallpaper on your computer desktop with pictures from a Media RSS feed.

My only problem with Media RSS is that the biggest source of images on the web (Google Images) doesn't serve up their image searches as an RSS feed. Which means that while you can search for images at google, you can't automatically feed them into a media RSS application.

That's where ObSrv comes in. It converts a Google Image search into a Media RSS feed.

Here's how:
  1. Go to http://obsrv.com/

  2. Type a few search words in the box. (Hint. If you want, do an advanced search in Google Images, and copy the Google Images URL into the box instead).

  3. Press ENTER or click on the "GO" button.

  4. ObSrv will give you the link to your feed.

  5. Click on the link to open the feed in a new window, or copy the URL for the feed from the textbox.

Here's some links to some applications that you can use with RSS Image Feeds:

John's Background Switcher (Windows desktop background switcher)

Vuvox (Slideshows)

Feed Reader

RSS Popper

What's Next?

I'll be adding functionality to ObSrv as time permits. My next task is to get it to convert any webpage containing images into an RSS Image Feed.