James O'Neill's Blog

March 16, 2009

A day out with Divers

Filed under: Events,Photography,Windows 7,Windows Vista — jamesone111 @ 11:38 am

I spent yesterday at the DIVERSE – the South Eastern area conference for BSAC (the British Sub Aqua Club) : officially I was there to speak about why Windows Vista (and 7) are so good at handling pictures. Unofficially as a diver (though not a BSAC member) any valid excuse to hang out with diving folk is welcome. “Club” suggests “amateur”, but I’ve been to plenty of IT industry events which were less professionally run. It was well attended too, and it’s quite some time since I’ve seen an audience so obviously enjoying what was being presented to them (even a potentially dull session on accident statistics was lightened with the some of the funny things people right when reporting accidents).

I’ve uploaded the slides I used. The main thrust of my session was that

  1. Putting data about your pictures in the pictures themselves (using EXIF data) is much more valuable than putting them in a separate database
    (One gentleman asked me if there was anything he could do about editors which drop all the data – I use EXIFCOPY from EXIFUTILS to copy it back from the original photo)

  2. Once tagged Search means you can find, sort, search and group the pictures. Search is available for XP, but  because is integrated everywhere in Windows Vista and 7 the experience is better: heir version of Windows explorer also makes it easy to tag pictures

  3. Some free software – Windows Live Photo Gallery (which also works on XP) makes it easier to work with  photos and do basic corrections (although it lacks a clone brush and the levels adjustment isn’t that sophisticated)

  4. There are interesting things you can do with the photos afterwards (e.g. building a collage with AutoCollage – which is running a 20% off promotion until the end of March. At £14.40 it’s a real bargain).

It seems the graphics card in my laptop has been on the blink for a couple of weeks – I’ve been getting loads of errors from my screen driver and some other odd behaviour – it finally gave up the ghost while I was on stage and when I try to boot the machine now I get some very interesting screen corruption. So I didn’t get to show the final collage. Here is what AutoCollage built with the pictures I showed (click for a bigger version)


Click for a bigger version


I showed my PowerShell scripts for tagging photos from the Suunto dive management software I use (Suunto were sponsoring the event, which was nice – I’ve got a very high opinion of Suunto, as much for their customer service as for their products and it would have been awkward if another make of dive computers was sponsoring things) . I talked about how this worked in an earlier post, and I’ve added  the latest versions of the files to this post for anyone who wants to try it. Here are some quick instructions:

  1. Try to remember to take a photo of the display on your dive computer at some point. This will allow you to calculate the error between the time on the camera and the time on the computer.

  2. Unzip the attached files

  3. Export the CSV files from the Suunto software  (in the 1.6 version I use* the command File/Export/ASCII in CSV format)

  4. Assuming you already have PowerShell installed, start PowerShell and enter the following command Run the following powershell command
    [reflection.assembly]::loadfile(“C:\<path To Where You Unzipped it >\OneImage.dll”)

  5. Then enter the following PowerShell command
    filter get-picture {param ($Path) new-object oneImage.exifimage $path}

  6. If you have a photo with of your computer use this powershell Command to find when it was taken
    (Get-picture “fullPathToYourPicutre“).dateTimeTaken
    You can work out the number of seconds difference between the time on the computer when the picture was taken and the time on the camera. If the Computer is ahead of the camera you want a positive number, and if it is behind you want a negative number.

  7. Next process the Suunto data with this command in powerShell
    <path to where you unzipped it>\prep-Divedata
    Note that if you are in the folder where you unzipped it, you need to enter the path as .\prep-divedata. This command takes about a minute to run on my system. If it looks like it has hung give it plenty of time.

  8. Read the warning in the right hand column of this blog – “This stuff is provided as is, with no warranty and confers no rights.” My code isn’t very extensively tested and there is a small chance it could screw up your photos. Make sure you have a backup before proceeding. Seriously.

  9. Now run the following command in powershell
    DIR <your file Selection> | foreach-object { <path to where you unzipped it>\tag-photo $_.fullName timeOffset}
    your file selection might be *.jpg, it might be c:\photo-Dump\dive40*.jpg, or whatever. As before if you are in the folder that holds the script you need to run it as .\tag-photo
    The timeOffset you worked out in step 6. If you don’t enter one everything will work on the assumption that computer and camera are in sync.


Officially there is no support for this (but officially I’m on leave and not posting here this week)


* Yes there is a newer version of dive manager, but I like to point out that 1.6 was designed to interface with the serial port, pre-dates Vista , never mind 7, and wasn’t intended for a 64 bit platform, yet here it is on Windows 7 , 64 bit downloading my data very nicely thank you. Which shows what happens if you write the software properly in the first place.

This post originally appeared on my technet blog.

March 12, 2009

PowerShell event in Newcastle – oh and another thing

Filed under: Events — jamesone111 @ 3:44 pm

The VB user group are running an event for IT Pros in Newcastle on 24th March: PowerShell 0-60 in One Evening. Jonathan Noble is presenting, which means it should be a good event.

The other thing …

After nearly a fortnight away on leave, no sooner do I come back and make a couple of posts, than I’m away again. The tumble weed will have to blow through for a bit, but hopefully normal service will resume by the end of March.

(if you want an explanation of the odd spelling in the cartoon – it’s from Terry Pratchett – who turns out to be on Twitter).

This post originally appeared on my technet blog.

My enduring love for OCS .. and a Nice windows 7 feature

My job as an evangelist focuses on Windows platform (client and Server OS), including management (i.e. PowerShell) and Virtualization. But there are other Microsoft products which from my day to day use of them I feel evangelical about. One is Windows Live Writer which is the best tool for composing blog posts that I’ve found. Word can do blog posts, but somehow writer feels better suited to the task.

I used to do a lot with office Communications server (and I’ve written sections for both of its resource kits), but it’s a long time since I wrote about it here. I’ve been using the voice parts of it for well over  a year. I use it from home (and it’s spooky making calls from communicator to communicator with, for example , Eileen – because you hear the background sounds and acoustics). But I’ve never used it from outside the UK…

I started putting this post together at the end of a scuba holiday: one of the best value live-aboard boats I know sails from the Bahamas and I used up my air miles for the flight – the family stayed at home and left me to it. Orange don’t even list the Bahamas on their roaming page and, although my phone can see the Cell phone provider for the islands It won’t join the network. Yes, I call home from abroad using my company issued phone – the idea being the old one of work/life balance: each intrudes on each other but not unreasonably so. A couple of quid on a short phone call to say the sharks didn’t eat me in exchange for giving up holiday/family time to clear the backlog of mail is part of that balance. Still. I had no phone here, just free internet access. “OK…” I though lets give communicator a try. It works as well as phoning from inside the office; which was a surprise given that the internet connection was none too fantastic.

This gave me a chance to fire up the new Windows 7 resource monitor and have a look at exactly what communicator was doing. The 131 network address is Redmond and handles all the SIP traffic (call set up, and Instant Messaging) and the 213 address is in Dublin and carrying voice, although decent call quality is supposed to need latency of less than 100ms I was finding 200ms on a transatlantic call pretty darn good. And the bandwidth , averaged over a minute it’s about 2KB per second send and receive. I did a double take at that, but that’s bytes, so 16 Kbits per sec, which doesn’t require top notch broad band.



This post originally appeared on my technet blog.

Blog at WordPress.com.