Archive for the 'Travel' Category

Places to Work whilst Travelling

Saturday, April 8th, 2006

Travelling or Backpacking is well catered for on the web, sites such as Hostelz and the more commercial similar sites have lots of information on places to stay all over the world. There’s also lots of places telling you how to get jobs whilst travelling if you’re in one of the under 30 working visa countries.

There don’t seem to be anything out there telling geeky people places where they can get reliable internet connections, the hostel sites and guidebooks will indicate if internet is available, but will generally have no more information on it - is it fast, can you use your own notebook, is it available at 3am when you need to be on the teleconference with the guys back in the office.

paradise jamaica beach

This would be really useful, but there’s the huge bootstrapping problem here, how do you get enough information to encourage other people to leave information? Maybe I should just create it, then once there’s enough places in there, I can go off and stay in them… It might be better than being homeless just bumming around in the UK. Openguides is almost a good platform to build it on, but it’s very much built around a city rather than a topic, a pure wiki solution is a little dry, I’d rather see more commentary based stuff.

Paradise Jamaica was where I stayed recently in Jamaica, and it was good for working, the wifi was fast and reliable, and the beach was deserted and lovely. I just need a few thousand more such places and I’ve got a site!

Death of a Disk, and the resurrection of

Monday, February 13th, 2006

The disk in died today, it was the sad end to a valiant disk, dieing just weeks before it was redundant as the new server arrived. So today was spent rebuilding the server, fortunately not too much was lost, the SVG logs suffered but the HTML versions are complete, and the logger will return soon. The blog needed rebuilding and the categories are lost but is otherwise okay - a couple of comments were lost, sorry!

Only has been brought up so far, if you’re using one of the other sites and seeing this instead, I’m sorry, they’ll be up soon.

Why travel agents are dieing out?

Monday, February 13th, 2006

Travel Agents are dieing out, we’re told this is because of the internet making it easy for people to book themselves, that’s almost certainly true, but there are still a large range of tickets that you simply can’t book online - the Round The World Ticket, or anything more complicated than a straight return.

I’m off on a trip to Jamaica, and Washington DC in March, most online travel sites can’t even attempt to price a round trip fare of this nature, but Opodo would give £445 for LON-KIN and £260 for LON-WAS, so if I was willing to go back via London I could do it for 705 quid. British Airways does allow you to specify the route, but they come to a total of £910 and route KIN-WAS via LGW and LHR, including having to get the Bus between the two at your own expense, and taking over 24 hours. Continental airlines offer the ability to specify such a journey too, but they come back with no routes at all. Virgin Airlines fare rules would allow you to have a stopover on the £445 LON-KIN above at Miami, and a MIA-WAS return could be got for £130. So that’s not bad with a bit of knowledge I could get to £575 and still use websites to book my ticket.

ITA Software have a nice little search engine for published fares which searches airlines published fares, and can deal with these kind of multi-legged round-trip fares, and can check airports within a set number of miles - with the city codes like WAS and LON there’s no problem, but checking MBJ and KIN makes you check twice on other sites.

This site comes back with lots of options at around the £450 mark, they don’t involve backtracking to the UK, but the cheap ones all involve long trips through NYC taking 15 or more hours to get to KIN, no worries I think I’ve got the time, I’ll have a stopover in NYC and see the city, never having visited before. Re-priced it with the stopover, and it came to £405, excellent I thought, I’m willing to pay that and £170 cheaper than I could’ve got online. So I print out the itinerary and go off looking for a travel agent to book it for me.

This proved to be a problem, none of the travel agents in Exmouth had a sabre connection to actually book the fare, I let them try their airline deals, either on the computer or on the phone to their “consolidator”. All these travel agents just laughed at the fare saying it was impossible, and ended up coming back with £750 minimum.

So off I went to Exeter, and tried a few more places, eventually STA Travel had Sabre access, and a knowledgeable South African to actually drive it, and he produced the fare no problem - charged me £15 for doing so, the only problem was the waiting whilst they’d dealt with lots of people asking for RTW advice.

The problem with travel agents here is not the internet, it’s that they simply do not have the tools to actual sell products better than the internet, if I was a simple buyer, I’d've found prices online £50 cheaper, yet with knowledge the fares were £350 cheaper, there surely must be plenty of margin there for a travel agent to survive?

Access to sabre appears to cost US$45 a month, I can’t see why that’s not a cost a travel agent would be willing to invest, it’s hardly much. Of course if there was an online agent which allowed me to book the multi-leg tickets, then I wouldn’t've had to leave home - maybe that’s a business opportunity there.

So I ended up with a good price for the flight, and I didn’t mind doing the work to find the route myself, it’s just a shame too much time was spent actually booking the ticket. Still I’m all booked, and now I just need to find somewhere to stay in New York, Couch surfing maybe?

Annoying the Opera Gods

Saturday, October 1st, 2005

I seem to have annoyed the Opera Gods, as Opera 8.5 has introduced a bug which when rendering this blog appears to push the CPU to 100% and make all the links inaccessible, I can’t seem to isolate the cause, at first because it didn’t happen on my localhost I thought it might be the 0 byte favicon.ico I have (I really do not like browsers auto-requesting favicon.ico, it’s my URI I chose what it means not you!) but that’s not it, it just seems to only happen remote. An archived version of the page can be found at /2005/10/opera-bug.html.

I couldn’t seem to isolate any other stuff, so I’ve not been able to author a workaround, if anyone can see one let me know, as I’d quite like Opera people able to follow links, if not we’ve just got to wait until Opera fix bug 182028.

Using SVG for paths in Google Maps with Deer Park

Wednesday, September 7th, 2005

The Google Maps API uses VML in Internet Explorer for drawing polylines over the top of the map - for directions etc. In the other supported browsers though, it renders transparent pngs on the server, so a higher bandwidth load, and not so neat for the user. SVG shares a lot in common with VML, so I decided to see if I could hack SVG support into the Google Maps API code in the SVG Enabled Deer Park.

It was surprisingly easy, the google maps API is all in one large function and relies on a closure so modification of the functions requires you to rewrite that function. That’s simple get the source code of the string by converting the function ref to a string: GMapsNamespace+'' then you can use regular expressions to change the code.

Adding SVG support requires only 2 changes:

  • From this.createImageSegments to this.createSVGVectorSegments this was simply to make the Mozilla path call a new function, and be slightly more robust to changes than trying to replace the entire createImageSegments function.
  • Inserted a function before G.prototype.createVectorSegments that is my new createSVGVectorSegments function.
  • These changes only happen if window.SVGElement exists, which is a current way of testing for SVG support in Mozilla, it may not be future proof when Opera and Safari get scripted SVG support (Opera currently throws a strange script error stopping rendering but the nodes are added to the DOM).

The createSVGVectorSegments function:

G.prototype.createSVGVectorSegments=function(a,b,c){ var d=this.getVectors(a,b); var e=new Array(); var f=new D(); this.getBitmapVectors(d,e,f); if(!c){ c=new D(); } var g=D.intersection(c,f); var h; if(e.length>0){ var; var n=1; var v=1;

This is all the same as the VML version, it just gets the vectors from the polyline and does some initialisation work.

 h=document.createElementNS(\"\",\"svg\"); var path=document.createElementNS(\"\",\"path\"); h.appendChild(path);\"absolute\";\"100px\";\"100px\";

This creates the svg element and a path element that will be the actual polyline, note the importance of using createElementNS and the SVG namespace -

   var vpath=this.getVectorPath(e).toUpperCase().replace(\"E\",\"\"); arr=vpath.split(/[ML,\s]+/gim);arr=arr.splice(1,arr.length-2); var aminX=arr[0];var aminY=arr[1]; for (var zzz=2;zzz<arr.length;zzz+=2) { if (arr[zzz]<aminX) aminX=arr[zzz]; if (arr[zzz+1]<aminY) aminY=arr[zzz+1]; } outstr=\"M\"+(Number(arr[0])-aminX)+\",\"+(Number(arr[1])-aminY)+\"L\"; for (var zzz=2;zzz<arr.length;zzz+=2) {; outstr+=(Number(arr[zzz])-aminX)+\",\"+(Number(arr[zzz+1])-aminY)+\" \"; } var,aminY,sb);;;

This converts the VML path into an SVG one, and rescales it to be in a coordinate space near 0, I had to do this because of a bug in deer park where it clips to the initial viewport even if overflow is set to visible, so just translating the coordinates with a translate to bring it back to 0 didn’t work. It’s quite simple, simply loop through the path moving it by the offset of the smallest coordinate in the string. The getDivCoordinate is a Google function which converts the google world coordinates into screen px coordinates, so allows us to position the path in the right place.

 path.setAttributeNS(null,\"d\",outstr); path.setAttributeNS(null,\"opacity\",this.opacity); path.setAttributeNS(null,\"stroke\",this.color); path.setAttributeNS(null,\"fill\",\"none\"); path.setAttributeNS(null,\"stroke-weight\",l(this.weight)); } return h;}

This is just to set the last few properties on the path - this is exact same as in the VML.

And that’s it, that’s all you need to do to make your Google Maps API use SVG for polylines rather than crappy old pngs, hopefully google will soon integrate the code themselves as Deer Park moves towards release, but until then, or at least until google doesn’t break the hack somehow - which is of course extremely easy for it to do. If you want to try it out for yourself, just include the code before you call the new GMap( ... to initialise the google map.

You can also see it in action in my Exmouth to Seaton Cycle ride tracklog demo., which was what got me interested in the Google Maps API, and will be writing more on shortly…

Friendster spams and lies

Tuesday, September 6th, 2005

Today, I got some friendster spam, bad friendster, but not surprising social networking sites like sending spam, so I visited their privacy policy which stated that they were a licensee of the TRUSTe Privacy Program. Unfortunately this appears to be a lie, the TRUSTe people are quite confident that friendster is not a member. It appears that not only are friendster quite willing to send spam, they’re also only pretending to be members of a privacy watchdog, you can check yourself at

This would be very worrying, if friendster didn’t only have information on me that is freely available in a hundred FOAF resources, but if you’ve got actual data in there, do you really want to be storing it somewhere that lies on their privacy policy? I guess I’ll just have to kill the email address friendster have on me to stop the spam…

The end of SVG Open

Saturday, August 20th, 2005

I’ve just returned from a week in holland, I had a night in Amsterdam before heading off to SVG Open in Enschede, finding a hostel took quite some walking around the red light district, last time I was there, everyone seemed to think I was called Charlie, but now they just say Viagra. I’m obviously getting old…

SVG Open itself was great, but I missed the excitement of the Cricket and had to follow along the crucial last moments via IRC and delayed BBC commentary, and even then ended in disappointment for me, and joy for others

and it's a draw!

. Of course the australian joy of a draw will soon disappear come the next test, just like it did in the 2nd test.

As always at SVG Open, we had lots of great fun, and saw lots of interesting SVG stuff, unfortunately not that many photos have appeared on line yet, most disappointing, there’s definately some ones out there, even people licking pigs

The SVG Wow session was as always great, even with Vincent having to do it without Dean Jackson this year. Suns own Java mobile implementation looked really good both in that demo and Cartoon interfaces. The mobile track had lots of interesting content, and the Ikivo presentation all showed off some interesting ideas.

I was happiest to learn of GSM cell id’s which allows you to get positioning info on any Symbian 60 phone. Of course the data needs to be gathered first, just like openstreetmap or similar. Hopefully a way can be found to combine gathering and sharing of all this data people walking around with GPS’s are collecting, to help out sign the geodata pledge and the geo manifesto.

SVG Open is great fun, come along next year, it’s a great excuse to drink beer…

Routeplanning for round the world flights

Saturday, June 18th, 2005

Last week I visited a local travel agent. I’ve likely got to visit a couple of places in the next 6 months or so, and I know that a round the world ticket would cost the same as those two individual flights, as they’re to places without much competition on them, so I figured it would be a good opportunity for another trip to see lots of interesting places. Not really knowing where I wanted to go, other than those 2 places, I figured a travel agent must be able to sort me out with a Oneworld or Star Alliance route map. Unfortunately not, in fact the travel agent whilst being friendly was completely unhelpful, they couldn’t tell me anything, if I’d told them some places I wanted to go they’d happily tap a route into the computer and told me how much it would cost. Not really much use.

I’d already looked at the websites of the alliances, but these didn’t have routemaps, Oneworld had a flash map where the airports they flew to were marked, but only on a very gross scale, unfortunately though this included code shared flights which aren’t an option on the oneworld ROTW ticket anyway. There was also a windows application for download, unfortunately that wouldn’t install on any of my windows boxes, so not the great, there was a PDF though, so I managed to get some data, I already had very old Star Alliance data which I’d downloaded before.

With the data, I set about building a UI so I could explore it, it took about 8 or so hours work, nothing complicated, but it does a pretty good job of letting you explore the route, it’s amazing that the airlines or travel agents don’t offer this service, it would save them lots of money in agents time, as well as possibly selling more tickets. Of course, we need a few more than the 8 hours I’ve spent, some proper QA, we’d need to encode the rules of the alliances tickets in there, and probably the taxes at the airports too, but regardless it’s not much more than 2 man months of development at even the most pessmisstic, I can think of a few reasons why they don’t, but it still seems silly.

The web application

Screenshot of showing the application.

The application is a simple one, you enter a starting airport code, or name, if there’s more than one airport with that name or part of name, then all that match are shown and you can select one to start your route. Airports you can fly to are then shown on the map in yellow, mouseover of these for the name. You can zoom and drag the map as you would expect, and selecting the airports will add it to the route, the table’s under the map, that tells you the number of miles you’ve done, and which carrier the route is flown on - if you want to limit routes to just one carrier, use the checkboxes on the top right to select one. Clicking on the table at the bottom will allow you to go back in the route.

Nothing complicated in the implementation, it just makes xmlhttp requests for JSON data from a mysql database which has the airport locations and routes, the rest is simple javascript.

It’s a useful little app though, and I’d like to finish it off add some more inteligence into the route, perhaps some routefinding, or rule checking to the various oneworld/star alliance RTW tickets. Of course I’ve not yet decided on a route, or if I’m even going to go, still it was a fun little mini project.

Nokia Sensor

Monday, May 9th, 2005

Nokia Sensor is a Symbian 60 app which works with bluetooth and has contact details of people, and allows easy file sharing and alerts when people come near. It looks good, although the real utility of being alerted when your buddy comes within 10m of you doesn’t sound that useful, my friends can generally smell me when I’m that close. I suppose when you’re meeting strangers it would be useful, but actually it looks like the only way you can create a buddy is by meeting them first, ah, actually though, it looks like Group Codes are the way to do that, although it doesn’t have alerts.

Anyway, whilst it looks interesting, neither my regular Nokia 1100, or my 3650 are Symbian 60 ver 2.0 which it needs so I can’t test it.

What would be really useful though is for the PC version of this app, so we can start seeing when people come near our PC’s, and if people are at their desks etc. - basically the bluetooth presence I’ve never got around too. I’m sure the protocol can be easily decoded, anyone doing it yet? Maybe I should upgrade my phone and start work on it?

Phones and Annoyances…

Monday, February 14th, 2005

My mobile phone died recently, it was old, it was falling apart, and it had finally given up the ghost and just crackled at the poor person I was talking too at the other end. This was a great shame, It’d been dieing for a long time and I’ve spent lots of time looking for a replacement, playing with the phones in the shops, playing with other peoples phones but not one came close to being as usable as my trusty old Nokia 5210.

The features I want are very simple - I want to be able to phone people up, getting their numbers from some sort of directory thing. I want to be able to be able to send and recieve SMS messages - without having to decide if I want to send an email, or an MMS, or some other irrelevant thing. I want it fast, a UI that doesn’t respond instantly is useless to me. I’ve got a Nokia 3650, it’s way too slow (but great for wireless IRC), it’s an old processor I know, but even with the shiny speed of the 6630’s processor sending an SMS still takes about 5 times longer than it should - or indeed does on a 5210.

The Nokia 1100, is pretty good, the UI is fast, it does the jobs well, it has one problem, can I really use it in company? It’s the cheapest phone Nokia does, it’s got big wipe down kid friendly buttons, it’s hardly a fashion item, but I think I’m going to get one, and I’ll just have to live with the sniggers. It doesn’t have the one premium feature that would be useful - bluetooth - but that’s not important enough to compromise every single other feature.

For me, all the mobile phone makers have got it wrong, they’re only interested in the “large screen multimedia device” market, I don’t want a large screen that just makes the phone wide - it doesn’t matter how thin it is, if it’s wider than a credit card, it still doesn’t fit conveniently in the pocket. I don’t want a colour screen, it just makes the UI slow and the battery drain faster, I don’t want a camera, what’s the point in having crappy photos from crap lenses without a real flash. I don’t want calendars and note taking abilities and … the UI is way too slow and the input methods too impractical to even begin thinking about these. All I want is a communication device, but all the companies just want to fight over the teenage coolness market, I think that’s silly, there’s a large market out there of people who are simply not upgrading, because there’s nothing out there to upgrade too.

Of course, phones aren’t the things that really annoyed me this weekend, that was the Pigeon that decided to break into my flat on saturday morning and proceed to shit all over it, it took me all weekend to scrub down all the surfaces of the many places it had shat - I’d never have believed one pigeon could do so much. I have to say though if you ever need to get pigeon shit out of a carpet, I can certainly recommend “Vanish Carpet Cleaner” which did a great job, even if I did use the whole can. So despite having lots to do this weekend, it all got wasted as cleaning took over my life.