Debugging childbed fever

Vienna in the 1840s was a scary time and place to give birth. From 1840 to 1846, 7% of women who gave birth at the Vienna General Hospital died of a postpartum infection called childbed fever. One doctor at the hospital, Ignaz Semmelweis, made it his mission to stop the disease. His work saved hundreds of lives, contributed to the development of medical hygiene — and can teach us a few things about debugging.

Some thoughts on gender and science/technology magazines

One day in 2010, I flipped through the latest issue of National Geographic and counted how many women and how many men were mentioned by name. It was actually an article about women in a particular country that sparked my curiosity. The unusually many women in that article (it turned out to be 8 women and 4 men) stood out in contrast with the rest of the magazine. The other feature articles (none of which were purportedly about men) mentioned in total 54 men and 12 women.

“The never-ending notary nuisance,” or, “infinite loop at Infinite Loop”

A couple weeks ago, Apple posted a note that says:

In an upcoming release of macOS, Gatekeeper will require Developer ID–signed software to be notarized by Apple.

Being a developer of Developer ID-signed (i.e., non-App-Store) software, I set out to vault Apple’s latest hurdle.

Xcode includes a command-line utility called altool that manages the notarization process. That seems appropriate since my app isn’t built using Xcode’s build system.

Tweaking Synology’s DNS Server For Great Justice

Years ago I purchased a Synology NAS (a DS1812+, if you must know). I also purchased some hard drives for it, and a 2GB stick of RAM (bringing its total up to 3GB). Under the hood it’s a dual-core Cedarview Atom x86 CPU, and it runs a Linux distro wherein the owner of the device also has root access (i.e., you own what you own, like in the good old days). It’s also got dual GB NICs, some USB ports, etc.

In addition to storing substantial slabs of data, you can install services on these devices, so in effect they’re more like mini servers than the NAS name might imply. It’s busybox-based though, so a lot of the normal Linux commands act weird or don’t have useful aliases (more, not less, only a subset of vi commands work, etc).

One of the services I opted to install was a DNS server, in the hopes that it would allow me to move some per-machine hosts file management stuff to it, and that our previously-rootless devices (read: iPads, iPhones, etc) would also be able to finally take advantage of a local caching name server with internal friendly names for devices that don’t participate in Bonjour.

4 images from the Allied Media Conference 2016

If you were to metaphorically represent media depictions of Detroit as photos of individual people, most would be either a mugshot of a scowling black man (the personification of crime lurking among abandoned buildings) or a photo looking down on big sad brown eyes like one of those “save the children” ads (the personification of neediness and white man’s burden).

The Allied Media Conference, held in Detroit for more than half of its 18 years, generates a powerful counter-narrative and counter-imagery about Detroit. The AMC is very much by and about Detroit (about a third of its participants are from Detroit). It’s also a place for wider communities of people of color, queer and trans, disabled, low-income, and other identities and issues, to come together and organize around common principles.

Emulating "defer" in C, with Clang or GCC+Blocks

In the Go language (and now Apple’s Swift), there’s a new control-flow mechanism: defer.

When you tag a function call with the defer keyword, its execution is deferred until the end of the current scope. This makes it easy to construct an ad-hoc use of the RAII pattern — handy for placing resource initialization and finalization next to each other, to make it less likely that you’ll forget to finalize a resource.

I was curious whether it was possible to do something similar in C. It turns out it’s pretty straightforward.

Project Ruori encounters electro-music, a suit of armor, and a fallout shelter

Project Ruori, a pseudorandomly generated collective of humans and machines, sent several delegates to this year’s Asheville electro-music festival. We came prepared with knowledge gained from last year, for example: if it smokes, unplug it. The human delegates — Steve Mokris, Melissa Egan, and Jaymie Strecker — now present their report of this year’s proceedings.

Who were the jockeys in Muybridge's photographs?

Before 1878, few people knew what a galloping horse looked like in slow motion. That changed when Eadweard Muybridge, witnessed by the local press, used a clever apparatus to take a series of photographs as a horse galloped by. The result was “Sallie Gardner at a Gallop”, a.k.a. “The Horse in Motion”. Back then, you could watch the series of photographs as a movie on a zoopraxiscope. Today, you can watch it in an online video.

I first became aware of this piece of history when my co-worker Karl Henkel made a colorful rendition of related photographs, “Annie G. Galloping” (pictured at right). I looked up the story behind these photographs, but it didn’t answer the question I was wondering about: Who were the guys riding the horses?

Sorting of products in Drupal Commerce Add To Cart form

This is a quick post regarding the sort order of option elements in the Drupal Commerce Add to Cart form as part of Product Reference fields.

I was confused as to how this was sorting. It does not sort by the Product title. It does not sort by the Product entity identifier. On my development site, the options seemed to be sorting by SKU.

There were a couple options to look into:

Found: 25-year-old COSI visitor guide

I’m in the middle of cleaning and packing to move house, and I came across a time capsule I made as part of a workshop at COSI (Columbus, Ohio’s science museum), 25 years ago today (1988.07.14). I was 5 years old at the time.

Included in the time capsule were two pieces of yarn identifying my height and circumference, and a personal-facts sheet, mentioning such things as my favorite musician (Herbie Hancock, of whom I’d recently become aware via his appearance on Sesame Street) and my favorite toy (the Yamaha PSS-470 synthesizer with its wonderful FM modulation control panel).

And this Souvenir Program, submitted for your approval —