Universal Plug & Play aka UPnP is used by a lot of networking devices and software to communicate with each other for automatic setup/installation.
Many software programs and games that need inward-bound internet connectivity can automatically configure your UPnP broadband router for their use. Examples of these programs are Instant Messengers such as MSN Chat, and Bit Torrent clients like uTorrent and Azureus.
If your programs are having trouble with UPnP, you can use the following links to troubleshoot, including a handy small program that will detect what steps you need to take to get UPnP going.

UPnP Troubleshooting Page
Download the UPnP Test Program
Tags: plug and play, universal, UPnP
20 Top Optical Illusions [Telegraph.co.uk]
Some I haven’t seen before, and some of the most famous. Trippy!
Tags: illusion, optical, optical illusion
It’s quite common on many websites, particularly forums, to post links to images.
Unlinker is a very popular plugin for Firefox, which allows you to change the links to images in the page to in-line images.
Opera doesn’t have a fully-fledged plugin system like Firefox (which is a pro just as much as it is a con), but you can customize it using User JavaScript.
I’ve made a simple script to implement a very basic version of Unlinker. It will scan the page for links to images, and embed the image in the page under the link. It currently also scales the image down while maintaining aspect ratio if it exceeds 640×480.
To use this, create a directory on your machine to store your user javascripts, and save the source there as unlinker.js (or whatever name you like).
The source code is:
document.addEventListener(
'load',
function (e)
{
var isImageRegex = new RegExp("\.gif|jpeg|jpg|png|bmp$", "i");
var allAnchors = document.getElementsByTagName("a");
for( var i = 0; i < allAnchors.length; i++ )
{
var anchorElement = allAnchors[i];
var link = anchorElement.href;
if( link && isImageRegex.test(link) )
{
// The image tooltip will show the full image address
anchorElement.title = link;
// Create the image, giving it a border and some padding, resetting
// some styles and don't make it exceed 640x480 dimensions, auto-scaling it down
var image = document.createElement('IMG');
image.src = link;
image.style.border = 'solid 1px #ccc';
image.style.padding = '0px';
image.style.margin = '0px';
image.style.float = 'none';
image.style.maxWidth = '640px';
image.style.maxHeight = '480px';
anchorElement.appendChild( document.createElement('BR') );
anchorElement.appendChild(image);
anchorElement.appendChild( document.createElement('BR') );
}
}
},
false
);
Tags: javascript, opera, unlinker, userjs
Elinor and Julia visited from New Zealand, and we went to Paris and hung out in London for a few days. I’ve posted some photos on Facebook but I’ll try to blog something about it at some point. Was good fun, and nice to see Els and get some travel done (even if it was to Paris again).
So I’m ready to get cracking into work again and get prepared for my return to New Zealand which is really only weeks away.