fogbound.net




Sun, 7 Dec 2025

Holiday memories

— SjG @ 2:31 pm

We used to have a lot of physical devices on our network*. Servers, firewalls, file-shares, staging servers, development machines… all sitting on the network with their hard drives endlessly spinning, spinning, spinning!

System administrators are fond of referring to platter-based hard drives as “spinning rust,” partly as a reference to the ferro-magnetic iron crystals that store the actual data, but also to remind us that it’s always decaying and corroding. Over time, drives start generating errors or becoming unreliable. When we had physical devices that exhibited issues, we’d yank the hard drive and replace it. Over the years, we’d accumulated a pile of a dozen or more drives that were unreliable or bad but still contained data.

The data is not especially sensitive, but there could be stuff that could be abused or belongs to other parties. There may well be meeting notes, source code, sample data files, or there could be cached passwords or other credentials. It’s not worth just hoping it’d be OK to release to the world. So it’s a chore to render this data unreadable.

Pulling apart spinning platter hard disks is humbling. These are incredible little devices, with incredibly precise machining and elegant engineering. Going through a pile that spans a decade, you can actually see the improvements in technology: new vibration damping systems, different head-parking strategies, traps for dust, and more. I see these parts, and am inspired by the craftsmanship that goes into them.

So in the spirit of admiration, I offer these (hopefully unreadable) holiday memories.

* Now, of course, we have few physical devices but all those same services are implemented on “the cloud.” This means that someone else has physical devices somewhere, with their hard drives (or SSDs) endlessly spinning, spinning, spinning (or trimming, trimming, trimming).


Sat, 1 Nov 2025

Risography

— SjG @ 4:35 pm

Way back in the dark ages, I worked in a print shop. I’d use a huge wall-mount camera with a vacuum-back with screens to make halftones, and print them on an AB Dick 360CD printing press. I hand-cut designs in rubylith for photographic designs, and made silk-screen masks by cutting two-layer lacquer sheets with an X-Acto knife. All this was fancy high-tech in those days, and fueling an explosive growth in small-press “reprographic” shops. Consolidation, Kinko’s, and desktop publishing were all looming — almost imperceptibly — on the horizon.

Well, that was a long time ago. I haven’t gotten significant quantities of ink on my hands in years. But at CrashSpace, there is a Risograph machine. Once high-end business printers, these fast, multicolor mimeo machines are very popular among zine makers.

I was in the space, and one of the folks there offered to teach me how to use the Risograph. It was a fun experience taking a photograph and performing color separations. Next, we put in a stack of scrap paper, loaded up the scarlet ink drum, and ran a collection. Then it’s pulling out the scarlet ink drum, loading up the black ink drum, and printing the next color. All of this, without cleaning platens, rollers, or burning new plates! What’s more, all of this, without getting my hands covered in ink!


Wed, 23 Jul 2025

Photo Maps

— SjG @ 8:44 am

I have long wanted to be able to post visual stories where I can show a map of a place with specific pictures. If you go to the “Map View” of iOS Photos, or the “Map” view in Adobe Lightroom Classic, you can see sort of what I was looking for. There are many ways to view geo-tagged photos on a map, but not as many to be able to create a map for sharing.

What I wanted was to be able to tell a visual story, like a hike or travel day, and have it displayed in context. I wanted to be able to place this in a blog (perhaps even here!?). I wanted it to be easy: throw a few geo-tagged photos into a directory, run a script, and get my annotated map and scaled images. I saw there are WordPress plugins that will do this available for purchase, but they all rely on Leaflet or Google Maps and involve a lot of view-time dependencies. Furthermore, I don’t like Google Maps because anyone who views my story would be tracked and analyzed by the evil advertising algorithm.

Example … from the Atacama Desert

The WordPress plugins are also more interactive than I need. I don’t necessarily want the ability to zoom, or scroll away from my specified region, or list all of the restaurants within the view.

So, to make a long story short, I’ve started to write the script I want. It’s an ugly PHP script that reads the geographical data from a folder full of JPGs. It uses a free account at MapBox to download map tiles and assembles the background. Then it draws the locations of each photo along with a direction indicator (also extracted from the EXIF data of the photos), ordering them by the time the picture was taken. It scales the images to a web-appropriate size, then it slaps together a primitive web page with the labeled map and just enough Javascript to display the photos in a “lightbox” effect when you click on the location. Once it’s generated, there are no external dependencies and the entire thing fits in about 4 kilobytes (not including the images).

Here’s an example in Ventura, California, and another in Mar Vista, California.

These raw outputs are fine, but if I wanted, the HTML is easy to edit to make more friendly. For example, I could replace the filenames in that right-hand column with descriptions.

There are some interesting challenges. It turns out the coordinates that the iPhone injects into the EXIF data are usually pretty accurate, but when I wandered around a small park and took pictures, in some cases the coordinates were off by a dozen meters or so. The compass direction tends to be more accurate, except in rare cases where it’s completely way the heck off. I don’t know if it’s magnetic interference, the fact that the orientation of the phone changes when one lifts it to take a picture, or what is the cause.

I should probably come up with a better strategy for overlapping photo points. It might be nice to anti-alias the circle that’s drawn. I could also potentially avoid drawing on the map at all, but rather use CSS to draw the locations within the web page. That would allow easier visual customization (at the expense of bigger file sizes and more complexity).

At some point, I should also get over my embarrassment, and open source the code.


Tue, 13 May 2025

Gatekeeping

— SjG @ 6:10 pm

(inspired by a wise Mastodon thread)

(click to view it)

It made me think that a lot of people’s real hobby is gatekeeping, but they apply it to different avocations.

Way back in the ’90s I was a member of a photography club. Each month, there would be a competition among members. Pictures were scored from 1-5 on each of three criteria, which were something like technical expertise, aesthetics, and realization of the month’s theme. Everything was highly formalized with rules. Entries could only be recent slides, must comply with very specific labelling requirements, and so on, but the rules didn’t end there. Interpretation of the theme had to be extremely literal. I was lectured about frivolity on more than one occasion when using the theme metaphorically.

In the technical category, there were also a lot of absolutes. Visible grain in an image at normal magnification was an immediate disqualification. Technical points were deducted if there was anything remotely out of focus. Portraits which were allowed to have bokeh — but only if you couldn’t determine how many blades the lens diaphragm had. Furthermore, it was considered a technical flaw to have a portrait where the subject’s nose broke the outline of their face or had more than one reflected light visible in each eye. It wasn’t considered good form to mention make of the camera during the competition itself, but everybody knew who shot Leicas or had Zeiss lenses on their Nikons, and this influenced technical scores accordingly.

But beyond these kinds of rules, one of the old-timers had developed a set of “aesthetic guidelines” which were ruthlessly applied (in retrospect, these may have been born of some form of OCD). Two points would be subtracted from any image’s aesthetic score if there was water breaking the bottom of the frame “because that’s bad composition.” Any image that was brighter near the bottom than the top lost points. Landscapes that were not black and white had to have a person or a horse visible “to create interest.” Pictures of urban or industrial scenes had to be taken in hard daylight, while pictures of nature would lose points for not being taken at the Golden Hour. Pictures of people had to have an even number of eyes visible. Lines always had to lead into the image and never out.

I remember on one occasion, two of the judges arguing about a picture’s aesthetic qualities and one finally taking out a tape measure to confirm that the eye of a seabird was not exactly 33% from two edges of the frame. He triumphantly reduced the picture’s score for violating the “rule of thirds.”

I tried to participate on their terms for a lot longer than I should have. I was routinely chastised for not taking photography seriously because I didn’t study up on the rules. Needless to say, I eventually quit. I’d lost a lot of enthusiasm for photography, and it took a long time to get excited about it again.

I see this as a common thing in “typical guy hobbies” be they photography, cars, phones, motorcycles, programming languages, computers, guitars, knives, operating systems, guns, bicycles, or gaming systems. It often manifests as confusing the gear with the hobby, but also devolves into arguments about X being better than Y. It turns out that arguing in-group / out-group status is more interesting for a lot of folks than the hobby they’re ostensibly enjoying.

“Forget that stuff,” I yell (trying to convince myself and everyone else). Go out and do the thing, use what you’ve got, and enjoy it. That’s the real point, after all.


Mon, 12 May 2025

Look at this Distinguished Gentleman

— SjG @ 6:33 am
Look how he is walking, yes very distinguished, yes.
Filed in: