Thursday, December 06, 2007

Rich Text Editors

As a regular reader of this blog, you may have noticed the different line-spacing on my last two posts.
I started using the 'Compose' editor in Blogger, instead of the 'Edit HTML' editor.

The 'Compose' Editor only started working for me recently, once Safari 3 came out. It is easier to use, but I am not sure I like the tighter spacing for reasons of readability.

As an aside, I was mildly shocked recently to realise that when you use some of the new breed of RTEs like the one on Dojo 1.0, the output HTML is different, depending on the browser you use.

While it is really great that cross-browser/platform RTEs are becoming a reality, I imagine that this lack of consistency is going to freak the bejebus out of some content-management types I know.

Sharing Calendars

Always on the hunt for replacements to the functionality that dot mac used to try to provide me, I decided to try out CalDAV. I chose the implementation by Apple, released as Open Source on MacOSForge.

Using these instructions, it was easy to install.

In short order, I had it installed, running on HTTPS with a self-signed certificate. A bunch of users and locations setup and ready to go.

Leopard comes with a built-in CalDAV client, the iCal application, I only have Leopard installed on one machine ATM (I have CalDAV running on an old Cube under Tiger), so wanting to experiment with sharing, I invited by brother in Australia to join me.

Once you have added your Cal Server account in iCal, it is as easy to create new calendars on the server as it is locally. I am confidant that when I have more machines running Leopard, they will all be able to share the same calendars between them.

Sharing a single user's calendar between multiple users is still a problem though. According to the plan, you ought to be able to assign levels of sharing in your own calendars from the client, this does not seem to work yet as far as I can tell.

My brother and I can share a calendar, and it works well, but in such a way that it has to be setup in advance via server configuration. I made a 'location' and added our two users to it. We can both add, edit and delete each others entries. We have not tried any of the auto-scheduling features yet.

I do not have access to Leopard Server, so I do not know if the version of Calendar Server that comes with it suffers from the same problems, but regardless, the free MacOSForge Calendar Server is already a very useful tool for any workgroup, club, family or individual with more than one computer (CalDAV is a cross platform standard).

If you have a server knocking around, give it a go :)

PS. I am spending the next two weeks in Holland doing some work. I will know pretty soon just how good or bad it is to be on the road using a remote calendar !!

New Design

I have updated and relocated again.

I have had a home page of one sort or another practically ever since it was possible to have one. I do wonder sometimes if it is worth the hassle, but occasionally people do find me through it, whether for work or some friend or family member looses my contact details, I guess it is still useful.

I really had to do something about the design (clearly ripped from Blogger), I had got so sick of it. Being such a stickler for good code, I had always hand-coded my site before. This time, feeling a bit lazy, I decided to see how iWeb would work.

iWeb has the look and intuitive feel of the iWork applications, which I like. However, unlike Keynote etc. it seems to lack the ability for the user to build new templates, most of the built-in templates are pretty nasty, but luckily there was one (Modern) which I found bearable.

I found iWeb very easy to use. I found not having to write the code myself (and make it work across platform), freed me up to think much more about what the purpose, message and content of the site should be, which was refreshing.

The Prototype AJAX library is built-in to iWeb-generated sites, this brings some quite funky behaviour, like a half-decent slideshow widget etc. which I appreciated. The implementation is a bit over-the-top though IMHO. The slideshow dynamically loads photos using an RSS feed to specify the contents, which while being clever, is a bit pointless, every file is overwritten during export, so this could have just been burnt into the html. Some of the things they do are just plain silly. If you want a link that opens in a new window, instead of just adding a target attribute, they add several JavaScript Event Handlers to do the same job ;-)

One behaviour I definitely appreciated was the ability to dynamically pull html snippets into the page at runtime. I used this for my email address, crawlers looking for this info will not find it, unless they execute the JavaScript.

Since iWeb was never designed for someone like me, I inevitably had several issues with it, here are some of them :

Layout: Not surprisingly, considering how the program works (like a DTP program) all of the layouts are generated using absolutely positioned div tags. What is unfortunate is that Apple decided to use fixed units of measurement (a bad mix of pt and px) meaning that the layouts do not scale properly if a user presses command-+, the individual divs begin to crop their content or overlap their neighbours. Interestingly, Apple realised this, but instead of fixing the code output, they seem to have fixed Safari 3 not to zoom iWeb sites (Safari 2 and Firefox still zoom) which to me is a strange way of working !! The way I have solved this in the past is to place a default text size on the body tag (font-size: 10px;) then use a relative unit em in the elements I want to scale properly. In this situation 1px = 0.1em. Easy.

Meta-Data: The ability to control meta-data is almost non-existent. You cannot do things like add your own title attributes to links, alt attributes on images, or add your own meta tags to the head. I am used to having full control over stuff like this, I like proper Dublin-core and geotags in my pages, yeah I am geeky :)

Standards: I am used to making my sites fully compliant with w3 standards, I like to get WAI-AAA compliance etc. as well. Of course this is just professional pride, so few people visit this site, it does not really matter ...... but it could have been something Apple just got right ......

URLs: Being a Cocoon developer, I am used to having absolute control over all URLs. iWeb is not really designed like that. iWeb is designed for pumping multiple 'sites' out to a single dot mac address. Each 'site' in iWeb has the site-name at the top level of it's URL. So that you can go from my.tld/ to the default 'site' Apple output a /index.html with a meta-redirect. I do not like that and you do not seem to have any control over it.

Conclusion: Well, the fact I actually published the HTML made by iWeb shows that I found it just about  good enough. I did resort to some post-processing on the exported files to solve some of the problems above, but this is obviously a nuisance. The point of tools like iWeb is that they make it really so easy to make and publish changes, you are likely to do it more often. Having to post-process the HTML really spoils that experience.

Note: Since publishing this site a few days ago, it has gone from 1st to 2nd position in Google when you search for my name, hmmm what have I done that they did not like?

[1] The site was hosted as a favour by Andrew Savory for many years. Many thanks Andrew! Now it is on an old Mac Cube at home.

Friday, November 30, 2007

Deranged Voip Setup

Ahhhhh VoIP, now there is a subject any self-respecting Sudo Masochist can spend long fruitless hours tinkering with !!!

I have a VoIP setup in my home/office. Parts of what I planned work, others do not.
I am surprised because I would have thought that what I am trying to do would be a relatively common requirement, with some decent documentation, but after many different attempts, I am still not sure if what I am trying is either conceptually impossible, or just unlikely to work because of bugs in the services and hardware that I use.

I have one PSTN line coming in, I have had this number for over 30 years, I do not wish to change it, it must be handled properly. Due to the mess that is the UK's telecommunications industry, it is not viable to port the number away from British Telecom, so I have to carry on paying them through the nose, just to be able to have calls coming in on that line.

I have accounts with 3 VoIP Providers, who between them give me the ability to make very cheap outgoing calls, a range of addressing schemes on which to receive incoming calls, voicemail that arrives via email, smart routing to the cheapest provider etc. etc.

The problem lies in merging the two.

I have a good quality ATA, a Linksys SPA3000. It can bring incoming PSTN calls into a VoIP network, and make PSTN calls from a VoIP network.

I have a good quality VoIP handset, a Linksys SPA 941, good build quality and physical controls.

What I'd like in the office, is to have one phone and one voicemail account, regardless of where the call originates from, or how it got to me. If I am out I need the whole lot to go to my mobile.

I am so close to getting this working, but the last part of the puzzle is still tantalisingly out of my reach ......

When a call comes in on PSTN, the SPA3000 is able to pass it through to one of the extensions of the SPA941 (also I can call out through this extension to the PSTN line via the SPA3000). What I cannot make work is to have the call forwarded to my VoIP voicemail box if it is not answered. I could make it go to practically any other voicemail box or phone in the world, but not mine, because the phone is registered to that account to be able to receive Message Waiting notifications, plus make and receive calls from that account.

You will not find this kind of detail in the glossy brochures ......

The only way I have found to make this work, and beleive you me, I have tried many, is to have calls coming into my office via PSTN, routed by the SPA3000 out over the net, via my Voice Service Provider and back to the SPA941 in my office.

I have the bandwidth for it, but it is a totally ridiculous way of working IMHO.

Part of the problem is the complexity and adaptivity of the technology.
The web configuration of Sipura products is the biggest html form I have ever had to use, it has no validation and the documentation is very poor (there are many parameters not even mentioned in the admin manuals).

The Voice Service Providers do not have Tech Support, they have online forums. In some it is rare to see any posting from an employee that is not a product or press announcement. What you do find is sporadic, often contradictory information from well-meaning but equally confused co-users of the service, each of whom are trying to set something up that is different from you.

A lot of what I hoped I could get working, works fine.
It is frustrating though, not to be able to deal with the last few details.

So even though you do not have to use the 'sudo' command much, I designate VoIP a fully-fledged Sudo Masochistic occupation :)

Thursday, November 29, 2007

Sudo Masochist

In a brainwave last night, I came up with a new pleasantly daft alter-identity.

What is a Sudo Masochist? Someone who gains dubious pleasure from the frustration of fiddling around on the Unix command line. [1]

( OK, I did warn you it was daft :) )

I always hated the command-line as a way of controlling a computer.

My first 3 computers, a Sinclair ZX81, Apple ][e then Apple ][gs all had to be controlled through the keyboard in one way or another ...... I always thought it was stupid, why have a computer if you have to struggle so hard to get it to do anything? The computer should be intelligent, not me !! (Which considering I was teaching myself 6502 Assembler, was pretty daft as well I guess).

My hate of the command-line was really reinforced when I did a short course in C programming at the then Polytechnic of Central London. None of us on the course learnt any C, we all struggled too much with the VaxVMS command-line and text editor to get anywhere with the language at all ...... anyway, I did not want to learn C, I wanted to learn Prolog (it sounded so much cooler) but I was the only person who elected to do the course that year :(

So then of course REAL computers came along!! I got a second-hand Mac IIci and thought: I am a confirmed GUI guy, I will never see the command-line again, and I was right for quite a long time ....... of course until MacOSX came along.

I use the command-line now of course, I suppose I grudgingly realise why it has survived all this time ...... I used to run MacHTTP on a Mac IIsi at Westminster University. I remember once an intense struggle in a hotel room in Melbourne on a slow modem and a long-distance call, trying to connect to it back in London via Timbuktu screen sharing, so I could click on a dialogue box which was blocking the OS.

So the other day I found myself doing a complete software download, compile, install and configure on a remote Mac via SSH of the Open Source CalDAV. Why? Because I was a bit bored and thought it might be interesting to play with.

Yup, I am a Sudo Masochist !!!!

On a whim this morning I grabbed the name on GMail :)
Much to my chagrin, the new account is immediately activated with IMAP available, and I am still waiting for it to be enabled on my main account :(

NB. For my non-geek readers, "sudo" is the command you use to pretend to be somebody else so you can issue a command on their behalf. Typically you pretend to be the 'root' user, the user who can do anything, even destructive things. Get a sudo command wrong and you can destroy your whole system.

Geek humour.

Wednesday, November 28, 2007

OMG !!

I just received this :

> Dear Jeremy Quinn,

> Thank you for your session proposal(s) for ApacheCon 2008/EU.

> You have been selected as a speaker for ApacheCon Europe 2008.
> The following session(s) has/have been accepted and scheduled:

> (2416) 'Break My Site'

Oh My Gosh !!
I did not expect this talk to be accepted at all.
I gave it once before, with any luck I may have another case-study to add.

Thank You ApacheCon Europe 2008 Selection Panel (I think)

Friday, November 23, 2007

Something Nice

At last, something nice to say about Leopard :)

Server Apache/2.2.6 (Unix) mod_ssl/2.2.6 OpenSSL/0.9.7l DAV/2

The Leopard Client has Apache 2 built in, hurray !!!!
Tiger had Apache 1.3.n which was not nearly so much fun :)

See : /etc/apache2/ for the configuration etc.

Ambiguous URLs

(Oh dear, he is complaining again)

Flickr have released a new section on their website called Places.
It is all about browsing photographs in a geographical context, something I am pretty keen on ....

Such a shame then that they have done it all wrong :)

OK, so maybe not ALL wrong, but look at this example and tell me they got the URL hierarchy correct for the UK.

The URLs appear in this form :

looks sensible enough right? Until you see how it is used :

OK, you say, so what is the problem?

Well in England there are at least two Brixtons that I know of, the one where I live in south London and one in Devon, near Plymouth. Do a search in the Places page and two Brixtons come up in the results, unfortunately they both have the same URL, and it points to the one in Devon.

I imagine this has happened to many places in Britain that share names.

IMHO it is the choice of regions in the UK that has caused this. Someone decided that the top-level regions in the UK are England, Scotland, Isle of Man, Channel Islands, Wales etc. Whereas I would say that from the point of view of wanting to disambiguate the URLs as much as possible, the names of counties should have been used.

Then we could have had :

While writing this and testing URLs I was playing with yesterday, I am seeing different results, so this indicates, I hope, that someone is tinkering, anyhow it was amusing yesterday to find that the place where I have lived for the last 30 years "does not exist on the planet".

As it is, the nearest I can drill down to my home is London, and this is a shame.

Thursday, November 22, 2007

Leopard Peeves

So, I just upgraded one machine to Leopard ...... here are my initial impressions.

The Stupid :

The translucent menu bar, bejebus what drugs were they on ?!?!?!?
It is so incredibly ugly !!!! Thankfully you can fix it easily, following these instructions.

The Broken :

The new Finder is OK I suppose, much too much emphasis on eye-candy for newbies IMHO (this is a general complaint I have against MacOSX).
What really pisses me off is that WebDAV Volumes on your local network, that broadcast their location using Bonjour "_webdav._tcp" do not show up in the 'Shared' section of the Finder's sidebar, until you manually mount it via the "Connect to Server" dialogue. I would call this a bug. I do not have a fix for this ATM.

The Crap :

Supposedly, Stacks were originally slated for Tiger, but withdrawn. I sincerely wish Apple had left them out of Leopard as well, specially as they have replaced perfectly good functionality with something far less capable. You used to be able to keep folders in the Dock, and have a menu of their contents popup, allowing you to navigate into nested folders. I used to keep my Home, Applications and the HD's root in the dock, allowing me to reach anywhere quickly. This was especially useful for quickly launching Applications you don't use often enough to keep in the Dock.
Stacks do not offer anything close. More fancy but useless eye-candy for people with like 20 documents. Totally unscalable with 100's of thousands of documents, specially as my Documents folder only contains folders at the top level. So now if I want something similar, I have more work to do, I have to manage folders full of aliases by hand, hmmm a great advance !!!!!

Spaces is interesting, but will take a while to get used to it's weirdness. What is badly needed IMHO is a contextual menu item for all windows, allowing you to move a window or all windows of a running application into a specific space. Dragging and dropping Exposé style miniature window proxies is too clunky. The officlal technique of "Move the pointer over the window, and hold down the mouse button while pressing the Control key and an arrow or number key." is totally bizarre !!! You'd need to be some kind of mutant contortionist! My hand is not big enough to hold down the control key and press arrows at the same time.

The Fix :
Oh joy, now I can finally type uninterrupted into Spotlight's search field!!! WOW!!!
You mean they could not fixed that in 11 updates of Tiger ????? GRRRR!

I sincerely hope that next time I write, I have something nice to say about Leopard !!!

Upgrading to Leopard

Ahhhh, my 100th post :)

I upgraded my MacBook to Leopard last night, here's what I did :

1. Wait until Leopard's first update.
2. Backup my Installer CD to a DMG file using Disk Utility, put the disc away in a safe place.
3. Set up an external HD with two partitions, one of about 8 GIG for the installer, the other large enough for a backup of my MacBook.
4. Restore the Installer DMG to the 8 GIG partition using Disk Utility and verify it.
5. Boot from the new Installer partition.
6. From the installer, switch to Disk Utility, repair the MacBook's disk.
7. Restore the MacBook's disk to the large partition on the external drive and verify it.
8. Check the backup boots OK. (Or, AT LEAST check it comes up in the Startup Disk panel!!)
9. Perform the actuall install, I chose to do an "Archive and Install". It worked fine !!

Sunday, November 11, 2007

Free Stuff

I gave to a stranger today, it went really well.

This old but good Denon tape deck had been stored under the bed for years.
I had never got around to selling it second-hand, it always seemed like too much hassle.

I found someone who wanted it through the Lambeth branch of FreeCycle.
FreeCycle exists to keep stuff out of landfill, our societies are so awash with redundant goods, but as even eBay has show, everything is useful to someone, if only you could find them.

I might have found someone willing to buy it on eBay, but then you probably have to ship it, you worry about the money exchange, yadda yadda, for what I was likely to get it did not seem worthwhile. FreeCycle's rules are simple: recipient collects, no one pays.

Through FreeCycle I got immediate response from about 6 people. I emailed the person who wrote first, they collected it in the morning. It even turned out they lived across the road! I could have just put it out in the street after all (like everyone else does, grrr!).

Next, there's that bloody scanner I got years ago, that never worked with SANE reliably, there's bound to be somebody local who could use it . . . . .

Friday, November 02, 2007

Hello Tiger

I had to replace my home server's broken Ubuntu. It is an ancient Mac Cube, so going back to MacOSX Tiger seemed like the easiest thing to do.

Using MacPorts, I installed Apache2, SVN, SSL etc.

With a WebDAV repository setup, I needed a way to broadcast it's URL over the local subnet using Bonjour, ironically for a Mac there did not seem to be a way to do it.

MacOS Client comes with a Bonjour Module for Apache 1.3, MacOSX Server comes with one for Apache2 (but I do not have it).
Linux can use mod_dnssd but as it is based on Avahi, I am pretty sure it won't work on MacOSX.

A bit of Googling and I found the dns-sd command. The man page says it is designed for testing only, but it seems to work fine, fired off once at startup.

I use this plist, placed in /Library/LaunchDaemons/

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "">
<plist version="1.0">
<string>Bonjour Shared</string>

Saturday, October 27, 2007

Touchy Mods

Someone asked me for more detail on the iPod Touch mods from my last blog entry.

But first, an aside :
One of the issues while writing in something like Blogger on the iPod touch or iPhone is that text entry can get a bit cramped.
I can be almost impossible to move the cursor to the top line.
You cannot select text, then click a button to do something to it, unlike the typical editing paradigm.
Writing rich-text editors that work in a web browser has never been easy, the new gesture interface of touch-type products is going to require some new thinking all round.

So, without copy and paste, text-selection, link buttons etc. I just could not be bothered to add links to my last blog post. Now I am writing this on my MacBook, it is less of a problem .....

Hacking My iPod Touch

I used iJailbreak, a pre-packaged set of jailbreak software, controlled by an AppleScript. Put together by AriX, a clever 13 year old (nice one lad).

There is next-to-no documentation, though do not let that scare you off, it is very easy and takes less than 10 minutes.

Following this vague run-through, I launched iJailbreak on a Mac, browsed the iPod to a URL for the famous TIFF exploit, then followed the steps I was asked to perform.

You need to re-boot the iPod several times during this procedure, so I recommend turning the Passcode Lock off (in Settings/General).

Lo and behold! There are several new icons in your home screen.

Delightfully, iJailbreak adds several of the applications from the iPhone that are missing on the iPod touch. Mail and Maps being the most noteworthy IMHO, as the mobile versions of Google Maps and GMail suck. I imagine Apple may not be too chuffed at this aspect of iJailbreak!

You can immediately start looking for more application to add, as iJailbreak thoughtfully adds the Installer package manager to your iPod.

I recommend that you first activate Sources/Community Sources, which adds a plethora of new applications to what is already there.

I immediately installed the lovely Sketches and the useful BSD Subsystem.

I had SSH'd into the iPod earlier, but found it did not have commands like 'ls' etc, so was not sure how I could use it, installing BSD Subsystem solves this.

You log in via SSH using the username 'root' and the password 'alpine'. These will be well known and I am not sure you can change the password or not. There clearly needs to be a way to turn SSH off!!

My final hack was to fix Calendar editing, the fix is here. I used Fugu on the Mac to log in to the iPod, navigate to the folder and make the edit via BBEdit, though this could have been done via SSH on the command line (now BSD Subsystem is installed).

So, I am happily using MobileMail to access my GMail account. MobileSafari is doing a great job. I read my RSS feeds using Google Reader, I find this is the best starting point.

I am watching recorded TV programmes streamed to my iPod from EyeTV.

I am controlling iTunes playback on my Mac with the music library, using Remote Buddy. Including control of which AirTunes speakers to play back through was masterful, not including access to iTunes Sharing is less so ......

ATM it looks like the iPod touch could be a really useful little general-purpose computer.

The situation is not stable however.

The TIFF exploit that allows the whole Jailbreak process to happen will surely be fixed soon, throwing everyone who updates back into the vanilla state again.

An official SDK is on it's way, but who knows what restrictions Apple will place on 3rd party application installation. For sure Apple won't like applications built-in to the iPhone appearing on iPods ......

What am I looking forward to?
Google turning on IMAP access more widely (I still do not have this option on my account).
MobilePreview getting PDF support so using MobileFinder etc. I can carry PDFs documentation around with me.
Some kind of MobileVLC or Perian video codecs for QuickTime so I can play more video formats.
A microphone hardware hack and a SIP VoIP client :-p

I confirm that my iPod continues to work fine (syncs with iTunes etc.) after I changed the default root password.
I only had to ssh in and run the 'passwd' command.

Friday, October 26, 2007


I am writing this on my new iPod touch, using
This little machine is impressing the bejesus out of me.

It was easy to jailbreak.
I have MobileMail and Google Maps etc. from the iPhone running.
The MobileCalendar hacked to allow editing.
SSH, BSD, MobileFinder, Sketch and other goodies.

I am demoing Remote Buddy to control the sounds around the flat and streaming video from EyeTV.

Crikey!! And I even have some music on it!!

Hey! One day this will even be an open platform!

Sunday, October 21, 2007

Grotty Gibbon

Yes, they have done it again.

Ubuntu have rendered my server un-bootable after following the recommended upgrade path from Feckless Fawn.

I don't have time to mess around like this any longer, this I expect spells the end of my attempts to use Ubuntu.

Wednesday, October 17, 2007

iPhone SDK it's Official

Apple released news that an iPhone (and iPod touch) SDK will be released in February 2008.

Well thank goodness for that!

I was becoming dismayed by the whole situation.
It seemed completely daft, Apple hampering such cool devices by not supporting 3rd party software.

I did not like the idea that Apple may move towards more closed platforms.

So greatly reassured, my iPod touch should arrive at the end of the month, it will be my first iPod.

After seeing stuff like Remote Buddy and hearing about the deal between FON and BT (I'm a Fonero) etc. it seems it could be useful for more than just portable media.

Wednesday, October 10, 2007

When in Rome

I just got back from a very pleasant week in Rome at the Cocoon Get Together, catching up with old friends and colleagues.

I would really like to thank Simone Gianni and his team for doing such a great job of organising and running the event, plus Gabriele and Maurizio for various extra-curricular activities they arranged : )

Rome is a beautiful city, the weather was lovely, the last touch of summer (my photos so far).

I have just published the talk I was honoured to give, the other talks are available here.

Being such a guilt-ridden eco-freak (and having flown to the West Indies twice this year already) I decided to go by train. London to Paris on Eurostar, a night staying with friends, the Artesia sleeper to Rome the next night.

I love travelling on trains, you meet people. Our couchette compartment was a magnet all night for drink and wild conversation. British, Italians, French, Russians and Americans, it was a gas.

The downside is that it is really expensive compared to flying and our sleeper carriage was in a very poor state of repair. I was in the same carriage in both directions, it had 2 toilets, 3 washrooms. 2 of the washrooms had the door broken off, 1 toilet and washroom had no water.

But everyone was so nice about it : )

Wednesday, September 26, 2007

Nice Feel

Had a play with the iPod touch yesterday at the Apple Regent St Store, (none for sale there until Friday).

Gosh !! It's really nice !!

Has a great feel to the device, really smooth operation.
One thing I found strange was the scrolling, I kept scrolling the wrong way !!
On a Mac, you scroll down by dragging the scroll bar down, on a touch, you scroll down by grabbing the content and dragging it up, it kept catching me out.

That home screen looks horribly empty though ....... there is a lot of missing functionality, it's weird that Apple would hamstring it in such a way. And it's looking like cracking the touch is proving a lot more difficult than the iPhone.

I saw two announcements for applications that really interested me :

Elgato's new version of EyeTV will stream video to the iPhone/iPod touch, it sets up a little streaming server on your Mac, you access it via MobileSafari. Watch your stuff wherever you can get a net connection, without filling up the device :)

Alloysoft has an application called Signal, another little server running on your Mac, which provides a web interface to MobileSafari to act as a remote control to iTunes on that machine. Looks like the only thing you can't do with it is switch the AirTunes speakers the mac plays to. This is pretty close to one of the items on my wishlist.

All very cool IMHO.

Monday, September 24, 2007

The Right Number

I do not use spreadsheets very often.
I do not make graphs from data very often either.

However, I had to make some graphs for my talk at CocoonGT2007.

I used the new Numbers from Apple, part of iWork'08.

I was very impressed. Slick, fast, intuitive.
From never having used it before, I was making what I needed within minutes, you can't say better than that, can you?

I needed to use graphs made in Numbers, within my presentation made in Keynote (the reason I have iWork).
Copy & Paste did the trick obviously, but what got copied?
I expected it would either retain a live link with the original file (like OLE?) or that it would copy over an un-editable object.
Wrong on both counts, it copies a Graph Object that is still recognised by Keynote, allowing you to further edit data there, (or further fudge your results, as the case may be ....... not that I actually had to do that myself of course !! )

It is not perfect, there are a few bugs with the graphics engine etc., shared by the other iWork apps ..... little niggles ..... stuff they will hopefully fix soon ......

There is a 30 day free trial, give it a go.

Saturday, September 22, 2007

Open Letter to TFL

Sent to the TFL contact page :

I really like what you are doing with the Transport For London website. Being a Londoner I personally find it very useful.

To make planning public transport use in London even more easy, I implore you to consider supplying the necessary data feeds to enable Google Transit to work in London.

Please see the specification here.

As you can see, a growing number of cities are doing this.

Many thanks for your consideration.

I should have done this ages ago

All Busses Lead To Brixton

I just noticed that Transport For London have a nice public-transport route-planner widget generator, that allows you to build a widget to place in your webpage, hard-coded with your location, to allow visitors to plan a route to you.

I just added it to my contact page.

Need I say, public transport is cheaper for you and your descendants than driving ......

Well done chaps !!

Wednesday, September 19, 2007

See You In Rome ?

I am happy to say that my proposal for a talk at CocoonGT2007 in Rome, has been accepted !!

Here is the outline for the talk :

Break My Site -- Practical Stress Testing and Tuning of Cocoon Applications

It is best to know before you go live, whether your new site will stand up to the traffic you expect it to receive. There is only so much you can tell about the speed and capacity of a web project from browsing it by hand. This talk offers practical advice, garnered from real-life experience about how to measure and tune the performance of Cocoon applications, using free tools like JMeter, the Open Source load-tester from Apache.

The talk will cover, planning your tests, setting up the tools, advise on what data to capture, how to interpret it and some of the possibilities for tuning your project.

It will help you answer questions like :

How many users will it take to break my site ?
How can I handle more users, faster ?
How reliable will my site be ?
How can I measure the effect of my changes during development ?
How do I compare different implementations of the same functionality ?
How do I determine the right size for my server infrastructure ?

Many thanks to the GT team!!

The program looks very interesting as usual, here is the complete programme.

Sunday, September 16, 2007

And now the good news

My bank did the decent thing and paid me back for the money spent fraudulently on my debit card.
They also got a replacement card to me.

It was all very inconvenient plus I lost two days at work dealing with it, but it looks like it is all over.


Thursday, September 13, 2007

Insecure Sharing

Still trying to find a work-around for sharing calendars between multiple Macs, now that I have dropped .Mac (as unreliable).

I have a WebDav Server at home, running in Ubuntu on an old Mac Cube.
It is set up to only work via SSL with a self-signed certificate.

Once I had set the certificate to be 'Always Trusted' in, iCal was able to publish the calendar via https://
Great I thought, I am on my way ......

The next step, subscribing to the calendar from another machine proved to be impossible, for some reason, iCal cannot subscribe via SSL, only publish.


This is so dumb !!!

Did Apple do this on purpose to somehow 'promote' .Mac ?

Will they fix this in Leopard, with the new support for CalDAV ?

Wednesday, September 12, 2007

Eastbourne Man Edits World-Famous Book

The (original) title of an article in a local Eastbourne newspaper, written by Howard and friends as a piss-take against all those in the town who never thought Dr. Howard Cunnell would amount to anything.

I spent a very pleasant evening at the Cunnell household last night.

One of the highlights being the chance to look at the new UK and US editions of "On the Road: The Original Scroll by Jack Kerouac". Currently receiving great reviews in the US literary press.

This is a new edition of the world-famous book, transcribed and edited from the original scroll, apparently far closer the original than the old edition.

Howard's first novel is on it's way, you can read most of it on his blog.

I hope this page continues to fill up !!

Thursday, September 06, 2007

My Books

Google added a personal book library feature.

You can add books from Google Book Search to your own library, then publish it.

I added some Philip K Dick, to mine.

Wednesday, September 05, 2007

Touch ?

Nice iPod Touch

I have never had an iPod, though maybe I will one day

Now if only .......

could it play music over WIFI from other computers using iTunes sharing ?
could it play music over WIFI using AirTunes to remote speakers ?

the combination would make for a very nice music system

will we be able to write to the file system?
could MobileSafari read stuff like local webarchives or use the file:// protocol or run Gears, so you could carry stuff around with you?

can you play the music while you are browsing ?

is there a microphone ?

will someone compile VLC for it ?

I hope it is cracked as quickly as the iPhone was

Saturday, September 01, 2007

Ripped Off

Someone has been spending my money using my debit card and it isn't me.
Over £1000 in the last two days, in several cities in the USA.
I just found out this morning when I logged into my bank account to do my usual monthly financial chores.
Debit card is now cancelled, I will be without one now for up to 10 working days :-(
Have to go into my bank on Monday morning to try to get them to agree with me which payments were fraudulent.
Looking through my recent transactions to see if I can work out who nicked the card details .......

The good news, Apple Store in Regent St. have repaired my MacBook in less than a day. There was a crack in the case they have repaired for free. Thanks guys.

Thursday, August 30, 2007

MetaData Madness

So, I just got back from a 6 week holiday (fantastic, I'll write about it soon) with 5000 photos and a bunch of GPS tracks, so what happens now?

I use Aperture on my home iMac/24 for most photo management, but it does not 'fit' on my MacBook, so while on this trip with camera and laptop, I though I'd use Image Capture and iPhoto 6 to manage the photos.

Every couple of days, I'd plug in the camera, get Image Capture to just copy files to a folder, with no processing. Next import them in to iPhoto (with the preference to NOT copy to iPhoto's folder) so it is easier to begin viewing, selecting and showing the photos. Next I'd plug in the GPS and copy off the latest tracks using gpsbabel+.

Back home I then went through the whole lot in iPhoto, deleting from the Film Rolls the photos I'd never want (about 50%). I quickly realised that deleting a photo from a roll in iPhoto and emptying iPhoto's Trash did not result in the original being deleted, so I'd have to use iPhoto to export my selection. This was when I realised that I had tweaked a few photos in iPhoto, and after export, they had lost their colour profile and a bunch of exif tags (naughty naughty, even revert did not restore the missing data!!). I would need another way of extracting my complex selection from iPhoto, to import into Aperture.

I had a look in my iPhoto Library Originals, the Rolls were being kept as folders of aliases to the originals, so it was a simple matter of selecting the aliases (iPhoto had been deleting aliases of deleted photos), right-clicking to choose Show Original, resulting in a new Finder window with the originals selected, which can now be labelled for later extraction.

The next step was geotagging the photos from the GPS tracks. They were incomplete (see here) so I did not want to use a completely automated technique (like this). Instead I decided to buy a license for HoudahGeo. One by one, I imported the Rolls, then imported the GPX files that covered that time period. Usually about 50% of the images needed geotagging by hand. This was often because the photos were taken at anchor with the GPS turned off, so it was just a question of selecting multiple images and then choosing a map location for them all in one go. The final step was to reverse-geocode the images ...... a nice little trick in HoudahGeo, it looks up the location in a geocode database online, and fills in the Country and City EXIF tags (great for Smart Folders in Aperture!!).

Now I am finally ready to import the images into Aperture. (One big nuisance with Aperture is the inability to write Latitude and Longitude into images. It has to be done before import.)

I decided that I would retain the grouping by Roll. I made a folder in Aperture for "Trips/Caribbean/Projects" and imported each roll as a project. Next I made Smart Folders for each country in "Trips/Caribbean" then moved those to "Trips/Caribbean/Locations". (Make them first, then move them, or they will not work).

Now I can start making Albums for different purposes, images to give to friends, images to make a book for the boat to say 'thanks', images for Flickr etc.

MetaData Madness, maybe, but I am convinced that looking after the metadata will pay dividends in the future.

Things to remember :

GPX files are always marked up in the UTC +0 timezone, even if you change the display timezone on the GPS (so I do not change mine).

If you move across timezones and you change the timezone of your camera, always remember to take a photo of the current (UTC +0) time on the GPS, so you know the offset to enter when you use automated geotagging tools.

The Finder, Spotlight etc. automatically convert image creation times to your local timezone set on your Mac, so if you want to use Smart Folders to select complete days of photos you will get an offset unless you switch your Mac to the timezone the camera was in (and restart the Finder).

Editing Tracks in GE

It is possible to edit GPS Tracks imported into Google Earth, but it is not obvious or intuitive.

Lets say you opened a GPX file (imported from a GPS) in Google Earth, you'd have a new entry in in 'My Places', probably called 'GPS Device'. Keep on burrowing down through 'Tracks', "ACTIVE LOG n', finally to the 'Path'.

Right-click on the 'Path' and choose the 'Get Info' menu item.

Your path is now in editing mode (weird huh?).

In the dialog, you can change the colour of the path etc. etc. but in the main window, you may now edit the path (eek dialog, go away!!).

There are several different cursors.
The square cursor will add a new point, after the currently selected point (not easy to know which this is). This may be used to insert a new point between existing ones, or add a new point at the start or end.
The hand cursor appears when you mouse-over a point, this can be used to move it.
Hold down the Control key and click on a point to delete it.

That is all I found out about by playing.
I could not work out how to select or delete multiple points or anything advanced like that.
I do wish the guys at Google would let someone who knows Adobe Illustrator show them how path editing works there, it is far superior :)

NB. This is for the Mac version of GE, I am running 4.2.0180.1134 (beta).

Simplifying GPS Tracks

Originally uploaded by sharkbait.
In my last post I talked about needing a tool to simplify GPS tracks, to remove the spikes and squiggles you get from inaccuracies in the GPS readings and stuff like swinging around on anchor chains.

Here is an image from Google Earth showing us anchoring. There are two tracks, one containing the full data, one showing the simplified data.

I think together they show quite well how a boat moves over time on an anchor.

I simplified the track using gpsbabel :

gpsbabel -i gpx -f 20070806.gpx -x position,distance=6m -o gpx -F 20070806-dist-6.gpx

This gets gpsbabel to filter the track, removing points that are closer than 6 meters together.

I went through a bunch of different distances, 6 meters gave me the most pleasing results, but the correct distance is probably going to be related to your speed.

This filtering makes almost no difference to the shape of the main track curve, only to the heavily crowded parts of the track where we were close to stationary.

Wednesday, August 29, 2007

GPS Shenanigans

I had a GPS (Garmin GPSMap 60CSx) for the first time, to take on a long sailing holiday, to be able to geotag all of the photos I took and maybe publish some tracks to Google Earth.

How did it go?

Not all plain sailing ....... here are some of the issues.

Maps were the first problem. The basemap on my GPS, showed no landmasses for most of the islands in the West Indies. I had managed to find a good Open Source map of the area just before leaving, but was unable to load it onto the device.

The first problem (got stuck on this while away) was I had updated MacOSX to a version that broke USB connectivity in Parallels (needed to run the MapsSource uploader), so the GPS was never going to connect to Windows. The few net connections I found while away were so bad I was not able to find this out, let alone solve it until I returned.
Once that problem was solved, I tried to upload the maps. Windows would crash after about 10 minutes (of 40) of uploading. No go, must be an instability in Parallels. Next I tried the new beta Mac MapInstall from Garmin. It just refused to do anything.
I finally got to run MapSource under VMWare Fusion instead of Parallels, the transfer worked first time. I have the map on a chip now, but of course I am no longer in the West Indies :)

The next problem was battery life.
When I was doing my online research before buying my GPS, I saw many otherwise attractive units with stated expected battery life of like 3 hours. That is so useless I have no idea why anyone would buy one. I was attracted to the Garmin unit I bought, because it was supposed to have a 40 hour battery life on two AA batteries, still too short IMHO, but becoming reasonable.
As it turns out, 40 hours is an outright lie. With two high power throwaway batteries, you would be lucky to get 10 hours. I do not like to use disposable batteries, so I bought a set of the highest power rechargeable batteries I could find, Nickel Metal Hydride rechargeables with a stated 2700 mAh capacity. The unit has a special setting for Ni-MH batteries (lower voltage, run slower) but I would struggle to get 5 hours.
Keep in mind this is 5 hours of the unit just making a track, not 5 hours of heavy interactive usage, calculating routes, displaying complex maps!!! 5 hours is not enough. It became too difficult to keep batteries charged and changed (power is always a bit ropey on a boat).

So I have ended up with incomplete tracks of my trip, very frustrating considering how much money I paid and effort I put in.

I have now geotagged all of my photos (using HoudahGeo), the tracks did help.
Next I'd like to play with making them into KMLs for Google Earth.
One problem I am facing is if you leave the tracking on while stationary, you get a rat's nest of spikes and squiggly lines as the boat swings on it's anchor and/or the accuracy of the GPS varies. Now I need a good track editor (suggestions anyone?).

What will I do differently next time?

1. Prepare maps before I leave.
2. Bring an adaptor that allows me to run the GPS off the boat's 12V power supply.

Sunday, August 26, 2007


I got this email :

> Hi Jeremy,
> I am interested in advertising on your web page: Credit Card Craziness
>The ad would be for a credit card directory, and it would consist
> of a 2-3 lines of text with links to their web site. I can pay you $35
>for the ad, and send it via PayPal, or check.
> Would you be interested?

I guess I am slightly flattered, however I said "thanks but no thanks"

Never heard of this before

Wednesday, June 13, 2007

Aperture & Google Earth

You have photos in Aperture that have GeoTags in their EXIF data and you'd like to view these locations in Google Earth?

Here is an AppleScript to do it :

on run
tell application "Aperture"
set theSelection to selection
set theImage to item 1 of theSelection -- get the first selected image
try -- there might not be geotags in the photo
set lat to value of EXIF tag "Latitude" of theImage -- get the latitude
set lon to value of EXIF tag "Longitude" of theImage -- get the longitude
tell application "System Events" -- find out if Google Earth is running
set isRunningGE to (name of processes) contains "Google Earth"
end tell
if isRunningGE then -- only do this if GE is running, it is such a hog at startup
tell application "Google Earth" -- switch to Google Earth
activate -- bring Google Earth to the front
set viewInfo to GetViewInfo -- get the current view
set latitude of viewInfo to lat -- set the new latitude and longitude
set longitude of viewInfo to -lon -- bug in Aperture 1.5.n, reverses the Longitude
SetViewInfo viewInfo -- go to the new view
end tell
display dialog "Launch Google Earth first please" with title "Show on Google Earth" buttons {"OK"} with icon stop
end if
end try
end tell
end run

Save this as a script called "Show on Google Earth" in ~/Library/Scripts.
Enable the Scripts Menu (if necessary) using /Applications/AppleScript/AppleScript
Select a photo (with Lat/Lon) in Aperture.
Select the script from the Scripts Menu.

Google Earth needs to be launched first.


Sunday, May 20, 2007

Geo Workflow

Geo Workflow
Originally uploaded by sharkbait.
I used to have Aperture setup to import photos when my camera was plugged in, but now I have a GPS that I take on photo trips, I need a new workflow.

Sigurd Buchberger at makes two Automator plugins. One for importing data from a GPS unit or a GPSx file, the other for geo-tagging images with the GPS track data.

Here is a screen shot of my Automator Workflow. It gives you an idea of the kind of thing you can do.

The other option I am looking at is a Workflow that reads straight off the GPS and reads straight off the Camera, which would be triggered by plugging the camera in. I'd need to plug the GPS in first, and use two USB ports.

Friday, May 18, 2007

Credit Card Craziness

I have a credit card through my bank, Nationwide.
I recently forgot to make the monthly repayment on the card.

I started receiving phone calls from an automated IVR system, to my mobile and my home phone, every few hours, asking me to enter personal information. I declined to accept the opportunity to provide my details to a possible phishing scam.

I reported the issue to the bank, via their online secure message system. An hour later I logged in again to see if I had a reply. The original message had mysteriously been deleted.

Curiouser and curiouser.

I finally managed to get through to the Credit Card department and confirm that it was actually them calling me.

They really expected me to respond to a cold call from an automated system by typing sensitive account details into my mobile? This is such a bad idea !!!! It opens up a whole new phishing vector.

Nationwide 'lost' account details of 1000's of their customers recently, in the light of the current onslaught of bank phishing scams, whoever proposed contacting customers in this way must be mad!!

BTW. If you do manage to break into my bank account, could you pay off my overdraft please : )

Wednesday, May 02, 2007

Getting there

It is great having access to more and more route planners. The free Google products, my new GPS with European road maps etc.

However, unless you live in an area covered by Google Transit, Google only helps with planning routes for car drivers. My last car was turned over in the Brixton riots in the 1980's and caught fire soon after while driving past Downing Street. So Google's planners are only useful to me on the rare occasions when I hire a car or get a lift.

My Garmin has a route planner that allows you to specify (from an inconveniently deep menu) Pedestrian, Cyclist etc. which is a bit more useful ..... at least I can plan a walking route that keeps me off main roads.

With private transport having such a high environmental and geo-political cost, the time has come for public transport route planners.

Take London for instance, Rail, Tube, Bus, Tram & Ferry all run under the auspices of Transport for London. Even bus stops have a display telling you which buses are on their way and how long they will take to arrive. TfL have a nice little planner online, but it could go much further.

If a combination of routes, timetables and live-tracking data could be made available to GPS-based devices, public transport route planing would become a reality.

Imagine your hand-held GPS being able to warn you : "If you don't leave home in 5 minutes you will miss your bus and be 15 minutes late for work". Or your in-car GPS on nearing a Tube station on your route, telling you how much money and carbon dioxide you'd save by parking here and taking public transport.

Why stop at London, I'd like to see this for the whole UK, or any region that has a reasonably well integrated public transport system.

If halting the effects of global warming requires concerted action from every individual, then we individuals need to tools to help us do that. Smart public transport route planning could be one of those tools.

Food for thought, Mr Livingstone ?

Tuesday, May 01, 2007

Where am I ?

I finally bit the bullet and bought a gadget I have been bursting for, for years, a hand-held GPS. I have little real need for one, but I am a map fetishist (you should see the maps on every wall of my flat!!).

Support for GPS on Macs has never been great, which is why I have held off so long, but Garmin is beginning to fix the situation by releasing the first of a few necessary applications (no map uploads yet).

I bought the Garmin GPSmap 60CSx, with a European streetmap on a Mini SD card. It uses USB, where there is even less support on the Mac, because Garmin never released a driver. However, surprisingly several shareware/freeware products (see below) can access it.

I am (mostly) very happy with the device ...... there are some problems though ...... doing postcode lookups is often not reliable, Garmin tech support say it is impossible to backup the expensive data on the Mini SD card etc. etc.

My main usage so far has been route navigation and geotagging photos.

Nick and I drove down to Cornwall for Easter, we used my GPS for navigation, it was impressive ..... smooth and intuitive. Nick said it worked a lot better than his older unit, specially inside houses and cars.

When I go out taking photographs, I take the GPS. I set it up to record my track. When I get home I can merge the GPS track and the photos, to add location info to the photos meta data. TIP: Take a photo of your GPS's time display before you start, so you know the time difference between them.

Here is some of the software I have been using :

The wonderful GoogleEarth Plus ($20 paid-for version). Adds a GPS Menu under Tools that reads tracks, waypoints and routes from your GPS and plots them in GE. Why on earth Google did not implement WRITING TO THE GPS I have no idea (hey guys please fix this!!).

I started adding my favourite restaurants around Brixton to the GE Community (I hope I can still get a table).

The venerable Swiss Army Knife of GPS, GPSBabel can read and write to the unit plus convert between file formats, it even has a half decent GUI wrapper.

There is a pretty looking geotagging tool called HoudahGeo, you can use it to merge GPS tracks with photos.

There are some Automator plugins for reading GPS data and geotagging photos, I have not tried them yet, but hopefully soon I can get around to making an application that will automatically download my photos and tracks, geotag and import the photos into Aperture.

Sunday, April 29, 2007

Hotel WIFI

I have been travelling and staying in hotels recently, while giving training courses in Apache Cocoon.

I stayed in Lincoln for a week, at the disgusting Travel Inn on Canwick Hill. Nasty, ugly, bland, expensive bad food. The crowning insult, being forced to pay £70 for a week's worth of poor WIFI usage in my room. Not only the ridiculous price, but it forced me to re-log in all the time!!

Why do hotels charge for WIFI?
Do we get separate bills for clean sheets, water, electricity?
WIFI should be seen as a service that comes with your bill like any other.

I just got back from giving a course in Brighton.
I stayed at the extremely fun Hotel Pelirocco in Regency Square.
Totally opposite to the Travel Inn experience, a fun, friendly, wacky place ...... each room a different theme, I stayed in the Bowery room, dedicated to the performance artist Leigh Bowery, decorated by his wife and the Kinky Girls' room, complete with handy bondage gear (though not exactly my taste : )

And the other big difference?
I get to my room, wake up my mac and it instantly connects to their free WIFI.

MacOSX Finder Bugs

There is a very nasty bug in MacOSX Finder, it has caught two of my friends out now ......

I have several non-computer-savvy friends who have started using Macs, I help them with their systems.

I get a phone call saying "All my files have disappeared !!! HELP !!!!", with the implication "You feckwit I thought you said Macs were more reliable !!".

After some discussion, trying to wheedle out of them what they did, I hear that they used the Finder to change the name of their Home Folder. The stupid Finder lets the user do this, and nothing bad happens, until they restart.

When they log in again, using their old credentials, the home folder for that user name no longer exists, a new one is automatically made, and lo and behold, it appears like they have lost everything.

The Users section of the NetInfo database still contains the path to the old user folder name, changing the name in the Finder does not update NetInfo.
The Finder should NOT LET YOU DO THIS!!!!!

The next big source of "I have lost my files" horror, is new users moving or renaming stuff in their iPhoto or iTunes library using the Finder.

Both of these problems could be fixed in the Finder ......

First, renaming the user home should not be possible from the Finder, as doing so is 100% guaranteed to break your system.
Secondly, the iTunes and iPhoto libraries should by default be treated as Packages, not folders (then if a savvy user legitimately needs to browser those folders, they can still get in).

Please get to it Apple.
We need a fix for Panther and Tiger ASAP !!

Sunday, March 25, 2007

Geotagged Photos

Now that Google has added support for GeoRSS to it's products, it is possible to make a URL that shows stuff like this :

My Recent Geotagged Photos on Flicker.

Welcome to the Caribbean : )

Thursday, March 22, 2007


I was honoured to be asked to be co-editor for the latest edition of Wallzine, a wall-magazine of Arts/Politics made in Brixton.
The issue "Sold Out" was about economics ...... something I am interested in from the "green" perspective.

Al Gore's Current TV has a mini documentary about the publication, you can see it here : Miss FX.

Enjoy :-)

PS. Here is an interesting link from Bridget (the editor) The True Cost of Economics.

Fixed link to video

Thursday, February 08, 2007

Photographer ?

More people these days are asking me, “Are you a Photographer ?”.
Maybe it is the fancy money I clearly paid for my new camera, maybe it is the time I take composing shots, I don't know.

Thing is, I still say “No”.

This just happened again on my last trip to Paris ...... I went to see the new shop some friends are opening. I had spent an hour going around taking photos of the place, when their interior designer asked me. Slightly embarrassed, I gave my usual answer ....... later, while looking through the photos of her work, I thought, hang on, I could have taken these photos, hang on, I could have taken better photos than these.

What do people mean when they ask that question ?
Is it as simple as “Do you make your sole living from taking photographs ?”.
Or is it something more complex like “Do you use photography as a serious form of personal expression ?”.

What ever they mean, one day I am going to pluck up the courage to start answering “Yes”.

Thursday, January 25, 2007

Bank Rant

To be honest, I have never been fond of banks.
I have had to sack two so far for really appalling behaviour.

I got an account at Nationwide in 2003. They have been pretty good so far .......

I was doing my tax last night, I know I always leave it to the last minute.

Nationwide is trying to persuade it's customers to stop getting paper statements, as a 'green' move, and as such I applaud it.


They only show you the last 15 months of transactions online, that means I could only find records going back to October 2005, not April 2005 that I need to do my accounts.

They clearly have not thought this through.

Sunday, January 14, 2007

New Blog domain

I just took up on the offer by my blog host,, to switch to their new service.

One of the new features is the ability to serve the blog from your own domain, so I have switched my blog's address to

I hope this does not mean that you get multiple copies of old posts or anything nasty like that ......

Thursday, January 11, 2007

Doing the impossible

I have a little personal application project underway, I have been tinkering with it for a while now in my CFT. I am not going to say much about what the application does yet, save to say, it is a kind of mashup of Flickr with itself ...... it makes browsable relationships in Flickr content that I want, but Flickr does not offer. (When it is ready you will be the first to know ;-))

The application needs to make lots of recursive calls to the FlickrAPI to get the information it needs.

Because of the Browser Security Model, it is not usually possible to make XHR calls to a REST API on a different domain to the one the page came from, so the way people generally handle this, is to set up a Proxy Server on the same domain, to pass the calls through.

Setting up a proxy to call external WebServices, opens up a can of worms, it can be very tricky to secure. Other people could use your proxy for their own services, eventually it will lead to trouble.

To avoid having a proxy that would offer anything useful to another application, my first implementation worked by doing all of the heavy lifting on the server, then sending the results pre-formatted to the client, thus closing off access to the FlickrAPI from my server.

I began to tire of this approach, it is heavy and overly complicated, the results take too long to display, the server has to work hard.

I have been doing some work with Dojo 0.4.1 recently.

Dojo has something called ScriptSrcTransport ...... it allows you to do a normal, but instead of using XHR, the call is made by injecting a script tag into the head of the document.

It sounds like an almighty hack, but IT JUST WORKS!!!

It is faster, users see results quicker, I do not need an XHR Proxy on my server.
Potentially, all the server would need to do is serve static html, css and javascript files !!!!

Cross-Domain calls to Flickr's REST API, getting results via JSONP.

This so rocks !!!!

Tuesday, January 09, 2007

MacWorld 2007

My first impressions of MacWorld 2007.
This time I 'watched' it live on a combination of and a group on iChat with loads of people on it chirping in from different sources and discussing what they saw, it was a laugh!

Apple TV
Nah, not interested, unless it gets hacked to play more than the kind of codecs Apple distributes it's stuff in.
Will it play the range of video that VLC does, I doubt it .....
The box seems too tied to the whole iTunes Store thing ...... don't get me wrong, I like iTunes, it is running all day here, I just do not use it for video and I don't see myself buying the kind of video Apple sells.

Gosh, quite astonishing to look at it working!! I love all of that gesture stuff. If I can afford it when it comes out, it will be very tempting .....
On the video side, I am going to have the same doubts as I do for the Apple TV, on the music side, 4 or 8 gig do not seem like a lot, as an Internet device it looks sublime, as a phone dazzling.
The big question for me though is, will this be a closed device like the iPod, or an open device like a PC?
If Open Source and Shareware developers can easily develop for it and a strong ecology develops, it would be a killer! I would immediately want a SIP Voip client on it !!
Can you bring up a Terminal and run an SSH session? ;-)
Without an open SDK, the (astonishing) fact it runs MacOSX is largely irrelevant (except that Core Animation looks devine). So I hope they do the right thing there .....
The deals with Google and Yahoo are interesting. I am glad they went for Google not Yahoo maps. It is a shame Google do no IMAP for email ..... OH and I LOVE those little pins dropping down to stick in the maps !!
The instant messaging tool he was showing ...... is that SMS or iChat? Would SMS not cost a lot if you used it like an IM Client?

I thought MacWorld was supposed to be a developers conference, so I was surprised to see no sign of Leopard.

Sunday, January 07, 2007

New Model

I have recently been working on upgrading Apache Cocoon's powerful CForms Framework, from using Dojo 0.3.1 to Dojo 0.4.1.
The work went really well and I really enjoyed it.

What was really cool for me about this, was how my time was paid for.

Over the last few months, I have been approached by several companies that rely on Cocoon for their work.
They had specific issues with CForms, additions they wanted, changes they wanted etc. Furthermore they were willing to pay me to do work that would go directly into the public domain, benefitting not only those companies but everyone who uses Cocoon.

These guys have really got the point of Open Source !!

I've been self-employed for most of my working life.
For the last 10 years or so I have made my living as a free-lance software developer, in many different ways :
Taking on whole or parts of projects directly for clients.
Sub-contracting whole or parts of projects for companies who are servicing their own clients but don't have all of the skill they need inhouse.
Providing advice, consultancy, support, training etc.
Writing technical proposals, documentation, audits on best practises.
I have even taken on a few "Bug Bounties" :-)

Sometimes bugfixes or small additions to Cocoon result from these projects but generally these activies all result in deliverables to a client, who then has exclusive rights to them.

Being paid to work directly in the public domain is a new working model for me.

I think I did good work. I think the companies got their money's worth and I know I found it really satisfying.

I would love more work like this !! :-)

There is a lot more to do on cforms but temporarily my funding has dried up.

If you rely on Cocoon for your work, if you'd like to see any of these changes but do not have the time to do it yourself, lets talk !!

Before writing this post, I discussed the topic with a few Apache people. Bertrand gave me this really interesting link.

ABSTRACT: We introduce the Street Performer Protocol, an electronic-commerce mechanism to facilitate the private financing of public works. Using this protocol, people would place donations in escrow, to be released to an author in the event that the promised work is put in the public domain. This protocol has the potential to fund alternative or "marginal" works.

Food for thought.