Your leaking thatched hut during the restoration of a pre-Enlightenment state.


Hello, my name is Judas Gutenberg and this is my blaag (pronounced as you would the vomit noise "hyroop-bleuach").


decay & ruin
Biosphere II
dead malls
Irving housing

got that wrong

appropriate tech
Arduino μcontrollers
Backwoods Home
Fractal antenna

fun social media stuff

(nobody does!)

Like my brownhouse:
   diffused across a vast number of files
Thursday, June 27 2019
While I was at work today, Gretchen took a flight to the San Francisco Bay area as part of some sort of environmental poetry event. Meanwhile I compelled myself to learn how various parts of the Angular Material UI library worked. One important revelation was that HTMLesque templates in Angular (at least in Material) can be non-linear. By this, I mean that nodes within the XML-like "HTML" of a template can be treated as variables, used in an order unrelated to the order in which they are specified in the template. For example, in a Material template for an HTML table, the specifications for both the header row (the first row of the table) and the cells for the body of the table are both grouped together, away from the specification for a row. This is precisely the kind of complexity that is making web development completely inaccessible to anyone but the most determined of would-be web developers. I was lucky to have come into the field during a time when the learning curve was almost comically gentle. At some point I got stuck trying to call methods from various arbitrarily-named components (is that that what they are?) only to find those methods didn't exist on those components. When I went to, you know, look at the libraries providing the functionality (hidden away in a directory called "@angular"), all I found was many dozens of files, most of which consisted of one or two lines of terse code importing data from some other file that, when investigated, did the same thing. It went and on and on like this until I gave up, with no actual code doing anything. As Gertrude Stein put it (regarding Los Angeles), there was "no there there." The functionality was somewhere, diffused across a vast number of files, but I was never going to find it. Searching the codebase was like going through my brain neuron-by-neuron to find the memory of that plastic knitting machine that my childhood friend Jenny Mothershead used to knit socks. Who writes code like this? As I put it in a frustrated StackOverflow question, it was like trying to read a novel spread out across PostIt notes "in a windstorm." As usual, StackOverflow wasn't helpful. I asked a question there about where exactly in the codebase CdkTableModule lived, and the only response I got was that I should read the documentation. Thanks for the helpful tip!
After work, I popped open a road beer (which I'd kept cool in the office refrigerator) and drove to the Tibetan Center thrift store. The most interesting thing there was a waterlogged LiDE scanner. I already have a non-waterlogged LiDE scanner that I don't actually use, so I left empty-handed.
When I got home, I found evidence in Slack that I've been working on a project that might've been backburnered without anyone ever actually telling me. That's always fun! But Thursday this week was sort of like a Friday (for me at least), so I didn't let it get me down.
There was no evidence of the dogs in or around the house, so eventually I set off to look for them. I headed south down the Farm Road, since that was the likeliest place for them to be. Periodically I called out, though that is mostly useless when it comes to Ramon and Neville. Eventually I saw them lying in the deep shade under the hemlocks in a wetland just west of the Farm Road. They'd been chewing on a hollow log that might've once been a dead standing tree. Evidently it contained some terrified varmint, and they hoped that if they chew away the wood, they could extract the poor little guy. Ramona was happy to leave with me. She'd apparently been looking for any excuse to escape the varmint extraction vortex that had consumed her whole afternoon. Neville, though, wasn't done, and it took him another hour or so to turn up at the house.

I took an ambien before it even got all that dark outside. Soon thereafter, I heard the manic barking that meant only one thing: Ramona had treed a bear. The bear in question was a smallish individual about 15 feet up in sprawling red oak. He didn't seem that concerned when I showed up. I came with a leash and a camera, but of course the camera's battery was exhausted. So after dragging Ramona back to the house, I came back again to get Neville, this time with a camera containing a fully-charged battery. In the past, bears would come down the tree if they heard a human voice, but I was able to talk to Neville without the bear doing anything so rash.

For linking purposes this article's URL is:

previous | next