< | >

Hacker's Diary

A rough account of what I did with Emacs recently.

January 31
Inspector George Gently was tonight's fare - the very first episode - and it was entertaining. It's like the Morse/Lewis setup, except if Morse had a sense of humour and Lewis was a mouthy prat.

January 30
Charger still claiming offline. Trying to figure out how I scraped some details out of this the last time I was tinkering with it: I suspect I may have set up a rogue WiFi device with the same SSID and password as the charger, and got the app to connect to that. Which looks like a weekend task.

Rizzle and Izzle is drawing to a close. Jane's off to the FBI, Tommy has shown up again, Maura's getting involved with the free clinic, Vince is retiring, Frankie's getting married... honestly, though, I keep feeling like the scripting in this is mediocre at best, the missed opportunities to dial it up even slightly frustrating.

January 29
Pretty sure I could stock this journal entirely with things in my noddy little home automation stack that have spuriously failed for no evident reason. Today's? The MQTT doodad that scrapes data out of the car charger apparently stopped working at 6am yesterday and hasn't been able to resume since.

It is showing symptoms, on analysis, of lacking a HOME environment variable, or of having same set incorrectly in cron's environment. Given I didn't touch nuthin', it's possible that this was some change in cron that I am not aware of.

Wait, no, that's a red herring. The real problem seems to be that the vendor API has either changed or is broken. Awesome. (yes, this is something I reverse-engineered.)

The app claims the charger is offline. The network says, "nope, it's online", so I can only assume the vendor is having issues. Awesome. Guess I can try the old "turn it off and on again" and see if it improves, or given I'm probably out of warranty I can pop the damn thing open, clone the RPi inside, and reverse-engineer the thing properly.

January 28
Forgot to mention - after the power outage at the weekend, my creaky macOS jump box seemed to stall while booting. When it hadn't successfully booted after an hour I did a hard power-off and let it go again, and this time it was fine. I have no idea.

January 27
Today was so hectic it felt like that 30 Rock gag about "what a week" except I felt like that by 3pm Monday rather than Wednesday.

January 26
Excitement! The power flickered but stayed on, then someone rang the doorbell and told us our electrical feed was on fire. It was pissing down and I was in "not leaving the house" clothes; by the time I'd put on something more suitable for the weather, the someone had gone (they were just passing in a car, and stopped - good samaritan!) I looked up at the power feed and could only see exhaust from the boiler, so presumed that must've been what he saw.

Ten minutes later, the next door neighbour rang the bell and asked if we had power. They'd lost power with a burst of sparks visible outside the house. hmmmmm. I had another look at the power feed and if I squinted it might be a bit scorched looking. She called ESB Networks to see about getting their power back. When the ESB guys turned up - in remarkably chipper mood for what must be an extremely busy time for them - our power had finally decided that it would turn off also. As far as I can tell the ESB guy replaced the tails feeding into the house, but because of the aforementioned weather conditions it wasn't really possible to see after they'd left. In total I think we were offline for about two hours... wait, I can check my toys, in fact: roughly 13:25 to 15:50, so more like two and a half hours. I'm idly curious as to what the age of the thing they replaced was - from the 2007 renovation of this house, or the 1935 build, or somewhere in between?

Devil's Hour: the answer to last night's question, disappointingly, appears to be "Season Three".

I wrote a noddy little thing to turn crontab entries into launchd plists. It's not even fully complete: as soon as it was sufficient to convert the crontab I was looking at, I stopped. In the process, I did discover that you can specify <string> values for Minute, Hour etc. and it treats <string>0</string> as if it were, in fact, * rather than 0. That took a bit of time to figure out.


January 25
More Devil's Hour. Where is this going?

January 24
Started on season 2 of The Devil's Hour which is more of a headwrecker than the first season because we can't quite remember how the first season actually worked out, and narrative crossover is kinda part of the whole thing.

January 23
Talking offhand to someone today about protocol handlers in Java and the pain of writing same. And what am I looking at right now for, uh, non-work purposes? Mmmhmm.

January 22
Durrrr. Forgot to actually launch the disk copy last night, so did it this morning instead. It was done when I got home from work, and the drive booted immedateily when I swapped it in. Laptop is reportedly snappy now.

Next-day delivery is a dangerous thing. That is all.

January 21
The usual diversion from current task to unrelated task: fitting a new SSD in a clunky old Windows laptop to breathe some life into it. Disk copy time is half a day so I'll let it run overnight.

Finished re-reading Silo, and yeah. Story differs but the net result is about the same, and seasons 1/2 cover book one ("Wool", for those of us who read it after it was a collection of short stories but before it was a TV series). I still feel like the whole introduction of Judicial as a third leg is unnecessary, particularly given where the story goes later.

January 20
React stuff almost working. I had a page-level reload using a meta tag; that failed whenever the server was offline or otherwise unreachable, something that happens because my EC2 instance is too small and I'm constantly procrastinating on doing something about that. I've replaced the meta tag with an in-page timer and hooked it to React state. It works perfectly on my laptop but for some reason doesn't work on the iPad which is the primary display for this app, so now I'm gonna have to debug that.

January 19
So what do we watch between now and whenever the next Silo, Doctor Who, Reacher, or Slow Horses shows up? I guess we've still got the final season of Rizzoli and Isles.

Bit more poking at the previously-mentioned React stuff; like seemingly everything in the javascript world, if you're not working with it on a daily basis, you get out of date very rapidly. Some of what I'm doing is converting existing cdoe to the current version of the same thing, which is somewhat annoying to have to do.


January 18
I was sure I'd seen The Negotitator before, but apparently not. It's a good, tight movie that wastes pretty much none of its running time, and I couldn't figure out who the "obvious" ringleader was until the reveal, because they did a good job setting up at least one other principal for it.

January 17
Silo season finale: wow, they more-or-less stuck the landing. Nice. I've started rereading the books to see how the story compares.

January 16
I still don't quite understand where my shiny Mac M2 gets all the bass from. I mean, it's not like it has a big resonant space to play with, but there's some omph in there somewhere.

January 15
Done and planned for 2025 so far: 1 x-ray, 2 MRIs, a court cause, and a "trauma clinic". Hopefully this isn't a bellwether for the year.

January 14
Character evolution for Ms. Rizzoli seems to have landed on "let's make her behave like a two-year-old who demands things her way regardless of conseuqences." It's rather grating, and I can't imagine the actress was particularly happy with it, except she was probably getting a large sack of cash to deal with the trauma...

January 13
Two lessons from my constant fiddling with OpenHAB: Firstly, if you're gonna have home automation of any sort, make sure you have a goal in mind. I've a z-wave network of (mostly) TRVs that is largely a hacker's toy. Secondly, the idea of home automation is far more attractive than the reality. After all, the reality is brought to you by the same process that brought you, "it's not working? try power-cycling it and see if the same thing happens".

January 12
Back on our regular Rizzoli and Isles fodder. One of the most jarring things about this show is that the Rizzoli of the title has shot numerous perpetrators - pretty much all fatally, as far as I can recall - with zero consequences. Her brother, on the other hand, had a whole episode dedicated to "maybe he shot someone he shouldn't have?" but of course in the end it worked out: hurrah, he killed the right person. There was a brief flirtation with non-lethal weaponry a couple of episodes back but that seems to have gone straight out the window as tonight's was back to shoot first, ask questions later on the off chance that the lead donation recipient survives.


January 11
Final season of Vera! Ever! Hope it's a good one... wait, what, only two episodes? Sheesh... hardly a season, is it? But ok, the final episode was well done.

January 10
Silo: almost complete and I'm still not sure what they're going to do in the final episode. Not to bang a drum repeatedly but it looks like introducing the Judicial subplot has complicated things that need to be resolved.

January 9
The Z-Wave adventures continue: at 02:45 this morning, the controller attempted to process messages from three devices that aren't in the house. I think it just made up some node IDs.

January 8
Running the Z-Wave binding in trace mode and looking at what it's doing. I am thinking it could do with posting a good deal of this information in places other than a trace log; some of this would be useful as bridge data (akin to the current packet counters) and some would be useful as Thing data e.g. last time we heard from this Thing, last time we sent a packet to this Thing, latency, etc.

January 7
Not making much progress on the Z-Wave query. I mean, ok, it's open source and I'm getting exactly as much support as I paid for...

January 6
So, two things about my OpenHAB setup: I am so sorry I bought a single Danfoss/Devolo/Popp TRV, because they are nothing but trouble (they eat batteries. they fall off the network. they lose their configuration and need to be re-integrated. they periodically, as best I can tell, report the temperature as being 1000 times what it actually is - I do enjoy my rooms being a toasty 2,100 °C) and more generally I am peeved with the opacity and apparent fragility of Z-Wave in general. The latter may be unfair to Z-Wave since, to be fair, I've only ever used OpenHAB to talk to it, and I know that there are other tools out there which may do a better job.

All this because I'm trying, yet again, to see if there's a way to get OpenHAB to pick these stupid TRVs back up after they've fallen on their faces. At this point, having trawled the code a bit, looked at the corresponding Open Z-Wave code, and tried a few things, I've given up in favour of posting a request to the OpenHAB forums. Meanwhile, my Z-Wave logs are scrolling by here, showing devices falling off the network and climbing back onto it for no reason I can determine other than that they felt like it. Meanwhile, the actual devices I'm trying to recover insist they're online even though they've been dead for a couple of days. Oh, and that one TRV that is of the more reliable and expensive kind is still insisting that it hasn't woken up since August, despite happily posting temperature updates on a regular basis.

January 5
Episode 8 of Silo Season 2 and I'm wondering just how far the last two episodes are going to go. I read the plot outline on Wikipedia to remind myself of how the book wraps up and on one hand there's two hours left to fill in the gaps, but on the other hand given the pace to date I'm not sure there's enough time to cover this, particularly with the complications introduced with the whole Judicial side-plot.


January 4
Still marshalling at Parkrun. Over 250 people showed up this morning and I applauded every single one of them!

State of Play was pretty good throughout but did get a little messy at the end. Curious to see it's based on a BBC series - I'd noticed Working Title in the opening credits and wondered what the cross-channel connection might be. Anyway. Rachel McAdams, Helen Mirren, Robin Wright Penn, Russell Crowe, Ben Affleck, Jeff Bridges all turning in pretty decent performances. Oh, and that weaselly guy from The Man In The High Castle who I'm sure is a perfectly nice person but that series kinda ruined him for me.

Spent some time trying to reacquaint myself with some stuff I'd done with React over a year ago. I'm sure it all needs updating but it's frankly exhausting to deal with.

So it seems like the spurious git behaviour I've been seeing (files being inconsistently reported as tracked or modified) may be down to the precomposeunicode and ignorecase settings, but to be honest none of the verbiage written about this online seems to provide a helpful guide to establish if this is actually the problem I'm encountering. Guess I'll have to experiment.

January 3
Absolute Power is surprisingly lumpy in places (questionable cuts, bad lining up between two angles on the same scene, the whole "who actually is that" towards the end of the movie when someone's face down on their desk) for a Clint Eastwood flick. It's ok, though. It's lightweight enough that you can kinda forgive the lumpiness for the most part.

That git thing I fixed? A file vanished, possibly due to an rsync. and git claims there is no difference in the state of the directory containing the file. Django was somewhat less sanguine when it went looking for the same file, though. I am not entirely clear on what happened here, but it's definitely very annoying.

January 2
Weird streaming glitch. Our evening's entertainment attempted to reset us to the season 5 finale of Rizz and Izz, and also insisted there were only 5 and a half seasons when I was sure there were seven. We shrugged, watched an episode, then I went poking at the UI and lo and behold there are two Rizz and Izz shows, identical except that one has less seasons than the other. The metadata quality on this streaming platform continues to be appalling.

Trying to get my head around OpenHAB's page/component construction. It's sort of making a bit of sense to me, but it's not helped by the fact that the UI seems to be fairly picky about when and how it offers autocomplete, and the default behaviour if you make a mistake is "don't render anything at all" which is understandable but not exactly user-friendly. Oh, and all the documentation I've encountered so far just describes UI components, i.e. there are no pictures of what you're fiddling with.

Also weird: git on one of my machines was in some unspecified way out of sync and no amount of git pull --rebase and what not would fix it. Had to resort to a fetch and a hard reset in the end (having of course verified that nothing would get lost in the process).

January 1
Happy New Year!

Started the year's viewing with ... well, we're still working our way through Rizzoli & Isles. It'll never be awesome, but it's not terrible, and we've a season and a bit left in it.

Nerdery: digging through a bunch of to-do lists to try and scrub some semi-abandoned projects. I was tinkering with OpenHAB's web page stuff a bit trying to make auto-updating charts without resorting to an actual charting engine like Grafana. Not quite there yet, though. I also spent a bit of time cleaning up some of the data. For reasons best known to Past Waider, the database uses local time instead of UTC, but I somehow posted ambiguous datapoints in there during daylight savings; also, the cheaper Danfoss/POPP/Devloo TRVs occasionally claim the temperature doesn't have a decimal point so it's 2048 degrees rather than 20.48, and none of the ensuing processing catches this so it duly winds up in the database. ALL CLEAN NOW.

previous month | current month| next month


Waider
Fiche Fiche C&uacte;ig!