Distributing Huginn workers across servers.

For quite a few years I've written about strange and sundry things you can do with Huginn, but not a lot about what to do when you run into systemic limitations. The nice thing about Huginn is that you can spin up as many workers (subprocesses that execute agents from the database) as you want, subject to the limitations of what you happen to be running it on. The downside, however, is that it's easy to accidentally upgrade your VPS to the point where it's just really expensive. I just ran into this purely by accident and spent a day …

Read more...

Making an oscilloscope kit suck less.

A couple of jobs ago I worked in an electronics lab that had all the toys - from tool cabinets as tall as I am to anti-static gear all over the place (and ruthlessly enforced rules for making use of it) to signal analyzers and oscilloscopes. Unfortunately, my job (and the project) were such that I couldn't just go messing around in there to teach myself to use the diagnostic instruments. If the 'scopes weren't in use at the time then they'd been set up specifically for the hardware we were working on. This means that messing around with the settings …

Read more...

Cross-compiling go-sendxmpp.

I used to joke that the day setting up a cross-compilation environment was easy we'd be one short step away from having true artificial general intelligence. For the most part neither has happened yet. However, I must admit that Go has come pretty close to making it easy, but it's also kind of opaque unless you go all-in on Go to the exclusion of all other languages. It's not really a language that you can just toy around with, kind of like FORTH.

Long-time readers know that I'm all about XMPP as a command and control channel for my exocortex …

Read more...

Optimizing Searx with UWSGI.

Long time readers have probably read about some of the stuff I do with Searx and I hope that some of you have given some of them a try on your own. If you have you're probably wondering how I get the performance I do because there are some limitations of Searx that have to be worked around. Most of those limitations have to do with the global interpreter lock that is part of the Python programming language which haven't been completely solved yet. What this basically adds up to is that multithreading in Python doesn't actually make great use …

Read more...

One year of COVID down.

Here we go again, this time 943 years.

This time, I got nothin'.

Many of the horrors of the last four years are over and not a few of us are sleeping much better, mostly because we have to spend less time keeping our eyes and sensor networks open to catch the latest way that we or people we care about might have the worth of our lives decreased even more. That's not to say that things are perfect, just a couple of points better for more people. The covid-19 plague is still on, unfortunately. Vaccinations are still extremely difficult …

Read more...

Getting an ancient phone online in 2021.ev

Note: The more I worked on this article, the more I realized that it needed to be split into two separate articles. There was more ground to cover here than I originally thought. This article covers configuring a travel router running OpenWRT as a gateway for an ATA, and a Cisco ATA. The Asterisk configuration stuff will come later.

As seems to happen during the time of the covid-19 plague, it's really easy to clear one's backlog of "wouldn't it be nice if" and household repair projects in a short period of time. I mean, hell, I recabled my server …

Read more...

New decade, new TARDIS.

As I mentioned a couple of weeks ago, the worst year in a long, long while was capped off by discovering that my car had been wrecked and towed without my knowing about it. I finally got the pictures I took at the junkyard up for the horror and edification of all and sundry. Long story short, my car was indeed totalled, undrivable, time for an insurance payout. As usual, Captain Corner Case strikes again and everything was way the hell more difficult than it ever really needed to be. Where should I start?

I went around to my neighbors …

Read more...

Neologism: Reality segmentation violation

reality segmentation violation - noun phrase - A syndrome in which someone is so deep inside their own little world that any utterly mundane activity can provoke a combination of emotional upset, anger, confusion because they simply never think about it. In children this phenomenon also typically includes running to authority figures to inform on someone in the most agitated way possible. This is bewildering to just about anyone nearby who is not focused solely on their own little worlds.

A sample stack trace of a reality segmentation violation:

A: "Hey - you pooped in the bathroom!"

B: "Yes.... and?"

A: "But but …

Read more...