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:
   an especially safe time for driving
Sunday, December 31 2023
This morning Gretchen went off to meet up with Greg, half of the semi-famous couple we know over in Olive Bridge. They walked along the south shore of the Ashokan Reservoir and saw a bald eagle, among other things. Greg is an avid bird watcher, among many other things.
When she got home, we had a fairly typical Sunday morning in front of the woodstove, grazing on the last of the baked goods from Little Loaf Bakery.

This afternoon I finally managed to solve one of the more annoying glitches with the spec web app I've been working on. I've been using Javascript text ranges and getBoundingClientRect() to draw an overlay of semi-transparent rectangles over a text to highlight "issues" the program finds when running "tests" during "scans." The advantage of doing things this way is that the text itself is not changed by this process (as it would be if, say, HTML tags were inserted), allowing multiple tests to be performed on the same text to produce an overlay of rectangles of different colors. The problem, though, was that if any issue spanned two lines (or, in some cases, butted up against the end of a line), then two entire lines would be highlighted for the entire width of the column. I'd tried several times to get ChatGPT to find a solution for this problem, but all of its solutions failed. So I was forced to come up with one of my own. My algorithm checks to see if a rectangle being produced is two lines high, and if its, it finds the offsets of all the spaces in the phrase being highlit. It then finds the space just before where the phrase goes to the next line by testing rectangles created by a substring ending at each of the space positions (starting from the first one). Once it has that rectangle created, it creates a second rectangle on the next line for the rest of the highlit text, and gives them both the same onclick events and metadata. This works great, with the only indication that both rectangles are technically distinct being that a mouseover on one doesn't produce any of the mouseover effects on the other (though this could probably be fixed with Javascript).

This evening Gretchen and I dog-proofed the house and then went by ourselves to Erica & Justin's family compound near Palenville. They were having a small get-together with just three people in addition to us, all of them (especially Amy T) familiar from other gatherings. When we arrived, we were greeted at the door by Dino, an enormous brindle-coated pit bull. Dino is a total sweetheart and teddy bear, but he doesn't get along with other dogs and was the reason we'd had to leave our dogs at home. When we arrived, the dinner table had already been set for those who would be eating, and we sat down and had a pretty good meal of noodle bake, fried tofu cubes, salad, and braised kale. Erica and Justin's little kid was going through a phase where he wasn't much interested in eating, though at one point he held a bottle of salad dressing to his face (which was pouring rivulets of snot from both nostrils at the time) to drink it, so I had my salad without any dressing. While we were eating, Dino the enormous pit bull kept rearing up and putting is paws on the table to steal whatever food he thought he might be able to reach. He completely shameless about it, not really caring if he was told no and reaching for anything tiny crumb he could as he was shoved back down to the floor. Topics at dinner included 23AndMe ancestry information, which (for about half of the people present) was percentages in the high nineties of Askenazi Jew, although Justin, me, and an Asian woman were different.

Later we moved into the living room and chatted about various interesting topics in front of a roaring fire while an increasingly-intoxicated Justin kept suggesting we play some card game (which, thankfully, we never got around to doing). I was drinking bourbon on the rocks and lying in a beanbag, being careful not to get too drunk. Among the topics discussed was AI and Gretchen's current gig teaching an AI to write better poetry. Interestingly, Erica had never used ChatGPT and didn't seem to know what it is.
Later, Erica's two elderly parents and a late-silent-generation relative (and his heavily-perfumed trophy wife with a Slavic accent) came over to watch the ball drop on television. The vibe at the party changed at that point, so Gretchen and I decided to head back home before the arrival of New Years. Driving during the half hour around the midnight on New Year's Eve is one of the safest times to be on the road, since nearly everyone at that moment has gone somewhere stationary to celebrate the new year. There were barely any other vehicles even on the Thuway. We were a little south of Saugerties on that when 2004 began.
Back at the house, Charlotte was incredibly happy we'd returned. She'd been a really good girl and hadn't destroyed anything at all.

Dino the Dog trying to find crumbs after the dishes were cleared from the dining room table this evening. Click to enlarge.

For linking purposes this article's URL is:

previous | next