just remembering to do it
Tuesday, February 4 2020
On the drive home from work today, I stopped at the brick mansion on Downs Street to do some landlording chores. The first of these was to properly finish the dropped-ceiling lighting system for apartment 1L. As you'll recall, the panel containing the kitchen light collapsed to the floor due to a leak from the bathtub in the apartment upstairs, and I'd rigged a makeshift temporary light in the resulting void. Today I made a more permanent arrangement for the lighting, adding a second socket and placing both near the center of the missing panel. I'd bought two 90-watt-equivalent LED floodlights to put in these sockets, since any sideways or upward-directed light above the dropped ceiling would be wasted. I managed to do all this wiring without ever turning off the circuit, and this included moving the switch from the neutral wire to the hot wire. While I was up in the ceiling, I used three pieces of dimensional lumber and a sheet of plastic to create a sloping plane over the adjacent panel, where the bulk of leaking water from upstairs tends to go. I arranged the lowest edge of this plane so that it would dump any water collected into the panel hole where I'd constructed the new kitchen illumination system. This would create a ceiling leak in a stain-free panel, which I then installed. It was a two-foot-by-two-foot translucent sheet of plastic specially designed for this purpose. This sheet was unexpectedly brittle, and a corner broke off as I was trying to get it into place. Fortunately, with a touch of glue it was possible to fix the panel in such a way that the damage was invisible to anyone who didn't know it was there.
My other chore at Downs Street was to apply a little paint to the repaired wall in the attic apartment.
Soon after I got home home, Gretchen announced that she would be going out to see two different movies all by herself. But when she realized she couldn't find her wallet, she seemed like she might cancel her plans. She said she was worried about getting pulled over by a cop without having her driver's license. This seemed like a strange fear to me, since the consequences of being pulled over by a cop while not being in possession of one's license are not all that dire. Indeed, a couple months ago Gretchen actually was pulled over while driving 65 mph in a 35 mph zone without her wallet, and the cop only gave her a warning. Usually Gretchen is the risk-taker in our household (I would never drive 30 mph faster than a speed limit), but here she was being overly-cautious. Despite that, it didn't take much of an argument to get her to carry through on her original plans using the credit cards in my wallet.
Once Gretchen was gone, I made a firewood-salvaging run to a place where I'd stacked chunks of white ash just north of where the Stick Trail crosses the Chamomile. By this time it was already dark, and I had to use a flashlight. This was the first time I'd ever made a firewood salvage in the darkness, and it went about as well as a daytime salvage. Of course, I hadn't used a saw, and it's unlikely I will ever go into the woods and cut firewood in the dark.
For over a year now I've been monitoring various locations using video feeds and various weather data sensors. With the latter, often the trends of the data is as useful as any particular data point. To be able to see such trends, the web page where the data is displayed would have to keep a history of the data and show this somehow, ideally as a graph. I have some experience rendering graphs on web pages, something that reached its zenith when I built a comprehensive integration between the proprietary Mercy For Animals contact relationship manager and an open-source graphing system called ChartJS. Tonight I made a goal for myself of displaying graphs of temperature data on the probe that monitors the woodstove. I already had a good system for telling ChartsJS the specifics of how to render a graph, and it didn't take much work to use this system to draw a line graph of data next to the video feed from the camera on the page that displays that. Initially I had my simple backend script send random numbers as "temperatures," but then I managed to get it to probe the temperature sensor directly. Since the frontend was in charge of all the temperature queries, it could update the graph dynamically. I had much better results than expected after only about an hour of work. After that, it was time to drink a celebratory beer. Given all the experience I've had recently with the unnecessary complexity of Visual Studio and Dotnet Core in my workplace, it's nice to have a web environment (an AJAX frontend using vanilla JS and backend of PHP) where I can get useful things done quickly. Most of the work, it turned out, was just remembering to do it.
Currently, this system only plots data that arrived since the page was initially loaded. Refreshes of the page empty the graph. It would be easy to store the data, either in the Raspberry Pi's file system (super easy) or in a MySQL database (a little harder). If I did that, I would want to provide some way to see temperature trends across a range of timescales. I should mention that this system is similar to one I had partially implemented in my overly-complex Arduino-based weather probe, though everything was much difficult there, since I had to write fairly low-level eight-bit code to handle data storage, rendering graphs on the tiny LCD screen, and even strings and numbers.
As I worked, I watched a downloaded copy of Chris Watts: Confessions of a Killer, the Liftime Channel's attempt to capitalize on fascination with the Watts family murders. It wasn't a great movie, though its drama did a lot to explain how someone of a certain mindset might come to annihilate his family. I was also impressed by how closely the actors who played Chris and Shan'ann resembled the real people. For someone like me, who knows the story in photographic detail, there were a number of annoyances. The drill site where the bodies were hidden didn't much resemble the actual site, and included not just far too many oil tanks, but also sapling evergreen trees (instead of sunflowers in a flat, semi-arid expanse).
The state of firewood in the living room this evening.
For linking purposes this article's URL is:feedback
previous | next