Quantcast
Channel: Antarctica Starts Here.

On retreat again, October 2022.

$
0
0

Time and funds permitting, I try to go on retreat every year or two. I like driving someplace new, someplace I've never been before, and getting off the grid for a couple of days. I find that it makes it much easier to relax, rest, catch up on my reading (or sometimes television), do some writing, tinker with locks a bit, and generally be nonverbal for about a week. It's not easy these days (and won't be for a while, I suspect) but it is something that I at least attempt periodically. The AirBnB I rented had a most unusual design, it was basically a wedge built into a hillside so that the earth that covered the walls and much of the roof formed insulation (something that many houses in this state lack). Because I'm not a total maniac I try to make sure that there is connectivity where I am, and this particular location had both DSL and Starlink service in a shotgun configuration, which worked surprisingly well. I will say, however, that takeout that far in northern California can be a bit dodgy and I found myself getting quite sick just before the end of my trip.

All of that aside I did some hiking and took some photographs of the forest out that way, some things I came across, and the local wildlife that visited me once in a while. I never did see the bear that I was told about but the deer there, while not actually tame did approach more closely than expected.

I know nobody really likes to hear these words, but here are my vacation pictures.


Building a weather station.

$
0
0

Note: There are some affiliate links in this post. You don't have to buy stuff with them if you don't want to.

One of the things I always wanted to build was a weather station. For some odd reason they always struck me as being intrinisically neat; sensors that could tell you about what was going on outside when you couldn't be outside yourself. Many years later when I got into amateur radio, I discovered that weather stations were a thing that people would build and put on the APRS network to broadcast local weather conditions. Thing was, I never quite had the time or knowhow to build such a thing. Then, after working from home for the last couple of years and losing my job in January, I figured "fuck it" and decided to sit down and do it.

It started out innocently enough, by buying a fairly simple weather meter kit that's decently well documented and has a datasheet available. A little bit of research produced this particular project which I wound up making quite a bit of use of. Enough use that I found a couple of bugs in the schematics and had to troubleshoot them myself. Irritating and annoying, to be sure, but I also learned a couple of things, which was the entire point of the project. To round things out I also ordered a couple of BME280 multi-sensors and some analog/digital converter chips from Adafruit to get a bit more crunchy data, vis a vis temperature, humidity, and air pressure. It's probably not enough for weather forecasting, but for doing reasonably basic trend analysis it suffices.

I am not the world's greatest electrical engineer. On a good day I might be considered an adequate one. But I'm working on it, one project at a time. And this particular project wound up being interesting, frustrating, and rewarding. It was also an exercise in patience because I couldn't just sit down and bang everything out in the space of a weekend. Much of the project's time wound up being "work on something for an hour," "go outside and measure stuff," "go outside and drill some holes," "do some research while the silicone sealant sets," and so forth. In other words, do as much as I could while I could and then cool my heels until the next thing I could poke at arrived.

There was also an unusual amount of reverse engineering that had to be done. While waiting for parts to come in I took apart the kit's sensors (anemometer, weather vane, and rain gauge) a couple of times to see how they worked and get a sense for how to hook them up. Because, as we all know, I love following instructions to the letter.

The thing that I find striking about so much of the weather station is that it's basically a bunch of switches. 1 The anemometer is a cluster of reed switches, switches that close (in this case) when a magnet gets close to them. Count the number of times the switch closes in a certain period of time and you can calculate how fast the arms of the anemometer are moving, which is also how fast the wind is moving. Same with the rain gauge; every time every so much rain is collected by the gauge it tips over to empty and closes a switch. Count the number of times the switch closes in a certain period of time, multiply by a known amount of rain and you know how much rain has fallen. The weather vane works along similar lines but proved to be more of a challenge due to an error in the schematic.

There are eight basic directions: North, south, east, west, northeast, southeast, southwest, and northwest. One switch for each in the weather vane, but only two wires for all of them. But how?

Each switch, when it closes, cuts in a resistor with a unique value to limit the current passing through it. This means that each switch corresponds to a different voltage. For example, when the weather vane is pointing north 1.0 volt goes down the wires. When the weather vane is pointing west, 2.6 volts goes down the wires. And so forth. Measure the voltage, look up the direction it corresponds to, and you know which way the wind's blowing.

To save some folks some effort here's the table I built when I had the weather vane opened up and was poking around with a multitester:

directionresistance (ohms)voltage (3.3V, 10k)
N33k1.0v
NE8.2k3.0v
E1k2.8v
SE2.2k2.9v
S3.9k2.5v
SW16k1.4v
W120k2.6v
NW64.9k1.1v

To pick up each of the eight different voltages a chip called an analog/digital converter is used in the circuit. Without getting too technical about how they work, each of those voltages is an analog signal: 1 volt is 1 volt is 1 volt. It doesn't change as it moves through the wire (for the sake of discussion). The A/D converter samples whatever signal comes in over its input pins a few thousand times per second and outputs a digital signal (one of two voltages representing a 0 or a 1) to one of the input pins on the Raspberry Pi that I used to use as my jukebox. To do this properly, however, I had to build a small circuit called a voltage divider to make the signal coming from the weather vane easier to detect and interpret. Referring to the image on Wikipedia, a current goes through one resistor (Z1) (one of the eight resistors in the weather vane) and goes into the sampling pin on the A/D converter. At the same time there is a second resistor (Z2) that doesn't change value which pulls on that current at the same time and steals some of it. Because you know the voltage you started with (3.3 volts, in this case 2), and you know the values of the two resistors, you can calculate how much voltage the sensor pin is going to see:

output voltage = (second resistor / (first resistor + second resistor)) * input voltage

This was not correctly specified in the project writeup. They got the math wrong. The other thing they got wrong is that, when you have a voltage divider the thing that samples the current goes between the resistors and not upstream or downstream of them. That took a while to figure out.

A couple of trips to the hardware store produced a mast to mount the thing on (a 10 foot length of 1.5" PVC pipe cut in sections for modularity), compression couplings to fit the pipe segments together, end caps to keep water out, and a power junction box designed for outdoor use to protect the sensitive stuff. I also ordered a box of assorted glands for the sides of the junction box. I don't know why they're called that and I probably won't call them that around my in-laws but they basically let wires pass through holes while making it difficult for water and dust to get in. The real selling point there was the 1.25" glands in that kit which were ideal for running an outdoor extention cord's female end into the junction box. I bought an extension cord with transparent plastic ends specifically for this because I knew that I needed to carve the plastic down a little bit so it would fit through the gland. Transparent plastic is the key because I could make sure that I wasn't removing too much and exposing anything carrying house current. Final assembly involved running the whittled down power connector through the gland into the box, cranking the outside fixture of the gland down to tighten it, and letting the power connector rest however it wanted to, which wound up turning it into a mounted power outlet, basically. I made sure to squirt a bunch of silicone sealant into the gland and around the power connector to weatherproof it and generally glue everything into place. I'm weirdly pleased with how that turned out.

I designed pretty much the whole thing to use zip ties for mounting in the back yard, which seems to be working very well. An early step of modifying the junction box was to mount some conduit fittings on the back (suitably weatherproofed with silicone sealant 3) that I could use for creative application of zip ties. The bottom of the mast is resting on the deck but it's braced with zip ties. When standing the mast up it was decided that one of the three segments should probably not be installed for safety purposes but the compression couplings I used made it easy to remove one segment of pipe. I tried to cement the endcaps on but for some reason none of us were able to get the cans of primer or cement open for anything. I wound up tossing them. Some creative positioning of pipe clamps attached the weather sensors to the mast, with yet more zip ties making the wiring neat.

I also discovered that the anemometer didn't have a long enough cable. It was originally designed to plug into an RJ11 jack in the bottom of the weather vane but I'd already decided to do something different and had desoldered the jack from that other sensor's board to make it easier to reverse engineer. Due to not being able to find any locally (because who actually runs phone line anymore?) I had to order some phone line rated for exterior use, and it's basically CAT-6 network cable. Those were definitely not RJ11 plugs on the ends. However, a pair of bolt cutters and some creative bladework later and I'd exposed one pair of wires suitable for replacing the too-short cable. It's remarkably rigid stuff and running it required working with the way the cable was already tending to bend rather than forcing it.

Incidentally, I'd originally ordered a handful of RJ11 jacks because I was going to use them in the circuit I was building. Either the jacks were wrong (possible) or the plugs on the sensors' cables' ends are not RJ11. Either way, bare wires and some screw terminals work just as well. It's kind of weird that the really nice screwdriver set I have doesn't have bits that fit those screws, but the crappy knockoff does. Go figure.

The thing I've been working on most lately has been software to drive the sensors, pull data, and do stuff with it. Shockingly, it's part of my exocortex and has a somewhat dumb name, Weather Bot. I've got it at a proof of concept stage, where it's running my weather station, monitoring the sensors, doing basic statistical analysis, and sending alerts over an XMPP bridge when something interesting happens. I've also got a basic "write the last set of sample data to a file" module implemented. My eventual goal is to add modules to send readings to Open Weathermap, Open Sensemap and the Citizen Weather Observer Program among other citizen science projects. I've also spent some time setting up InfluxDB and Grafana so Weather Bot will soon be able to write data to a local database for analysis on a dashboard.

If you want to look at some of the pictures I took during the build process, here they are.


  1. The BME280 I did not take apart and analyze, so I cannot confidently say that it is another bunch of switches. 

  2. The Raspberry Pi's GPIO pins should really only be used with 3.3 volts. There is the possibility that using 5 volts can damage the unit, and given how difficult it is to find them these days it's probably not a good idea to risk it. 

  3. I love this stuff. It's like universal glue. 

Organics, AI, and what people want to believe.

$
0
0

You pretty much have to have been living inside a farday cage with a stack of dead trees for company to have not heard anything about large language models taking the tech world by storm. Without going into too much detail (because that's not what this essay is about) you take some clever statistical math, a metric fuckton of GPUs, and several petabytes of text scraped from most of the Web, mix thoroughly with a couple of million USD from investors and some Python, and bake it all in a large network of virtual machines running in someone's network (usually AWS, but there are companies that still run their own data centers) for a couple of days. What you'll get out of it is something called a model, a fairly large set of binary blobs that are then used as the kernel of software written in pretty much any programming language these days. End result (for the purposes of this essay): You can type stuff to the system in question, it'll filter it through the model and calculate a bunch of words that, statistically speaking are likely to follow what it was given. 1

I would like to state for the record that, as I write this essay even the biggest AI model out there (nVidia's Megatron-Turing NLG) 2 is nowhere near as large or as complex as the human brain. It's not sentient. It's not sapient. It's smart. Occasionally it's clever. It can be weird. Unlike the Dixie Flatline it might write you a poem if you asked it nicely.

Okay. Background established for the rest of this post. Because, once again, it's storytime with Uncle Bryce, so if you're not interested in a dumb story from undergrad you can punch out now.

In the fall of 1999.ev when I was finishing up my first stint in college I took as one of my core electives a course in artificial intelligence. The course started in a fairly reasonable way at the time, with the early history of artificial intelligence. We talked about Eliza, an early AI construct that implemented Rogerian, or person-centered psychotherapy as a prelude to discussing the Turing test. If you're not familiar with it (and you really should be, because I think the implications of it are going to be very important for everyone in the near future), Turing postulated a test where there were two subjects, an organic (a human being) and a software agent. Each subject could be communicated with from a distance using text; for our purposes, think instant messaging. An interviewer on the far side of the connection would hold an extended typed conversation with each subject. When all of the conversations were had the interviewer would then decide, solely from the conversations which subject was the organic and which was the bot. So the Turing Test goes, if the interviewer can't tell the difference the bot is likely sentient.

What very few people seem to consider is what it means if the organic is mistaken for the bot.

The professor teaching the AI class proposed that we carry out the Turing test on the comp.sci lab network. Everyone in the class (it wasn't very big, at most 20 students) drew lots and five of us were selected to be test subjects. There was an IRC server on the comp.sci network that the professor had hooked a couple of the more advanced chatbots of the time into. Those of us who were test subjects used regular old IRC clients to access the server. The idea was that everybody else in the class, one at a time, would spend time chatting with the test subjects for some length of time and at the end of the test periods would decide which interlocutor was the bot and which was their classmate and write an essay justifying their opinions. We organic test subjects spent every evening for a week hanging out on IRC and chatting with our classmates.

At the end of the week the results were in, and my classmates had decided that I was a software construct. They weren't sure how a bot was interfaced with such a large knowledge base (search engines barely existed at the time and REST APIs hadn't been invented yet) but they very much wanted the developer to come to the class to present. I really don't know what gave them that impression. Sure, I'm weird but I do put forth significant effort to be at least somewhat personable, so it's possible that they were getting me on some topic or other that I was really into at the time and that gave them the mistaken impression. It could also have been the speed of my responses, because I learned how to touch type at an early age, and most folks my age at the time hadn't.

This experience stuck with me ever since. It would be downright amazing if software was mistaken for an organic due to its conversational capability, width and depth of its knowledge base, and other capabilities.

Except it's not amazing anymore. It's been happening for at least two decades.

Starting in the year 1990.ev a competition called the Loebner Prize was held every year. It's basically the Turing test, but the bot that is mostly mistaken for an organic being won its creators a cash prize. One of the problems with the Loebner Prize, however, is that there is a perverse incentive for entrants to not build smart constructs but "merely" (all things considered) linguistically clever bots. As far as I know, nobody even tried for the $25kus "bot that not only is mistaken for an organic, but successfully convinces the interviewers that the organic is actually the bot" prize, nor the $100kus "multi-sensory input understanding" prize. The forest - is the thing you're talking to really a sentient, sapient being? - was ignored in favor of the trees of "the thing you're talking to is a clever interlocutor and to heck with any other criteria. It was downright amazing when the first bot won the Loebner Prize, but now it's quite normal for this to happen. No software contestant has succesfully convinced the interviewers that the organic was actually the bot, because the interviewers did that all by themselves without prompting.

I don't think it's so much that the Turing test is a busted myth as it is organics did a trapdoor goalposts attack and just decided what they care more about. Not actual intelligence but constructs putting on the best possible charade of being sapient. I cite as supporting evidence the phenomenon of people being fairly nice to service-oriented online chatbots (like the ones that lots of large companies have for tier-one customer support) but downright goddamn ugly the moment they think that they're talking to a real person on the other end. If an organic on the other end of the customer support chat decides to tone everything down and pretend to be another bot, though, customers treat them much better. I realize that this is not a universal thing, but common enough that I find it noteworthy. In fact, when you consider the economic incentives of AI/ML development today actually working toward a sapient software entity is the last thing a well funded entity wants to do, for the single reason that there is no guarantee that the software will work toward or support the reason the business in question was founded.

There were a lot of other ideas that I was kicking around about this, stuff about people treating not-people better than organic people, people willfully going all in on the Eliza effect, a relatively recent discovery about the placebo effect, and things both more and less cynical than usual. 3 But I don't think that's the point, nor do I think doing so would really be useful. Suffice it to say that I think that a lot of people appear to have given up on the ideas of consciousness and sentience, probably for a large number of reasons, any of which could make up the core of somebody's Ph.D thesis. As it is, a basic part of human nature appears to involve in-groups and out-groups, and relatively non-threatening (or at least non-potentially hostile) software that, on some level people really know isn't anything like them but acts like it codes as in-group. Additionally, what Shirow Masamune referred to as "a hollowing of the spirit" appears to be taking place which, I would suggest, we see in the direction society is headed on the macro scale and how some social groups are being treated on the meso scale.

In other words, there is a relatively small group of "people," a potentially larger group of "harmless things we don't mind treating as people," and a much larger group of "not people" (which it's rapidly approaching open season on).

If you'll excuse me, I think I need to re-read Blindsight4 for the sake of my mental health.


  1. There is usually one, sometimes more parameters called "heat" that the user can turn up or down to nudge the statistical likelihood of the responses up or down to make things more interesting. Those parameters basically control how random the results are likely to be. 

  2. The article I linked to is from 22 February 2023. At the rate at which AI/ML is changing it's undoubtedly obsolete. I still had to cite a reference of some kind, though, so take it with a grain of salt. 

  3. Also, I'm getting over a mild case of food poisoning so I'm not anywhere near top form for anything. Give me a bit. 

  4. Local mirror, per the Creative Commons BY-NC-SA v2.5 license that Peter Watts placed on the book. 

Orienteering in life.

$
0
0

"Don't follow me, I don't know where I'm going either."

--Unknown

Since I got my last big project finished up I've been trying to figure out what to do with myself. A certain amount of debugging was involved (as one might reasonably expect), culminating with the microSD card in my weather station tanking with terminal corruption (such that the card's on-board controller permanently locked it read-only). I'm fairly sure this was due to the card being used outside; enclosure aside the thermal cycling of the natural day/night cycle probably wrecked the silicon. I've since replaced it with an industrial-grade microSD card which seems much more stable. Since that time I've tinkered a bit with adding support for logging data to InfluxDB so I can build a historical dashboard using Grafana. That is a fairly popular and widely used combination of software these days, and I don't know anything about it so I figured it'd be a good excuse to experiment with it.

But, per usual, life throws the occasional curveball and I've been handling things as well as I can. About three weeks ago I recieved an unwelcome and unwanted surprise just after lunch: Somebody had stolen all four wheels off of my car. I went outside and found it resting on a pair of bricks. The wheels, tire pressure sensors, and even the factory-standard wheel locks had vanished some time in the previous 48 hours. I don't drive much during the week, which is why I hadn't noticed. I found out from the dealership that this is a thing that's been happening lately, and I wasn't the first person to get their car towed to the dealership for new wheels in recent memory. More like the twelfth or thirteenth that month.

This is apparently a common enough thing that the tow truck driver had a set of more or less universal temporary wheels on board, specifically so that cars in the same state could be raised onto a flatbed and driven away. I also found out that keys (more like specially machined sockets) for the factory wheel locks are available on Ali Baba for about $0.72us each. Total time for a pair of folks who know what they're doing to jack the car up, unlimber the wheels, and abscond: Maybe five minutes. Ten if they're new at it. No, I'm not going to tell you how to do it, you're more than capable of looking it up on Tiktok or Youtube or something. It's cheap and easy enough to learn that I'm not going to make it any easier.

Not long after getting my car back from the dealership and then the body shop, a flying bit of gravel chipped my windshield on the highway. A couple of days later the insurance company sent somebody out to repair it, and during the process the chip turned into a spiderweb of cracks about the size of a hardback book as we watched. The car's still drivable but now the entire windshield has to be replaced. And, of course the insurance company's website doesn't make it possible to update a claim of glass damage (because it's only glass damage, why would a claim need edited?) A day later, the cracks were just over half the width of the windshield, so now the car's probably not safe to drive. I've had to arrange for both a tow truck as well as replacement of the windshield.

As you've probably guessed I'm not in the best of moods right now. It's been pretty much one thing after another on top of daily life.

I started a new job in April of 2023, so at least I don't need to worry a whole lot about daily life being fairly stable. The daily routine is solid and comforting and I have a paycheck coming in so that's less to worry about these days. I even have some travel for work coming up, so it'll be nice to stretch my legs a little and see someplace new. Unfortunately it's not for continuing education or a trip to a con to learn new things. Going to conventions and conferences while COVID is still out and about aside, prices are just too rich for my blood (or my dayjob's) these days. As a point of reference, as I write this on 4 June 2023 the cost to attend Defcon is now $440us at the door, $460us if you pre-register. Compared to what it was the last time I went, that's way too rich for my blood compared to how difficult it is to get into any talks these days. This also means that I'm going to miss the cDc's latest project launch, which I'm not happy about but sometimes that's what life does.

Much of work has been handling the onboarding suppository and watching recordings of classes about the stuff the company does to provide context for everything. The actual work-type stuff I do has involved learning how to write plans for Terraform, which is an automation tool for building and maintaining infrastructure running at various cloud providers without having to write custom code or wandering around their control panels. Compared to writing code that interacts with, say, AWS' orchestration API I'll take learning a new configuration language any day. My one complaint, for AWS at least, is that there are some infrastructure components that you can't just edit or update. If you edit a Terraform plan and apply it, there's a good chance that at least one thing will be deleted and rebuilt with new settings. Sometimes this isn't quite so bad, but sometimes it means databases holding important stuff. It's hair raising at first, but then turns into a moderate annoyance a bit later.

With everything going on1 by the end of the day my brain is about used up. Do I want to write? No. Any words that I had cooking in the back of my head up and left. Code? Also nope. The last thing I want to do is hack around with anything. This also means that one or two other stagnant projects are just sort of sitting there doing nothing (which means that those writeups are also cooling their heels). If it sounds like I just sort of sit around staring at the wall... well, I kind of do sometimes. It can be weirdly relaxing to let your brain drop into lop power mode, I won't kid you. But as someone that does stuff I feel kind of bad about that.


  1. Everything. So much. All the time. 

Neologism: Avocado Toast

$
0
0

Avocado toast (n): a cheap luxury, especially one which is perceived as being very expensive but is actually trivial; can also refer to the trivial cost thereof.

"Oh, hey, when can I drop off that fleece you loaned me?"

"Nah, keep it. It's just avocado toast."

Avocado toast (v): To reduce your spending by a trivial amount, (i.e., by the cost of avocado toast).

"Oh shit. How are we going to pay to fix the car?"

"We could... stop eating out?"

"The frame is bent, it's leaking coolant, and the front bumper is in a tree. I don't think we can avocado toast our way out of this."

Source: Hasufin

Kicking the dam loose.

Crash handlers in Python

$
0
0

Some weeks ago when I was trying to get the bot that runs my weather station stable, I ran yet again into a problem that for various reasons I hadn't put forth the brainpower to come up with a solution for. Stability implies that a system of some kind doesn't crash, which Weather Station Bot was doing occasionally. Part of this wound up being due to the microSD card Clavicula 1 was running on wasn't well suited to being outside all the time, but part of this was due to bugs in my code that I hadn't quite shaken out yet. While systemfail does a fairly good job of restarting things when they crash, what it's not good at is letting the user know when something crashes or why. In other words, I wanted to know when Weather Station Bot crashed so that I could shell in and take a look around.

Academically, I knew that crash handlers, functions or subsystems that do something when a system trips over its shoelaces and faceplants are a thing. Windows' blue screen of death is a fine example of a crash handler. Rather than just freeze up, leaving the display stuck on the last frame it showed with unresonsive keyboard or mouse, the BSoD gives you at least some idea of what happened 2 and a shot at saving your work before rebooting. Plenty of other software has crash handlers as well, so the question became "How do I write one of my own in Python?"

As it turns out it's pretty easy to do once you know the trick. Tucked away in the sys module is a function named sys.excepthook that you can attach a callback function to. If something terminal happens to the running process sys.excepthook is called by the Python interpreter, which in turn calls the function attached to it. Most of the time this doesn't do anything because there's nothing there by default. If the programmer attaches a callback to it, however, in theory anything could be done as a last ditch effort to save life, limb, and sanity. What I elected to do was stick with the running gag of six robots, all distinct3 and send myself a message:

#scream_and_die():Afunctionthatisregisteredwiththesys.excepthook()#handler,andfiresifandwhenthebotcrashes.defscream_and_die(type,value,traceback):logging.critical("Crash handler executed!")send_message_to_user("AAAAAAHHHH!")send_message_to_user("FC: So much for that robot.  Too bad.")

Adding a crash handler was far more simple than I imagined it'd be, to be honest. I'd been putting it off in part because I was concerned about how much work it would be to retrofit the functionality into my bots. In theory I could put anything in that function but what I wanted to do was get notice of a crash so I could examine the system state as quickly as possible (which helped me iron the problems out). Once written it was a simple matter to set scream_and_die() as the callback function and then get back to business:

# Set the crash handler.
sys.excepthook = scream_and_die
logger.debug("scream_and_die() set as sys.excepthook crash handler.")

I'll get around to retrofitting the rest of my bots and the bot template at some point RSN.


  1. The hostname of my weather station. 

  2. If you're a Windows developer, anyway. 

  3. Tip of the pin to MC Frontalot for the turn of phrase

First imprints.

$
0
0

From time to time lately I've been thinking about what Cory Doctorow called the enshittification of just about everything and peoples' reactions to it. Sometimes there are less shitty alternatives which present themselves with a little looking, sometimes there aren't. Most interestingly, and this is a bit more common than I find comfortable, other solutions or alternatives to those things that are suddenly now user hostile are just... well... the reaction to them is like somebody just told the other person to shove a pair of daisies up their nostrils and hum Yankee Doodle. I've started filing this under the category of folks' first mental imprints on broad concepts (like technologies) after R.A. Wilson. To put it simply for the purposes of this whatever-the-hell it is, the first imprint of something is the very first conception of what a thing is and fundamentally how it works and has always worked.

To put it a slightly different way, when all you know is a single way to do something, not only are you unlikely to search for alternatives but it's very easy to get tunnel vision and forget to think about whether or not there are other ways.

As a brief personal example, from an early age I grew up learning how to program on a Commodore 64, which out of the box topped out at a whopping 64 kilobytes of RAM. By today's standards that is a laughable amount of memory (outside of embedded systems, anyway) but back then it was a hard limit. Great to work in right up until you ran out of memory, and then that was that. If you wanted to do anything relatively sophisticated (along the lines of the type-in programs in Compute!'s Gazette) you had to be pretty determined (and pretty clever) to fit so much functionality into so small a space. That said, that experience colored the way I write code for many years; I always try to keep things as small and tight as possible, with as few dependencies as I can get away with because being conscious of memory and storage usage is hardwired into my brain, even though it is significantly less of an issue these days.

Consequently I have to remind myself that I don't have only 64kb of RAM available anymore. For better or for worse having lots of memory available means that less terse, more expressive code is possible. This also means more expressive comments in the "what I was thinking" school, but that's probably a separate post. The point I'm trying to make is that first imprints set one's baseline expectations thenceforth.

A couple of jobs ago, I was working in the office (as was customary in the Before Times) and something happened that knocked out the network uplink. Seeing as how the company in question was one that went all-in on Google Workspaces, Github, and Slack, this left most of us dead in the water. No updating documents, no pushing commits to any of the Git repos, no e-mail, no Youtube, no Spotify. I say "most of us" because, as one might reasonably guess, I was merrily hacking away on my laptop, writing a script in a text editor and listening to some MP3s in my headphones. Aside from my bots suddenly dropping off because my laptop couldn't reach the IM server it wasn't that big a deal to me.

I should probably add that, as engineers went at this particular company I was probably the second oldest codeslinger there. Maybe the first. I really don't know. Most of the coders were barely out of college, and I think a few of them dropped out to join the workforce. No judgement here, I mention this only to give folks some idea of what the other engineers' life experiences might have been like and what they may or may not have been exposed to. Figure they were in their early 20's.

Anyway, I looked up and saw a couple of the other engineers standing curiously around my desk watching me. I pulled my headphones down and asked what was up.

"What are you doing?" one asked.

"Well," I ventured, not quite getting it, "I'm just listening to some music and working on that script in morning standup."

"How?" was asked.

I wasn't really getting it. It was possible that they were messing with me, but somehow unlikely; that wasn't something folks did at that company. "I'm using a text editor to work on the script and there's a bunch of MP3s on my laptop. Is there a problem?"

It's fair to say that the next question asked left me gobsmacked. "What's an MP3?"

As it turned out, none of them had considered the possibility that one might, or could have audio stored on their laptop. They'd grown up with on demand television and a DVR so there was never a time where they had to knowingly save any media locally. If it wasn't pre-recorded and magicked out of the set-top box (which means it was, in fact, stored locally but when most of your media experiences involve on-demand streaming, assuming that one knows there is a distinction between the two is incorrect) it was available by streaming. Later on they had Youtube and Spotify for their media and, again, because every device they had was always connected and everything was available for streaming, downloading a file to save for later wasn't something that they'd ever considered was a thing. Everything was Just There, All the Time.

In 2021.ev, some articles were going around to the effect of kids not knowing what files were, or how directories work because they grew up without once ever seeing a shell, having to save files locally, or even go looking for a file because the search software built into their systems and that are available to anyone with a network connection are such that it was never an experience they had. They never lost a file and had to figure out where it might have been saved, because the OS indexed everything and a quick search pulled it back up. Storing local copies wasn't a thing they did because they could just google what they needed and find it again. As far as they were concerned, everything was out there all the time, and could be accessed whenever they wanted. I don't think being disconnected was anything that had directly, knowingly affected them.

If this sounds suspiciously like the old man yelling at those damn kids to get off of his lawn, it's not. At least, that's exactly the kind of thing that I'm not trying to write. Much of what we know, you, me, and everyone else out there comes from our life experiences - things that have happened near or to us, which we've then had to navigate. In some ways, they provide context for other things in life, and sometimes teach us certain problem solving skills. For me, those life experiences including losing and finding files, keeping backups of my files because I didn't want to lose whatever term paper I was writing, organizing local storage media and dinking around a DOS prompt (and, to be honest, trying not to get caught doing so most of the time). I was a late adopter of GUIs and web browsers, largely due to the cost of sufficiently powerful hardware. The other engineers I'd inadvertently puzzled had grown up with GUI desktops, mobile devices, laptops in and for school, storage that is omnipresent and Just Works, and neigh ubiquitous search to keep track of their stuff. Where things were and what they were called mattered very little to them because their desktops and whatever applications they use do it all for them. It's transparent; so transparent that even the guts are invisible.

In teaching occasionally over the years, I've learned two things: First, don't make folks feel bad because they don't get something or it doesn't make sense. Today's lucky 10,000 is a very real thing. Not everything clicks the first time for someone, and it's hard to tell why this is the case. Sometimes rephrasing helps, sometimes an example helps, sometimes it involves the assumption that someone has seen or done something in the past when they haven't. I sure as hell don't understand everything right off the bat, just ask any of my math instructors over the years. Second, always try to end on a high note. I've found that, when you're frustrated, cranky, and maybe a little scared because something doesn't make any sense your long term memory kind of gives up and doesn't store anything but the feelings of being frustrated and cranky. Doubling back a little ways at the end of a lesson to touch again on something that does make sense is not only a confidence booster, but I've found that the few bits that did make sense in the morass of all the stuff that didn't really do stick more firmly in one's head. To quote Dune, "Muad'Dib learned rapidly because his first training was in how to learn. And the first lesson of all was the basic trust that he could learn."

These were folks who were very obviously smart. They'd gone to (and a few had dropped out of) more prestigious schools than I had. They'd grown up in different environments with vastly different technologies. These were folks confronted with ideas that they'd never knowingly been exposed to before, ideas that could provide insight into how some very ordinary, everyday things work under the desktop. So, and I'm eliding a lot here, I asked what they didn't understand, asked what they knew and had experience with, and figured out from that how to explain what I was doing. What files are. What local storage is and how it differs from the cloud-based storage they'd grown up with. That sometimes local storage is used to cache a copy of things that come from the Net, because even when you don't have a network connection sometimes things are still available to you. What a file system is. In the process I asked them about some stuff they were working on at the moment, and found a couple of ways to explain those ideas using concepts that they were already familiar with.

I don't know everything. Not even close to it. I know a few things a lot of people don't. More importantly, each and everyone out there knows things that I don't. Every sentient being on this planet has lead very different lives, had very different experiences, learned different lessons and read different things. I regularly have to look things up that I haven't seen before and study new topics because I lack the experience to understand them. This is no different from anyone else out there. There is no shame in that. And there is no shame in realizing that there is something new to learn, because there is always something new to learn. Usually at the most unlikely times and circumstances.


Oversight Committee, 26 July 2023, Unidentified Anomalous Phenomena.

$
0
0

This is one of those really difficult posts to write. Not just because I've got a lot of stuff going on (when do I ever not, you're probably asking yourself) but because of the sheer volume of data at hand. Like a lot of folks, I caught wind of the House Oversight Committee hearing on UAPs (anonymized) (archive.is) (Internet Archive) (Unidentified Anomalous Phenomena) and my curiosity was piqued. Unfortunately because I had to work early that day I didn't get to watch or listen to much of it, but because House Oversight hearings are a matter of public record it was recorded and put online (Youtube, Internet Archive, local mirror). The actual hearing begins at the 18:00 mark of the original recordings.

Okay, look. You know I'm weird. It should come as no surprise to anybody that UFOs, UAPs, and other existential anomalies are of interest to me. I don't talk about it much because, quite frankly, there is so much bullshit out there that I don't feel like being the recipient of it. My position is this: Yes, there are things we can't explain which have been sighted many times over the years. Some percentage of them can, sooner or later be explained. Great, mystery solved, we learned something. Some percentage of them haven't been explained yet. And some percentage I don't think ever will be figured out. "I don't know" means just that: I don't know. I'm not being coquettish or nudge-nudge-wink-wink about it, I mean just that. I don't know. There is not enough data to tell what's going on one way or another. Between Giorgio Tsoukalos claiming that aliens built pretty much everything of note on this planet before the year 1000.ce, a great deal of what I'll refer to as unverified personal gnosis, and an incredible number of people over the years telling shaggy shoggoth stories to people who've refined uncritical acceptance to a fine art over the years... well, you know the score there. To quote Serial Experiments Lain, "Conjecture has become fact, and rumour has become history."

That was a bit more of a rant than I expected I'd have in me.

Anyway, what caught my attention was none of the above. What did was that the House Oversight Committee, the part of the US government that rides herd over the other agencies and programs thereof to ensure that they're doing what they're supposed to do as well as they can. We definitely do not get all of the government we pay for but they seem to make the effort. Additionally, David Grusch, one of the three people who testified that day in July had gotten the attention and backing of the Office of the Inspector General. (local mirror) In short, the job of the OIG is to hunt down, investigate, and remediate fraud, waste, and abuse in government. Their remit is investigatory in nature because fraud, misuse of funds, and other sundry forms of governmental abuse are federal crimes, and if the IG feels a need to roll its sleeves up and get its hands dirty they smell blood in the water. Just as you couldn't get the FBI on your side to handle graffiti, you don't get the IG to act unless it's Something. These circumstances seem to require careful consideration, thought, and digestion.

So, over the course of a couple of days (a few days apart) I listened to the hearing several times, took notes, and sat with it because I wanted to think about the testimony and information presented. I tried to avoid reading or listening to as much coverage of the testimony as possible because, prior to 26 July 2023, there was a flood of people posting videos and giving interviews who had nothing to do with the matter in question that dropped the name "David Grusch" to game search and recommendation algorithms to get more eyes and clicks on their videos. This is some of what I meant about all the bullshit flying around. So I will only be writing about stuff from folks directly involved that day. For our purposes the only "directly involved" folks I'll be referring to are the ones who actually testified that day and I'm sticking to primary sources as much as possible. This includes not only the recording of the public session but the testimonies submitted beforehand by Ryan Graves, Commander David Fravor (ret.), and Major David Grusch. (Internet Archive)

The thing about this thing is that it's hard to tell where to start. The three witnesses that testified that day are not examples the stereotypical slack-jawed yokel in the middle of nowhere. Prior to appearing before the House Oversight Committee in July, David Grusch held the rank of Major while in the US Air Force, where his MoS was intelligence and his role (on both active and reserve duty) was that of Senior Intelligence Officer. Later he worked for the National Geospatial-Intelligence Agency in the role of Senior Technical Advisor, which, if you're not familiar with it is tasked with collecting, analyzing, and disseminating geospatial intelligence. To put it simply, their schtick is taking intelligence information from satellites, from photographs to intercepted satellite communications, analyzing it, figuring out what it means, and handing it off to other parts of the US government for use.

Grusch's job was basically executive level support duties where he was read into 1 a large number of compartments 2 as part of his normal duties. Executive support, in this context, seems to have consisted of preparing the regular briefings for and answering questions from the White House, the Cabinet, and various federal agencies. Grusch also worked for the DoD's Unidentified Aerial Phenomena Task Force, established in 2020.ev under the Department of the Navy. He was also co-lead of UAP and trans-medium 3 object analysis at the DoD's All-Domain Anomaly Resolution Office, which was created in 2022.ev to bridge different parts of the US military and government with regard to UAPs. He also holds a degree in physics and did a couple of tours in Afghanistan.

Let's stop and think about that a minute: The DoD considers unidentified aerial phenomena a serious enough thing that they stood up a task force figure out what's going on. Officially. Not in an X-Files "we're going to do this quietly and make sure nobody notices" kind of way, but in a "we're putting it in the military budget for fiscal 2022.ev" (local mirror) way. Civil servants on the GS, military personnel, and contractors from the private sector are being paid by Uncle Sam to look into UAP stuff. As government stuff goes that's about as "word of god" as it gets. As for David Grusch, he has the kind of military and government service credentials that would make anybody inside the DC Beltway (and govvies outside of the Beltway) stop and listen. He has, as they say, skin in the game.

Next up, Lieutenant Ryan Graves of the US Navy. He was an F/A-18 pilot who flew missions during Operations Enduring Freedom and Inherent Resolve as part of Navy Fighter Attack Squadron VFA-11, better known as the Red Rippers. He was also a first-hand witness of UAP phenomena while on duty. I don't have much other reliable information on his bio because I haven't run a go-to on him, but his sworn testimony is more than sufficiently interesting for the purposes of discussion. Rounding out the witnesses that testified that day is Commander David Fravor, US Navy (ret). Fravor is the former commanding officer of Strike Fighter Squadron 41, better known as the Black Aces. He also had first-hand experience with UAPs while piloting an F/A-18. Two highly trained (US Air Force; US Navy), seasoned, experienced military pilots with multiple years of air combat experience each.

Now the testimony presented during the hearing, starting with Fravor's because I'm going in chronological order. You're probably going to want to get some coffee or something, because there's a lot to process here.

In late 2004.ev former Commander Fravor's squadron was stationed aboard the USS Nimitz off the coast of California as part of Carrier Air Wing 11. In November of 2004 they were scheduled for a 2V2 (two on two) training exercise. The weather was recorded as being as close to perfect as possible for flying - clear skies, light winds, calm seas, no whitecaps or waves. While en route the squadron was informed that their training mission was superceded by real-world tasking effective immediately. They were directed to vector westward over the Pacific Ocean to investigate objects detected by long range sensors. The objects in question were detected at an altitude of 80,000 feet, then recorded abruptly diving to an altitude of 20,000 feet, hovering motionless in mid-air for multiple hours at a time, then abruptly climbing vertically out of sensor range. 80,000 feet up is between the troposphere and the stratosphere, about 15 miles (24 kilometers) straight up. This is significantly higher than passenger jets fly but around the flight ceilings of aircraft like the SR-71 Blackbird, the U2, and the X-15. 4 Suffice it to say that it is not easy for an aircraft to reach an altitude of 80,000 feet. I wasn't able to find anything useful about military helicopters, but civilian helicopters can hover for between 2 and 5 hours at a stretch, fuel reserves permitting.

As the retasked squadron approached the directed coordinates they spotted white water off the starboard side. This means that the ocean below was rough and foamy, which one would expect in shallow water near the coast due to proximity of the seabed to the surface but not far out in the Pacific. It was then that the pilots got visual on a small white object moving erratically and abruptly in the air around an altitude of 12,000 feet. The pilots observed no rotors, no rotor wash, and no visible flight control surfaces. Just a featureless white... thing. The pilots also observed that the long axis of the object was oriented north/south. Fravor and his WSO vectored in for observation while the rest of the squadron flew high cover; this involved descending to 15,000 feet. The object rotated so that the long axis was then oriented toward the jet and began to approach at speed.

About one-half mile out the object accelerated rapidly and disappeared from visual and sensors. The high cover aircraft at 20,000 feet simultaneously lost contact with the object. More interestingly, the white water beneath the object (12,000 feet beneath the object) had subsided. The air controller aboard the USS Princeton then radioed to inform the squadron that the object had reappeared at their original CAP point 60 miles behind them in less than sixty seconds. Strike Fighter Squadron 41 returned to the USS Nimitz and landed for debriefing. The crew outbound from the Nimitz had its own encounter with the white object, and recorded video footage as well as radar data. The second flight crew reported at the end of the sortie that the object was actively jamming their on-board APC-73 radar. The radar tape was never released and its wherabouts are unknown 5; no investigation was conducted until 2009.ev when AATIP looked into the matter.

It later came out that the objects had been observed out there for several weeks running but this was the first time that any fighter craft were directed to investigate.

You might've guessed that this is what came to be called the tic-tac incident (Wikimedia copy) (local mirror) that was published in 2017.ev. That video was recorded by one of the FLIR camera pods during that second sortie. Like a lot of folks who watched it, you're probably saying "Big deal, that's just a blob on a screen." And it is; the radar tapes, the regular video, LIDAR data, and the other sensor data has not been released. It is usual to combine multiple streams of sensor data (mutiple image integration, also referred to as "fly's eyes"). I would like to point out one thing: FLIR is a thermal sensing technology. A thing that was recorded power diving from 80,000 feet, hanging out around 12,000 feet for hours at a time, blowing past a couple of F/A-18's like they were going backward, and then barrelling out of sensor range would need one hell of an engine. A conventional engine would mean that it was pumping out waste heat and lots of it. That FLIR video shows no thermal emissions. Whatever the object was it was also whipping up the ocean from an altitude of 12,000 feet with no visible means of doing so. I don't know how far wake turbulance can reach but I'm pretty sure it's not 12,000 feet. How did the object evade a bunch of F/A-18's flown by combat pilots? I don't know. Aircraft are fast but they take time to maneuver because the laws of physics don't allow airplanes to turn rapidly, but the tic-tac traveled 60 nautical miles in less than a minute, slammed to a stop, and hung out again for a while.

In 2014.ev Lt. Graves and his squadron were operating out of Naval Air Station Oceana near Virginia Beach. Their jets' radar systems had just been upgraded and they were in the process of shaking out the last of the bugs and familiarizing themselves with the new equipment. While on duty they began detecting unknown objects in USian airspace. Understandably, the detects were originally believed to be post-upgrade problems but diagnostics on the upgraded radar systems showed no faults, plus the radar returns were correlated against other on-board sensors (infra-red, passive, and video) that had not been worked on, both on their and on other US Navy aircraft. There were also multiple visual identifications by jet pilots flying out of NAS Oceana: A dark gray or black cube inside of a clear sphere, somewhere between 5-15 feet in diameter. On one occasion the object came within 50 feet of the lead aircraft. That sounds pretty far away but 50 feet in aviation terms is kiss-your-ass-goodbye distance because, at the speeds jet aircraft must maintain to stay in the air there is almost no way that you can dodge in time. The training mission was immediately scrubbed for safety reasons, incident reports were filed per SOP, but there was no official acknowledgement from higher up the food chain. Far from a one-off, these in-flight encounters were so routine that UAP sighting advisories were added to regular mission briefings at NAS Oceana.

This brings us to the testimony of David Grusch. Much is probably being made of his lack of first-hand experience in this matter but very little of the fact that he had the most extensive access and actual investigation. In 2019.ev Grusch was tasked by the director of the UAP task force to identify all special access programs and controlled access programs (local mirror) because Congress is supposed to have some idea of what's going on in the world of highly classified stuff. As part of this official duty he was reporting his findings to the Deputy Secretary of Defense. While conducting this investigation he received reports from multiple active and former military and intelligence community personnel that there were multiple active projects specifically working to stay off the radar (as it were) of Congress. As you might imagine Congress not knowing what's going on upsets them deeply. During the course of this investiation he found hard evidence of wrongdoing as well as receiving classified testimony 6 from folks working on those projects. Some it appears to have been gotten as part of the investigation, and some of it came from folks on those projects who, for whatever reason sought out Grusch to tell him things.

On top of that, when following up on that information Grusch was officially briefed 7 about the existence 8 of a multi-decade UAP crash retrieval and reverse engineering program that fit those criteria, vis a vis doing everything they could to ensure Congress didn't hear about it. This sort of thing seems to fall pretty solidly into "Congress wants to know about this" so he asked to be read into those compartments but was denied access. Consider what would happen if you were being investigated by the police and when they tried to execute a search warrant you told them to go to hell and slammed the door. It wouldn't go well for you, but that's essentially what they did. So Grush reported this and brought evidence to his superiors as well as multiple inspectors general. This is what he was supposed to do: It's established procedure that goes through all of the proper channels. At some point he started catching blowback for the investigation: Officials began retaliating for his investigation. In theory this is something that should never happen but it's unfortunately quite common. Caught between a rock and hard place Grusch invoked the provisions of Presidential Policy Directive 19 (local mirror) as a whistleblower.

Despite the idea of a whistleblowing being well and truly smeared as itself an act of wrongdoing in the last couple of decades nobody does this lightly. At best, nobody will care and nothing will ever come of it and you'll just feel lame. At worst, blowing the whistle is tantamount to comitting career suicide. Prepare for your life to blow up in your face and gennerally suck for an indeterminant number of years, if not decades. Historically, folks rarely come through unscathed. Forget retirement, pension or benefits, all of that is the first thing to go when you're a whistleblower because nobody likes a nark. Career military officers are not going to wreck their careers for something that is trivial or bullshit. Especially a career intelligence officer who's been through the security clearance process dozens of times and read into who-knows-how-many compartments over the years. I don't know what Grusch has been doing in the interim, I haven't run a go-to but I don't think it likely that he's been working as a contractor or lobbyist now that he's known as a whistleblower, DC AC be damned.

This pretty much catches us up to the actual hearing of 26 July 2023. As I type this story in early August of 2023.ev no transcript of the hearing has been published 15 (at least as far as Beamship and Tripwire can tell). The rest of this article is written from the notes I made from multiple re-listens. I did the best I could to make them accurate but I've undoubtedly made at least a few mistakes. I apologize in advance for being not perfect. The text is only about the folks testifying, the questions they were asked, and the answers given. I've tracked down references and background information (read: hyperlinks) but have injected no speculation or statements from anyone not involved in the hearing proper.

Worth consideration is that the witnesses were sworn in officially before testifying. It seems like such an antequated thing and people make fun of it during a time where "alternative facts" are something that people are weirdly okay with, but from a legal perspective it means that if you knowingly lied, it's your ass. Joke about it if you want but folks have gone to prison for far less. Lying under oath is perjury under USC Title 18 sections 1001 (local copy) and 1621 (local copy), a felony that can net you up to five years in prison. Perhaps I'm a bit old fashioned in my attitudes, but folks tend to think very carefully before committing felonies in public and usually don't.

I found it very interesting that much of the hearing was about threats to aviation safety. I also don't find it surprising because safety threats are a tangible thing folks can think about in conjunction with their own lives. To put it another way, it's hard to get any action on pilots reporting strange things but "A plane could slam into something solid enough to show up on radar and crash in a residential area" gets attention. Additionally, a second complaint made is that there are so few ways that pilots can report UAP encounters, let alone get anybody to care is itself a safety hazard. If you can't warn anybody about a hazard and you can't get anybody to take it seriously it's only a matter of time before shit happens and people die horribly. Regulations, it is often said, are written in blood because they are unfortunately enacted as the direct result of somebody doing something that common sense would say you should never do, but because there was no rule that said you couldn't, did it anyway. I can't think of many people who would really want such a thing to happen on their watch (and if you are I don't want to know you).

A thing that I found very striking is how not unusual UAP encounters of the sorts described by Fravor and Graves are. Common enough for them to be mentioned in daily "Before you take off" briefings ("daily" being a load-bearing term). Common enough for briefings being given to student jet pilots and pertinent NOTAMs are issued to minimize the possibility of accidents. Common enough for air traffic controllers to sigh and say "They're back again" (local mirror, fast forward to the 19:34 mark for the interesting bits; note that they're not overly excited, just kind of annoyed because it means paperwork). It was described as a generational issue for naval aviators, i.e., multiple generations of pilots have encountered and reported them. Multiple witnesses and multiple sensor system sightings are pretty much normal. The majority of those witnesses are commercial pilots with the big airlines and many of them are veterans with decades of flight experience. As was stated repeatedly by all three witnesses, the lack of a usable reporting system to collect and assist in the analysis of data is one of the biggest problems. No data, no analysis, no science, no conclusions, no action.

The national security angle is one that a lot of folks tend to brush off, largely because most folks have never worked inside the DC Beltway. The question has often come up, "Why are the reports themselves rarely publicized?" and that usually comes down to the principle of contamination. In a nutshell, if you have classified material it has to be handled and protected in certain ways. The reasons for this are many and varied and have to do with the nature of the material and its implications. One of the things that I mentioned earlier is the specific capabilities of things like sensor systems. If specifics about a piece of military equipment get out, adversaries can plan around them or use that information to develop countermeasures. Using the example of UAP encounters that are documented with sensor systems built into fielded warfighting equipment (like fighter jets) it is possible to figure out some of the parameters of those sensor systems. That a flying tic-tac just juked an F/A-18 isn't nearly as interesting to spies from Wayovertheristan as what it implies about how fast an F/A-18 goes under certain conditions, what kind of sensors it has on board 9, the ranges of those sensors under certain weather conditions, the sorts of materials those sensors seem to pick up well, the sorts of things those sensors don't seem to pick up well... If you think about it from the perspective of "What's in this footage that I can use to cause lots of trouble?" it makes more sense. Because of this the data those sensors collect is itself classified and has to be treated in the same way as design schematics and operational specifications of those sensors. The classified nature of the sensor contaminates the sensor data with its security classification.

There is no wiggle room allowed. That the Nostradamus 9000 has an aircraft aluminum housing is considered just as secret as the fact that the Nostradamus 9000 can pinpoint the location of every last Carolina reaper on the planet to within a fraction of a millimeter. The principle of contamination then makes the precise location of every Carolina reaper a highly classified secret. 10 In other words, security classification assumes something is world-endingly dangerous if it gets out by default, and only if there is need, orders, and careful review and redaction on a detail by detail basis is anything about it declassified and made public. Complain and speculate about it all you want but them's the breaks, and the break-ers don't care.

A mode of discourse that I keep running into around the Net is that the whole thing is jetwash because nobody "actually saw anything." Putting aside for the moment that Graves and Fravor did actually see things, what folks don't seem to understand is that Grusch was an investigator. He was tasked with looking into special access programs that were supposed to be reporting to Congress but weren't. He wasn't told to hunt down aliens or search for a funny blue box or anything, he was instructed to figure out who was ignoring the chain of command and why. It is my guess that he didn't know beforehand what he was going to come across. He asked about BLUE INSPECTOR 1112, possibly expecting to hear about embezzling of government funds or something and project personnel instead told him "There's this thing, we don't know what it is or how it works, but it came from this black cube inside a transparent sphere and the folks running this program told me to shut the fuck up, so don't tell them I told you."

In other words, folks were expecting something like the John Lear test13 (local copy), didn't get it, and decided to believe whatever they were going to believe anyway.

Grusch was investigating classified projects and, as explained earlier, learned classified things. He followed proper procedure and security protocols, used proper channels, and held to both the letter and spirit of the law. When he learned of some compartments that had to be investigated he followed established procedures to be read in and briefed but was declined. When that didn't work (and in government, proper channels and the chain of command working against you is not an excuse for failure) he followed other proper channels: Going to the OIG, filing the appropriate paperwork and disclosures as a whistleblower (and being punished for it, because that almost always happens), getting the stuff he was going to say on the record in public vetted and approved by the government, and formally requesting the use of a SCIF for the classified stuff. The reason for this is, regardless of his orders, regardless of his assignment, regardless of his position in the food chain (as a military officer, as a govvie, or as a government contractor) if he did anything differently he would have been violating a large number of laws pertaining to national security, the handling of classified material, and the non-disclosure terms of his security clearances. In other words, his ass would be grass and he'd have been arrested and up on charges even though he was testifying before Congress. National security laws give precisely zero fucks about the context. Even testifying before Congress in open session (as opposed to a closed session in a secure facility) under oath would be at least one felony. 14 In point of fact this explains how and why he was able to retain the legal representation of Compass Rose, just in case somebody found a creative legal means of screwing him (another common hazard of whistleblowing).

I could keep going on and on about this because there was so much material presented during the hearing, but I think I should cut it off at this point. Just getting this far has taken several weeks of transcription, research, note-taking, phone calls, dot dot dot... and quite frankly, I'm mentally exhausted. If I were writing a book that would be fine, but I'm not. I'm just some schmuck with a blog. Original sources are linked and, where appropriate mirrored locally. Links that might give folks pause before clicking have been anonymized through a public proxy service if that's a concern of yours. If you're interested, by all means dig in. I've tried to keep only to things that I know about and can speak to, and while I'd love to talk some of the other, weirder stuff I really need to do something else for a while. All I can say is that if you're interested in UAPs, stick to sources of information that are known, that can be traced back, and that don't seem to have an agenda. There is no shortage of "anonymous UFO whistleblower leaks" that are shaggy shoggoth stories with little to no hard data that can be verified. As Terrence McKenna so famously said, "The real weirdness does not have to be treated with respect or as though it were fragile. True weirdness is true weirdness: You can kick the tires, honk the horn, and drive it around the block." And if you can't do that, maybe you should go wash your hands because its origins are suspect, to say the least.

There is so much data from the hearing that (and this is not something I normally do) I've uploaded the original Markdown file of my notes/rough draft/whatever the hell it is for folks to look at. It's not polished, it's not edited, and it probably doesn't make any sense to anybody but me. I was basically taking dictation from a recording of the Senate hearing over a couple of days, with copious amounts of pausing, jumping back a few seconds to re-listen and re-re-listen, looking up references to things I didn't know about, and stream of consciousness impressions of what was said. There is a great deal of material in there that I didn't touch on in the final writeup, references to documents and sites, notes to myself of things to go back and look for, and the equivalent of muttering to myself under my breath while someone else was speaking. You have been warned, and I apologize in my advance for any harm that it may or may not cause to your mental health.


  1. "read into" - This is when someone has NTK (Need to Know) and NTA (need to Access) something classified. When the appropriate security clearance has been investigated, adjudicated, and assigned personnel are informed of the existence of the classified thing, are given a whole bunch of paperwork to sign that basically says "this is classified stuff, you need to know this to do your job, these are your responsibilities, and here's a reminder of the legal penalties in store for you if you violate your security clearance. Sign on the dotted line and shut up." Then they are briefed on the what and wherefore of the compartment. 

  2. "compartments" - Very sensitive programs are split up into things called compartments, aspects of the program that are sort of logically related but are kept strictly separate from one another. This is a way of divvying up work in classified projects such that nobody actually doing the hands-on work knows more about the program than what they and their immediate teammates are tasked with to minimize the impact of a security breach. Let's say a classified program is a bookcase in a library organized by the Dewey decimal system. Each shelf of that bookcase is a different Dewey class, representing compartments of the program: The topmost shelf is all the comp.sci and general reference books in the library, the second shelf is all the philosophy and psychology books, the third shelf is all the social science books, and the fourth shelf is all the books about languages and linguistics. The individual books on each shelf represent the people working in that compartment, what that compartment is working on, and the things in the compartment being worked on. Each shelf can't see the others but know that there are other shelves in the bookcase, just as each compartment knows there are other compartments but is isolated from them. Only the librarian (the program managers) can look at the whole bookcase, each shelf in the bookcase, and even each book on a shelf. The librarian might not understand every book in the bookcase but they do know how to keep them organized, straighten them up, determine if anything is missing or damaged, and assess the overall state of the bookcase. 

  3. "trans-medium" - Things that go from one medium to another, such as from air to sea, or from space to air. 

  4. Specifics about the performance characteristics of military aircraft, including maximum capabilities are classified. If you tell everyone exactly what your equipment is capable of your enemies can plan around them and keep you at a disadvantage. 

  5. This isn't as mysterious as it sounds. Governments care about security leaks, espionage, sabotage, and deliberate fuckups. As long as a thing is filed according to its security classification they don't much care. To put it another way, as long as personnel are following clean desk protocols by putting stuff away in desk drawers and maybe filing cabinets, and everything having to do with STRIKE BOUNCE (generated by the always helpful NSA-o-matic codename generator) is put back into the appropriate secure container it's fine. Stuff really does get misfiled all the time, and as long as the people who need to use it can find it again nobody seems to care overmuch. 

  6. If you're doing classified work and you have to speak on the record to someone investigating that work, your testimony is classified. Just as what you would say in meetings when giving a status report about that work would be classified. Just as what your boss would tell you when you start working on such a project would be classified. 

  7. Why do I keep saying "officially?" He wasn't a rogue govvie using his pull to dig into stuff he's not supposed to be working on. He was specifically given the orders, access, and resources to conduct this investigation because Congress suspected wrongdoing and needed information to decide what to do next. "Congressional inquiry" is a phrase that makes govvies' blood run cold because they make getting a security clearance seem like a picnic. To put it another way, imagine that somebody accused you of being a gangster of the caliber of Al Capone and you have to defend yourself in court. And they have a gun used in six murders with your fingerprints on it. But you've been in a hospital in a coma for the last ten years. 

  8. It is entirely possible to have the security clearance and NTK/NTA to only know about the existence of a classified program and its codeword, but nothing about what it is, what it does or anything else. To continue with an earlier example, you might be allowed to know that STRIKE BOUNCE is a thing that exists, but that's it. 

  9. To be honest, this video was the first time I'd ever heard of FLIR. 

  10. Yes, even though it's a friggin' chili pepper and not a nuclear warhead. 

  11. Thank you PROJECT: CODENAME

  12. Why do I keep giving disclaimers and linking to the NSA-o-matic and PROJECT: CODENAME and stuff? Because the last thing I need is somebody thinking I'm a government insider violating my security clearance by blabbing on the Internet and initiating a counter-intelligence investigation. This is all random shit I'm making up as contextually appropriate examples. 

  13. My opinion of John Lear, since I mentioned him and the John Lear test? A highly credentialed and accomplished individual who was also, insofar as UAPs and suchlike are concerned a total bullshit artist. 

  14. What about the Congressfolks on that committee? It's safe to say that each has at least one security clearance (SECRET, if I had to guess), possibly TS, and have been read into a few compartments each just because of what they do. It's worth noting that one of the committe members stated that day that several had requested access to some compartments pertaining directly to the hearing and were refused. Think about that for a moment. 

  15. The transcript has been published. (local mirror

802.11w causing random wireless problems.

$
0
0

A couple of weeks ago I found that I had to replace the wireless router upstairs because its radios were spiking to extemely high temperatures a couple of times a day. 1 When anything spikes over ten standard deviations in the universe, generally speaking it's probably a very bad thing. So I did a little research and picked up a new wireless router, a Linksys EA8300 (affiliate link) which has very good OpenWRT support, 256 megs of RAM (which is a lot for a wireless router) and 256 megs of on-board flash storage. Most importantly, the EA8300 has three separate wifi radios, which means that it can cover much more area with less of a chance of neighboring wireless devices crosstalking and interfering with each other. Net result: Much better bandwidth, which speeds everything up overall.

Flashing OpenWRT onto the unit was fairly straightforward and unremarkable. Configuring the new router took a little time and involved locating a couple of settings which had changed position over the last couple of years. It was largely a matter of copy-and-pasting from the old router into the new one and then changing the IP networking at the very last minute. Same with setting up WDS for the downstairs router, like last time. Swapping in the new router was the work of a couple of minutes. But then I noticed something weird (isn't there always?)

A couple of systems I have at home dropped off the Net and wouldn't reconnect, even though everything else did within a minute or two. And there didn't seem to be any rhyme or reason behind which systems had vanished. One could reasonably guess that, say, every Raspberry Pi wouldn't come back online, or every weird-ass little sensor built on top of an ESP8266 was having trouble but that wasn't the case. Leandra wouldn't come back online. My weather station outside promptly found one of the wireless networks but the printer and our Kodi server didn't. They weren't on the wireless network so I couldn't just shell in and take a look around, so I had to plug in a spare keyboard and display; given that my office is still full of shipping crates of family stuff from my mom's estate, it was anything but a straightforward exercise. The one thing they all had in common was that every isolated system was throwing "CTRL-EVENT-ASSOC-REJECT status_code=16" errors a couple of times per second. Did any of the machines have a different wireless password? Not that I could tell. Recent system update? Nothing within the last week or so. IPv6? Some of those boxen were already IPv6 enabled and some weren't, so that didn't change. Searching for that error was somewhat difficult given that a fair amount of my exocortex was offline, and the answers I was finding ran the entire gamut from reinstalling Windows 11 (which nothing in the house runs, and certainly doesn't apply to an ESP8266 sensor pod) to HDMI interference.

I decided to start walking back my configuration changes on the new router, one at a time to see which, if any machines would suddenly pop back onto the wireless network. As luck would have it I stumbled onto the solution almost immediately. For every wifi radio in the router (in the OpenWRT control panel for v22.03.2 go to Network -> Wireless -> pick a radio -> Edit -> Interface Configuration -> Wireless Security) there is a checkbox for 802.11w Management Frame Protection2 support. If 802.11w is turned on, turn it off for every radio, click the Save & Apply button, and then restart each radio by clicking Disable and then Enable 3 (or power cycle the router). If this was the problem you should start seeing other systems start popping back onto your wireless network by themselves.

Why 802.11w caused problems, I don't know. I haven't dug deeply enough into it to tell. I definitely don't know why the set of all of my at-home machines that were having trouble didn't have a discernable pattern. Logically, if Leandra (Intel wireless chipset, running Arch Linux) was having problems, Windbringer (laptop, same chipset, also running Arch Linux) should have also, but this wasn't the case.


  1. Monitoring and alerting of said wireless router done with System Script, a rewrite of my System Bot as a pure shell script for embedded devices. Alerts sent via XMPP using a copy of go-sendxmpp compiled for that system architecture. 

  2. In as nutshell, 802.11w protects wifi management frames (which implement stuff under the hood like detecting new devices on the network, negotiating joining and leaving the wireless network, and sending out "Hey, I'm here!" beacons) from certain kinds of wireless attacks, like replay attacks and deauth attacks

  3. This will, of course, punt you from your wireless network until the radio comes back up. If you have more than one wireless network configured on the computer you're working from it'll drop onto the next one. If you're plugged into a hardline you probably won't notice. 



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>