This blog is – let me check – entitled ‘This Writing Life’, but that doesn’t mean I can’t post on topics that are only tangentially related to writing. So here goes. As regular readers will be aware, I’m a card-carrying Apple Mac user. The privilege of using such nice equipment was brought home to me recently during some enforced fraternisation with Microsoft Windows machines. Yes, I’m teaching introductory psychology at the moment and this means – because it’s a British university – that Windows PCs are fricking everywhere. Goodbye Firefox, hello Internet Explorer (the old version with no tab support). Goodbye Pages, hello Word.
Jeez, I hate Windows. Leaving aside the fact that the IT services at Canterbury Christ Church have opted for locking down their computers, it doesn’t take more than a few seconds for an incident to occur where I think, ‘Oi! Computer! No!’ because a pop-up has appeared asking me if I want to tidy up the desktop (‘None of your business’) or that Sophos Antivirus appears to be out-of-date (‘Guess what; it isn’t’). And it’s sluggish. And I have to hit ‘Start’ if I want to stop the computer.
Hey, I worked in IT for eighteenth months, and had a PC for ten years. I wrote my share of ASP and customised by computer every which-way but loose. I know my way around a Windows computer. But damn if I don’t hate Windows.
OK, the introduction to this article has rambled on somewhat. What I wanted to say is that I’ve found a Mac utility that other Mac users might well be interested to know about. Partly because of my travels through various Internet cafes (necessitated by the lackadaisical attitude of BT), I’ve been continually opening and closing my shared folders, turning on and off my Bluetooth connectivity, switching from ‘better performance’ to ‘better energy savings’. What I really needed, I thought (and still to) is a good location manager.
Introducing Marco Polo. Like the peripatetic Venetian, Marco Polo by David Symonds is built for travel. This free utility works with ‘contexts’. A context might ‘home’, ‘roaming’ or ‘plugged into the television’. Each context might have behaviours associated with it. So, for example, when you’re plugged into your TV, you might want to disable the screensaver. Or, when you’re out and about, you might want to have your VPN connection kick in just after you connect to a open wireless network.
How does Marco Polo know what context you are currently ‘in’? Well, here comes the science bit. The program uses sources of information probabilistically. What that? Well, Marco Polo knows whether my computer is plugged into the main or running on battery power. This is called a ‘source of evidence’. I’ve told that, if this source of evidence shows true, there’s a high likelihood that I’m at home in my office. So there is a probabilistic connection between the evidence of the power cord setting and the context that Marco Polo sets itself to (and, on changing that context, Marco Polo can fiddle with settings of the system like the screensaver).
Of course, that’s fairly straightforward. Let’s add something else into the mix: I know the name of my wireless router (the SSID), and when this router is present, there is a 100% probability that I’m at home. I can create a new context, which is: ‘at home, but roaming’ (in other words, checking email in front of the telly or something). With this context, I tell Marco Polo to use the absence of the power cord as evidence, plus the presence of my home wireless network. Marco Polo is able to combine the probabilities to produce a best guess for the current context.
This means that, as I wander around my house, around Canterbury, into the university and out, my computer is adjusting itself smartly to its environment.
When I’m in an Internet cafe, Marco Polo knows that (a) I’m roaming because the power adaptor isn’t plugged in, (b) that I’m connected to the net, (c) that the network is open (i.e. unencrypted). So: it changes the context to ‘Oot and aboot > Unsecured connection’. For this context, I’ve set up the following behaviours: turn off Bluetooth, turn off all my file sharing services (iTunes, personal folders, etc.), switch to ‘better energy savings’, and connect securely to my VPN server so I can check my email with worrying about sending my passwords in the clear.
I know that Marco Polo is doing these things because the programmer has been smart enough to include Growl support. So I get a little message saying, ‘I think you’re in an Internet cafe connected to an unsecured network’, then one saying, ‘I’m now turning off Bluetooth, and so on’.
I love this stuff. It’s interesting because some of my academic research has been in the area of connectionist modelling (i.e. using groups of mathematically idealised neurons to solve mini information-processing tasks like grammar acquisition) and it’s quite similar in approach. Basically, artificial neurons are very good at tasks where they need to place a bet on solution to a problem based on multiple sources of evidence. The drawback to this approach is obvious: uncertainty, and occasional error. You wouldn’t want your email client to act like this. The difference between this approach and Marco Polo is that you don’t actually train Marco Polo in the sense of starting with a ‘blank slate’, allowing the program to produce its own probability values; you hard wire the values themselves.
But it’s a great program and a neat illustration of some creative problem solving. If you download and use Marco Polo, consider sending David a donation.
What’s that you say? Is there a Windows version?
Bah, and – I might add – humbug.