In February I wrote that I was leaving Lightroom, which is an easy thing to write and a harder thing to find out about. The test isn't the day you stop paying. It is the day, some months later, when you go looking for a photograph you developed under the old regime and want to know whether it survived the move.
So here is one, opened this afternoon.
The file
A September afternoon at Stølevann, shot on an OM-1 with the 40–150mm at 90mm — f/4.5, 1/1000s, ISO 200. Mist coming off the water, sun somewhere behind the trees on the far bank, a diving platform out in the middle of it. I developed it in Lightroom at the time and was happy with it: warm, low-keyish — “atmospheric”.
Two years later it is an .ORF sitting in a folder with an .xmp next to
it, and Photo Developer has never seen either.
That is the whole claim of a file-based workflow, and it is either true or it isn't. Nothing was imported. There was no catalogue to point at, no migration assistant, no progress bar. I opened a file and the photograph was already developed.
What actually crossed over
Photo Developer marks the panels a photograph is using with a dot, which turns out to be an unusually honest way to see what a sidecar contains.
Everything lit up there is Adobe's crs: vocabulary: exposure, contrast, highlights,
shadows, whites, blacks, the parametric curve, temperature and tint, vibrance and saturation, the
twenty-four HSL fields, colour grading, sharpening and noise reduction, the crop and its angle.
Photo Developer reads that vocabulary directly, because there was never a good reason to invent a
private one for values that already have names.
Tone EQ stayed dark, and that is the boundary drawn in the right place. Tone EQ is mine —
it lives in a pd: namespace because Lightroom has no such control and no opinion
about what it should mean.
The honest limit is on the other side of the same line. Lightroom's local adjustments and its healing don't come across — Photo Developer keeps its own in its own namespace, and the two do not speak. Nor do collections, virtual copies, stacks or history. Most of that lived in the catalogue rather than in the file, and the catalogue stayed behind.
Not identical, and it shouldn't be
The right-hand frame above is a reading of my 2024 edit, not a reproduction of it. Same recipe, different kitchen: a different RAW decode, a different tone curve behind the sliders, different highlight handling. Numbers that meant one thing in Lightroom mean approximately that thing here.
I would be suspicious of anyone claiming otherwise. Two engines agreeing to the pixel on a twenty-slider edit would mean one of them was pretending. What you should expect — what I got — is a photograph that opens recognisably as the one you made, close enough that you are adjusting rather than starting over.
Then the part that is mine
From there it was a short session. I took out some branches on the right that I had always meant to deal with and never had, and softened the whole thing toward the glow the afternoon actually had.
A minute and eleven seconds, and most of that was the branches. Not because the app is fast in some benchmark sense, but because I didn't spend the session rebuilding an edit I had already made. The 2024 work was on the sliders when the window opened. I was finishing, not restarting.
What made it work, two years earlier
None of this happens by itself, and the preparation is the part worth copying.
Before I stopped using Lightroom I went through the catalogue in batches and wrote the metadata out to sidecar files. That is a menu command, and it is the whole migration — every develop setting Lightroom holds in its database gets written into a plain text file next to the RAW, where any application can read it.
There is one trap in that, and I fell into it. Lightroom writes external .xmp files
for proprietary raw formats — ORF, CR2, NEF, ARW. For DNG and JPEG it writes the metadata
inside the file instead, because it can. That is tidy and it is also invisible to
anything looking for a sidecar. Close to half my archive is DNG or JPEG, so this was not a
rounding error — it was most of a decade. I ended up writing a script to extract sidecars
for those.
The end state is what matters: for every photograph, a file next to it holding everything that had been said about it. Counted across the archive now, a little under thirty-three thousand photographs carry Camera Raw edits and around eighteen hundred carry Photo Developer's. That ratio is the honest picture of a migration six months in — the new work is a rounding error against the old, and the old is all still there, still legible, still open to whatever I point at it next.
Which is the part I should be straight about, because it would be a better story if this afternoon were the moment of truth. It wasn't. Most of those eighteen hundred were developed in Lightroom first and have already made this crossing — opened here, arriving as some roundabout version of what they were, then nudged either back toward what I remember doing or off toward whatever I think now. That is not a migration event. It is just what opening an old photograph looks like from here.
February's argument was made in advance and on faith. This one is a fair example rather than a special case, which is the only reason it is worth showing you.
If you are thinking about the same move, I wrote down the recipe — what transfers, what doesn't, and what to do before you cancel anything.