29 Jan 2020

Shortly after XOXO in 2018 I began running a Compass server to track and store my location. At some point in the future I wanted to have a cool visualization of everywhere I’d been, and nearly a year later I got around to looking at the data.

I wanted a good way to visualize the data I’d collected and began testing a tool called MapShaper, which lets you manipulate GeoJSON files and output SVGs. By default MapShaper will just plot each point as a little black dot, which isn’t terribly interesting.

I experimented with ways of applying color to the map to make it a bit more interesting. One of the first things I tried was varrying the color by altitude. Compass collects a lot of points, so they blend together into a line.

The result was pretty, but didn’t really say anything about what I had done there. I wanted something a little more abstract. Eventually I learned that MapShaper can reduce the precision of coordinates and count features, and combining these meant I could get a count of how long I’d spend at a certain location.

With a bit more scripting and a surprising amount of JavaScript I had a new look. The coordinates are reduced to a few significant digits, which aligned them to a grid, and each grouping is counted and colored based point count.

After a little while I got tired of having to manually change values in scripts, so I wrote a little GUI wrapper around my scripts, and then… went a bit further.

I wanted to recreate the same visualization on a live map, so I turned to Mapbox.

Mapbox required a lot of trial and error, but I eventually had all of the pieces in place. The map groups the points dynamically, colors them by count in the group, and can handle far more points than MapShaper can.

Something I didn’t expect after putting the live map together was how much fun it would be to simply zoom around and revisit places I’d been previously. I was especially happy when I found a few GPX files I’d recored back in 2012 while studying in France, I just wish they were more complete.

Capture One Background Scripts

07 Jan 2020

Capture One has a very robust AppleScript integration and nearly anything that can’t be done in Capture One can be done in a script. Unfortunately, not all of it is well documented or easy to access. Part of that is why I wrote a plugin for setting all of the available application scripts, which can at least be found by looking in Capture One’s scripting dictionary.

However, there’s another set of background scripts, only referenced occasionally in old forum posts, some of which don’t even have search results on Google1. The only way to find them is to dump all of the strings in the Capture One binary, and know what you’re looking for:

strings /Applications/Capture\ One\\ One\ 12

Script Handlers

Each of the background scripts is a method, or handler in AppleScript parlance, and is called directly by Capture One.

App Handlers


These handlers are called when Capture One launches or quits and take no parameters.

Batch Handler

CO_BatchJobFinished(jobUUID, rawFilePath, outputPathList)

This handler is called for each raw file processed. It’s passed the job ID, the path to the raw file, and the paths of each output image.

Capture Handlers


The Capture Started handler is a mystery. I’m not sure what it’s method signature is.

Capture Done is called for each captured image, and is passed the path to the new file.


on CO_CaptureDone(rawFilePath)
    -- Do something with the file
end CO_CaptureDone

In order for Capture One to call any of these handlers they must be in a script saved to the Background Scripts folder. To disable the script, remove it from the Background Scripts folder, Disabled Scripts is a good holding place.

After any changes have been made you’ll need to update the scripts from Scripts > Update Scripts Menu.

  1. Or worse yet: the only result is a forum post I wrote asking about it [return]

More Constructed Paper

20 Oct 2019

Visit Constructed Paper II…

After I finished my first series of construction paper photos I knew it was something I wanted to return to at some point. I wasn’t sure if I wanted to add more photos in the same style just with remixed color combinations or to shake things up a bit more.

In the intervening few months I happened to snag myself a Bowens Monospot, which is a unique spotlight strobe with a focusing mechanism, a mechanical iris, and a slot for gobos allowing patterns to be projected. Using the Monospot as the key light for another series of paper seemed like the perfect way to get a handle on what the light can do.

This time around I went for a much more dramatic light, compared to the soft low-contrast look from the initial images. All four photos are lit almost exclusively with the Monospot with one other light providing a little bit of ambient light to lift the shadows. One of the things I love about this strobe is that you can place little pools of light exactly where you want them.

Update: Background Scripts Plugin

22 Aug 2019

It would seem I have a poor understanding of what “available for download over the weekend” means, and after a couple months and a couple people asking about it I finally have the Background Scripts Plugin available for download.

The plugin reads the available scripts for the hosting version of Capture One, so future releases of Capture One won’t require updates to the plugin.

Landscapes and Glitches

13 Jul 2019

After my initial tests of using the field camera I knew I needed to find a sliding back in order for the camera to be used practically. Naturally that means turning to eBay. After some research I found a back that fit the bill, the descriptively titled “Movable adapter for Phase One Mamiya 645 Back to Arca Swiss 6X9”.

The new sliding back necessitated a new adapter for the Shirom. I opted to make an adapter that would take the Arca sliding back directly, rather than disassembling the whole thing.

One of the primary reasons I picked Arca Swiss is because of how simple it is to model. The adapter is simply a square with rounded corners with a light trap underneath.


The flow of shooting with the adapter is much improved, only held back by a couple of minor issues which are simply a part of shooting with a view camera, old lenses, and a digital back.

That isn’t to say nothing went wrong. In my haste to get something printed out and working I used a translucent white plastic. It’s mostly fine, and probably only reduces the contrast a little 1. Unless light is directly hitting the adapter.

When the sensor can’t get a good dark frame to figure out when the exposure starts and stops weird things happen. I can’t be certain what happened in either of these images, but the results are, in their own way, kind of beautiful.

They remind me a little of messing with a Polaroid as it develops, where you end up with a unique photo created by altering the latent image.

After a few more tests, I did take some photos which exemplifies why I got this camera in the first place.

The photo above is a stitched panorama taken along Highway 46 on the Central Coast of California.

  1. The idea is to eventually mill the adapter out of aluminum. [return]