Hi.

I’m a board member of the Organization for Ethical Source, a contributing software engineer at Freedom of the Press Foundation, a software engineer at the CFPB, an astrophotographer, and a photographer. I’m also a recovering grad student with an interest in the political work of algorithms. Some of the open source software I’ve written is on GitHub.

On Sustainability

It’s been a hot minute since I checked in on the W3C’s web sustainability work. I briefly joined the working group before other events interfered with my professional life. Given that big tech has thrown their sustainability goals out the window, I want to do what little I can in my little corner of the internet. So I went back down the sustainability rabbit hole to see if I can estimate what this website emits and how I can make improvements.

I got to a place where I could calculate this site’s emissions at an average of 0.11g CO2e per page. But that doesn’t tell the whole story, because my photo galleries pages a lot heavier (more and bigger images). The pages under /photography are 0.15g CO2e on average, but the “heaviest” is 1.454g CO2e.

So, I want to go through how do we get to those numbers, because there are a couple different sites to check that don’t tell you a whole lot. I also want to how to reason about them, how to make sense across a site and particular pages.

Sometimes you need to walk a tree

During a talk that I gave at Wagtail Space 2024 with my colleague Chuck Sebian-Lander, Auditing Wagtail Content (slides), I introduced a library we had worked on to help us audit. It walks through StreamFields to construct Django QuerySet-like objects specifically for understanding the shape of the content you have. But two functions in that library are super useful outside the audit context, so I’ve broken them out into their own library, wagtail-traverse.

I am a huge fan of Sigma’s optics and cameras, but I recently decided to consolidate some of my camera gear and switch to a Sony E mount camera (α7R V). But I wanted to continue using some of the Sigma lenses I have and love.

For a number of years Sigma has offered a mount conversion service to convert Sigma lens you already own from one mount to another, as long as the lens is offered in the destination mount. It’s an intriguing prospect in the abstract, being able to switch systems and not rebuy all new lenses. However, there doesn’t seem to be a lot of information out there from people who have had experience with it. I decided to give it a try, and write about my experience, breaking down the price I paid, the time it took, and to compare alternatives and provide some rationale for why I personally decided to use the service in late 2025.

Update: see below for an update based on my experience of converting another lens, my 24-70 II.