Now that's a camera... · 7 days ago by Michael Dales
Yesterday on my walk to work I spotted someone stood on top of their car erecting upon it what looked like a ship’s superstructure. I had my suspicion as to what this might be, so I went to have a chat with the guy, and my guess was confirmed – it was the Google Streetview Car!

This is the setup that Google are using to get street level pictures of as much of the world as they can. The chap setting it up was very good and happily explained what he was up to. Indeed, I’m not that concerned with the privacy issues of it all, but he was somewhat proactive in assuring me Google would blur our faces etc. – I suspect he’s ran into people that were someone against the idea. Anyway, whilst I think it’s right that people question things like this, I think it’ll be fairly interesting to see how the data can be used to help things like map directing online.

Apple launch new phone, I get free cake · 12 days ago by Michael Dales
I have no shame. I has chatting with a friend this morning outside near the O2 store when they started handing free cakes out to those queuing for the iPhone. Hastily we joined the queue, and you can see the result
Thanks to Bill for being quick with the camera :)

When McGuyver Designs Trains · 14 days ago by Michael Dales
I spotted this on a train recently, which has to be the most eccentrically prepared train in the country:

Did McGuyver design this train based on his extensive experience of getting out of tight fixes?
Comment [1]

Infotech, Festival of Architecture, and Camera mishaps · 17 days ago by Michael Dales
Yesterday Laura and I joined other Cambridgeians in attending Opentech 2008 – a random nerdy conference held at the UCL Union in London. I have to confess I was a little disappointed with the content, which failed to be as interesting as the recent Geekyoto event. Perhaps my brains just a bit over worked, but for the most part I failed to find it engaging. The one highlight was Danny O’Brien’s talk (he of the original Wired UK and NTK) which was both entertaining and thought provoking, looking at how to decentralise things like Facebook and Twitter.
Thankfully, the dull sessions turned out to be a reasonably fortuitous, as it lead to me going for a wander around UCL, and discovering a London Festival of Architecture event, in which Montague Place, the street behind the British Museum, had been turfed over and there was live jazz, a farmers’ market, and a elevated walkway:

It was delightfully random – with people making custom embroidered shopping bags, a car turned into a garden (including a pond), and nice food. I picked up a booklet detailing other LFA events, and it goes on until the 20th of July, so keep an eye out for such events. Alas the turfing of Montague Place was for this weekend only.
It was also a good excuse to go and stare once more at the amazing roof in the Great Court of the British Museum:
To end the day we had a nice dinner at a small French eatery in St Pancras, and then disaster struck – the shoulder strap for my camera bag decided to work itself loose, and the bag and contents plummeted to the floor. I got home to discover this:

Thankfully, I hope, it is only the UV filter that has been damaged. I’ve managed so far to remove the broken glass (but not the UV filter ring, which is currently wedged on the lens), and a quick check shows it still takes pictures, but I’ll need to perform a closer examination to see if it’s survived. Poor camera!
Update: bah. I can see at least one scratch on the lens itself :/
Comment [1]

There goes the neighbourhood... · 19 days ago by Michael Dales
The downside of the first gen iPhone was that third parties couldn’t develop applications for it. However, as spotted on Daring Fireball, some of the applications being developed for the second gen iPhone might make people ache for those days:
Yikes. The thing people miss is the effort people like Apple put into sane interface design. Minimal is very hard, a messy overload is quite easy – if you want applications to be nice you need to really work at it. Scary stuff.
Comment [1]

The happy photographer · 20 days ago by Michael Dales
On Monday the Camvine crew went up to Manchester for a meeting, and then to the Peak District for some team fun. Q and I were in our element with amazing scenery and both armed with our cameras. Here’s Q at Lyme Park:
More pics to follow soon once I’ve had time to process them all :)

Dad's Barmitzvah · 21 days ago by Michael Dales
The other week Laura and I went up to Glasgow to celebrate with my Dad his Barmitzvah. He decided to convert to judaism a few years ago, and thus this year he finally made it to be a barmitzvah, somewhat later than most people who have one :) We had a good day out, and everyone at the synagog my Dad attends said he did well.
So unusual is it to have a 55 year old barmitzvah, that the event even made the Jewish Chronical, which has a brief interview with my Dad :) The dead tree version has a picture in it, but oddly the online version doesn’t, so here’s my Dad and Mum on the day:


Revision versioning with git · 25 days ago by Michael Dales
Recently at work we made the switch from subversion to git for our revision control software. I could explain why we made the jump, but you really just want to grab a beer and watch Linus’s talk on git (you do have an AppleTV to let you watch YouTube on the telly, right? ;).
Moving to git is not a decision to be taken lightly. It requires a move away from a trusted system, and everyone has to learn new tools and a slightly new work flow. However, in our experience, the effort has been worth it, and despite git’s reputation for being difficult to use, I find it’s a bit of a sheep in wolf’s clothing if you just give yourself time to work through the various how to guides on the web rather than trying to apply your cvs/subversion/whatever knowledge to git.
One change that is interesting that we had to solve was the loss of an obvious numbering scheme for comparing checkouts from the tree. I came up with a solution for CamVine, and I’ve had comments that this is a common issue, so I thought I’d take a moment to express our solution here. There’s even a little code to help you along :)
So, one of the nice features with subversion was that with every commit to the repository you got a new revision number for that commit that was one more than the last – the first commit was numbered 1, then the next commit 2, and so on. This meant that when you installed the software you could tag it with the commit number to know exactly what version you had. So, we’d label software with names like 1.2-r3456 – that is commit 3456 for version 1.2 of the software. Indeed, tools such as the popular Python setuptools encouraged you to do this.
However, with git commits do not have nice revision numbers – it sort of doesn’t make sense in git given its internal structure. Instead you get a SHA1 hash of the commit as a unique way of identifying that commit. I’m not sure about you, but naming your releases 1.2-r 880df0c29f83937c6b02b72180e1742d159fca81 seems less useful. I certainly can’t use it for automatic updates, as I can’t rely on the ordering of the hashes. We needed another solution.
Instead I came up with the following simple method that seems to do the job at Camvine. The below diagram attempts to show our repository structure as it grows. We have a main continuing development branch that always represents the latest and greatest code for a particular project, and is where most the fun happens. However, from time to time we commit a development branch as a particular version, and at that point we have a fork – the main development branch continues on to the new version, and we also fork a maintenance branch to which bug fixes are applied.

The solution I came up with for getting version numbers is very simple – rather than tagging releases when they’re finished, you tag the start point – either on the first commit to the repository or the commit just after you’ve forked for a release. You can see this in the tags in the diagram. Now, to get a simple increasing revision number for a particular commit anywhere in the tree you take the object you’re interested in and count the steps back until you hit a version start tag, and you’re done.
For example, in the diagram above the latest and greatest revision is 0.3-r5, whilst the latest bug fix release to 0.2 is 0.2-r9. In the build scripts for all our projects I’ve inserted a bit of python that works out current head object, and from that goes back and returns a version number and a revision number, ready for building python eggs, debian packages, whatever – that code can be found here.

Racing history · 29 days ago by Michael Dales
My friend Scott Leishman, who was a mentor to me at Xilinx Edinburgh when I did my various internship stints there, is moving on to pastures new, and in clearing his desk he discovered this old picture back from (I estimate) 1998, taken on a Xilinx company day out:

There’s a bigger version here. In case you’re struggling, I’m the one in the middle top, and Scott is the blond chap second from left. If I remember correctly we’d been split into a fast category and slow category, and despite my elevated position, I won the slow category :)
Xilinx Edinburgh was a fantastic place, entirely down to it being staffed by amazingly nice and intelligent people, and I look back on my time there with nothing but fondness. Whilst the University did a good job in teaching me technical aspects of my job, my time at Xilinx Edinburgh taught me what it was to apply those skills to products and how to work in a team. To some degree my time there spoiled me as it was such an unusually nice work environment – hopefully one I can help foster here at Camvine :)
Comment [1]

Happiness is... · 38 days ago by Michael Dales
This looks like the recipe for a nice weekend:

And indeed it was. We camped in mid Suffolk at a nice camp site that I’d happily recommend, and spent most of Saturday out on the Suffolk coast at Orford Ness. Orford Ness is apparently UK’s largest shingle spit, and plays host to both interesting wildlife and a now decayed military installation that was active from early 1900s until a few decades ago. The installation primarily carried out bombing research, including early testing for the UKs nuclear weapons program. It has a nice ghost town type feel to it, and has a nice beach, so worth a visit.
There’s a host of pictures up as usual here.
Comment [1]






