Status
someone checked in 4.2GB of data files in my subversion repo. makes a global checkout "unfun"
Location
Alexandria, VA
Subscribe to GeoRSS Subscribe to KML


Apple

Set Latitude & Longitude of photos in iView Media Pro

Published in Apple, Applescript, Open-Source, Photography, Programming


I’m making the transition to a much more stable, usable, and tool-rich photo management tool, iView Media Pro 3. I got tired of dealing with the incredibly slow interface to iPhoto thanks to Apple’s incapable handling & testing of EXIF metadata in storing to their library.

But I digress.

Behold, there was scripting

… and it was good.

I had written an Applescript to set the latitude & longitude (and other location info) to selected photos in iPhoto. iPhoto was often beligerent and required a restart of the iPhoto (and possible database recreation) to read the location information (which was viewable in the “info” panel).

iView puts the location info as a user-editable set of fields in the EXIF data fields. Users can set city, region, country, etc. But for whatever reason, they are unable to change the latitude & longitude.

I paired down my iPhoto script to just handle latitude & longitude and handle getting the file name from iView. The tough part was how to get from the iView example selected_images to a useful POSIX path to feed to exiftool. This code does the trick.


set selectedID to selected_images(1)
if selectedID = {} then
	display dialog "No photos selected"
	return
end if

repeat with this_photo in selectedID
	set photo_path to path of this_photo
	set the image_file to the POSIX path of photo_path

Installing & Using the script

iView Location Plugin - User EntryDownload the script here and expand it in your ~/Library/Application Support/iView/Plug-ins/Scripts folder and then reload iView. You will also need exiftool, as it is the real magic behind the smoke & mirrors.

To use the script, select whatever photos you want to apply the same location information to. Then go to the “Scripts” icon in the menu bar, and choose the “Set Lat/Lon” script. Enter the latitude, longitude, and altitude in decimal format, pressing “OK” after each field. Wait a little while, and then a dialog will tell you how many photos were processed.

iView Location Plugin - Post ExportBack in iView, you should see the latitude & longitude information in the right side-bar. You can also turn on lat/lon view in the thumbnail view by pressing Command-J and selecting “Latitude” “Longitude” “Altitude”. You may need to press Command-B to rebuild the thumbnail to have the info show up the first time (or on updates).

When exporting images (say to flickr!), your geo-annotated data will stay intact and can then be mapped (or mapped).


Concise, pretty listing of Open-Source Mac Apps

Published in Apple, Open-Source, Technology


Cyberduck iconOpenSource Mac has a listing, and short descriptions, of the excellent selection of open-source applications for Mac OS X by genre. I stand by each of their listings that I’ve used, and am actively downloading the applications I have not yet tried out (e.g.cyberduck).

Of course, they could get higher-resolution icons to display for each application.

Also check out their reference to NoThickManuals Wiki.


IndigoWidget v1.1 - now with Preferences!

Published in Apple, Dashboard, Home Automation, Javascript, Programming, Technology


Since remote access via the IndigoWidget was such a popular feature - and not everyone is a programmer, I have moved setting remote control via the IndigoWidget as a preference on the backside of the widget.

You can download the new version from the software page. There is also an included Readme that discusses setting up your widget over to work over the internet back to your house or office.

I hope you enjoy!

IndigoWidget backside

troglogdyte speak

For those interested, coding up preferences for a Dashboard widget are actually impressively straight-forward and easy.

The only two lines of code that are special are the following which get and set the preference for the widget:


    var IndigoServerIP  = widget.preferenceForKey("serverIP");
    if(IndigoServerIP  != '')
        getObj("serverIP").value = IndigoServerIP;  

    widget.setPreferenceForKey(getObj("serverIP").value, "serverIP");

Assumedly these are stored by the name of the widget (e.g. com.highearthorbit.widget.Indigo).


Evening with a bunch of Mac Geeks

Published in Apple, Programming


Friday afternoon I zoomed across the south-Michigan border (the wrist as it were) on < ahref='http://amtrak.com'>rails (no, not those rails) to the wonderful city of Chicago. I was enroute to the impromptu gathering of Mac geeks dubbed Evening at the Adler hosted by DrunkenBatman.

The actual event amounted to 3 hours of panel discussion by 10 leading independent Mac software developers (well, 2 were Apple developers) ranging from “how to become an independent developer” to “what to do when the big Fruit rolls on your turf”, and including stops in “why is DRM bad?”.

The discussion was very enlightening. For example, when someone with a lot more money then you rolls out a copy of your product on *every* machine, what do you do? Move on, diversify, cry over some spilled milk but then innovate. The one thing that was missing was more discussion. Many of the 200 audience members would have liked to have shared more of their ideas/questions, but the event was limited in time.

Like any conference with talking heads, it’s also enlightening to finally see and hear people you’ve read about a lot. Putting faces, and real personalities to online personas. The audience was, humoursly enough, filled with about 4 archetypes of male geek and 1 archetype of female geek. Yes, I did fall into a category myself. The panel was a little more diverse, perhaps indicative of why they are successful. Of course, perhaps it’s also because they choose to sleep less. ;)

Afterwards we were off to Jak’s Tap, a small bar with a large beer selection where I devoured me some yummy Honker’s Ale while delving further into what our vision/thoughts were on the plusses/minuses of 10.4 and what should be included in 10.5.

If you can ever make it to a small developers conference, get-together or PUG meeting, I *highly* recommend it. I made it to ADHOC/MacHack and now this and have loved every minute of each meeting.


IndigoWidget v1.0 released

Published in Dashboard, Home Automation, Javascript


IndigoWidget is a Dashboard widget for controlling Indigo Home Automation software. IndigoWidget Devices

Home automation is great. Perhaps not necessary (ok, definitely not necessary) but I’ve always gotten a big kick out of writing software that makes things in the world turn on, move, shake, blow up, or otherwise do something real. It’s like magic to me, even when I wrote the code and understand all (most) of the physics behind it.

Now you can control your lamp sitting on your desk just by hitting F12 and then flipping the switch or sliding the slider! Well, ok, better example - turn off all the lights outside before you go to bed. Or, get that fresh pot of coffee brewing, straight from your dashboard!
The project is free of charge, and open-source (well, like most widgets - but this is actually open-source licensed). So have a go!