Quantcast
Channel: Antarctica Starts Here.

A polite request.

$
0
0

Hi, folks. I don't ordinarily address everybody directly like this. It never feels right. Just not my thing, you know?

Anyway, this is for folks who have my RSS or ATOM feeds in their feed readers. I really appreciate it - not enough folks use feeds these days or have presences outside of the walled gardens. However, there isn't any need to poll my site every ten minutes. Or every five minutes. I appreciate your enthusiasm (I really do), but I only post once or twice a month. There's no need to hammer the server quite so hard. Checking once a day would be ideal, I should think. If you can, if it supports it, would you please turn down how often you poll the feed you're monitoring?

Thank you kindly. I really appreciate it.


Getting things cleaned up.

$
0
0

The inherent instability of working night shift aside, I've been pretty busy straightening up my life by straightening up my usual environment. Therapy cleaning, if you will.

To avoid recapping the last couple of years, after my mom died I shipped a large number of shipping crates of stuff (paperwork, research, data storage, and a large volume of family pictures dating back several decades). All of that stuff had to go somewhere, so much of it was stacked up in my office, where I spend much of my time because I work from home these days. Now and then in the interve nning years, I unpacked the shipping crates, cleaned some stuff out, found some unlikely places to store some things, but ultimately repacked them into more sturdy storage bins. It didn't actually solve the problem, it just moved it around a little. This meant that, for the last few years my office (which has usable floor space of about 9 feet by 9 feet 1) was down quite a bit of floor space. Cramped is one way to put it. Claustrophobic is another. Frustrating, because I had to pull most of the stuff on the floor out of the way just to clean or run the vacuum is another.

A few weeks back my family got a good deal on a storage unit so I decided to take all of the stuff that had piled up in my office, put it into smaller storage crates 2, throw in a handful or two of silica gel packets, and then shrink wrap them. The large bins (which, even when partially full are too heavy to move in any reasonable way) are going to be donated. The smaller bins are now in the storage locket. While this seems like it didn't accomplish much (the phrase "rearranging deck chairs on the Titanic" definitely went through my head a few times) I now have room to actually do things. Before I didn't have enough floor space (even using the room under my desk after pushing my office chair into the hallway) to even go through a single package of photographs to deduplicate them 3. After getting stuff put into storage I now have quite a bit more room for this task.

Incidentally, it's also given me the room to clean some more stuff out, put a few (okay, a lot) of things away properly, and sort through stuff. I was able to take some of the stuff out of my server rack, install another set of drawers, and take a couple of armloads of stuff that had been either sitting on the floor for the last few years or on top of shipping crates and put them away. I've also been able to take rather a lot of documents that have piled up, lay them out, scan and archive them, and destroy them at long last. My robot (I built a robot a few years back, I just never got around to writing about it, mostly because I have yet to write remote control software) now has a home of his own in a Pelican case that fits under my desk, where the toolchest used to be. I have just a few more things to put away properly (if anybody has ideas for storing a couple of scarves, hats, and gloves that I don't wear very often because I live in California, I'm all ears), a carpet to sweep, and maybe a few more things to throw out or donate to Goodwill.

Since I started working on this post, a few more developments have occurred. I've been put back on day shift at work so I've been rolling my sleep schedule back to where it was before. It's a bit disorienting to go backwards, I'll admit, but it seems to be going well. I've also been trying to get out and get some sunlight and fresh air (shock! gasp!) when I can, if only because my mental health seems to require it. It's one thing to be an introvert (which I am), but introverts can and do get lonely. Even occasional human contact (like seeing other people) matters on some level; seeing other people, going to people-related places, watching people-related environments counts. I can't speak for everyone but not getting that was starting to do not good things to my mental health.

I even have a couple of other things to write about, which I'm kind of pleased by. But that's for another time.


  1. It's about 18 inches bigger on three sides but I'm factoring out the bookshelves. Also, I can't rightly count the closet space that I have my server rack installed in. 

  2. The storage bins I'd been using were 200 quarts in size (about 40 inches long by 20 inches wide). The smaller bins are 25 to 30 quarts in size, which I don't remember the dimensions of. 

  3. My goal is to get them professionally scanned so that I can archive them. I plan on putting one set on Leandra and giving the other members of my family the originals (if they want) or copies of the scanned image archive on flash drives (if they don't). But there is little sense in duplicates being scanned along with the others, if only for the sake of managing cost. And sorting out duplicates takes horizontal space, which I had very little of for a long while. 

Picking up sticks.

$
0
0

It's been a bit since I've checked in with everyone.

About a week after my last post I found out that I'd been moved back to day shift at work. Through a miscommunication I found this out the hard way, which is to say right after logging in one evening my boss wanted to know where I'd been all day. Long story short, I used the entire week to slowly wind my sleep schedule back to normal, getting up an hour earlier and going to bed an hour earlier every day until I was back on day shift. It didn't take long for my mental health to start improving once that happened. Even introverts need some kind of interpersonal contact, if only to remind oneself that there are other people out there. So, it's back to 0800-1600, which now gives me the option to go out and do stuff if I want, and have to worry significantly less about noise because everyone's awake anyway.

My office is pretty well cleaned up. As cleaned up as it's ever going to be, I suppose. The last shipping crate was moved into storage about a week ago and I now have more floor space than I can recall having since the Before Times. It's kind of odd - there is so much I can do with that floor space (and space on the shelves) but I have to stop myself from doing so, because I need that space to not feel so claustrophobic. Space on my bookshelves is great, but that doesn't mean that I should run out and get more books. Space over my desk is great but that's for displaying things that I didn't have anywhere for before. Maybe once I've got everything set up I'll post a few pics.

Some time ago a colleague of mine put me on to a new piece of equipment, the GL-AXT1800 from GL.inet. It's a travel router, which is to say that when you go somewhere you plug it in, connect your laptop to the travel router, and then use it to connect to the local guest network. Once that's done multiple other devices can connect to the travel router. It doesn't seem like much but there are still places where you have to pay for wireless access per unit, plus there are security concerns; for example, there are circumstances in which it's useful to have everybody all going through teh same VPN connection. It even has a built in mechanism for clearing captive portals called Travelmate. So I ordered one off of Amazon (I don't know if this is an affiliate link or not, Amazon's changed it up so much) and when it arrived I put it through its paces. For one thing, it has easily the best documentation for a piece of equipment that I've seen in a very long time, 172 pages of goodness. Second, it runs OpenWRT right from the manufacturer, which saved me a lot of work figuring out if it'll work in the first place. I was able to both configure it and get it hooked into my exocortex with very little trouble. I'm on retreat right now and using the GL-AXT1800 in my hotel room, and it's required zero messing around to get working. I even have a VPN connection running from the router keyed to the physical switch on the side. All in all, quite a nice piece of kit.

Somewhat along those lines, when I go traveling I normally bring a Raspberry Pi running RasPi OS (I wish they hadn't renamed it from Raspbian - it looks much more interesting when someone pronounces it) and Kodi with a couple of flash drives full of stuff to watch and listen to. 1 Just about everywhere one goes these days has a flatpanel display with at least one HDMI jack, so there is little sense in not putting them to use once in a while. I also, incidentally, used Long Haul for testing that GL-AXT1800 at home. Specifically, I ran a regular system update (sudo apt-get upgrade and sudo apt-get dist-upgrade) to see how the travel router would hold up (perfectly, as it happens) but in the process something got messed up. Namely, when I cleaned everything up (sudo apt autoremove, per the output of apt) it broke Kodi. When I plugged Long Haul in at my hotel I didn't get the Kodi splash screen, just a blinking text mode login screen, and occasionally a black screen with a single cursor at the top left. My travel router makes it possible to SSH in to take a look around, and I noticed thlis in the system logs:

pi@long-haul$journalctl-ukodi.service-xf...Aug3015:10:27long-haulkodi-standalone[1239]:didnotfindextensionDRI_Mesaversion1Aug3015:10:27long-haulkodi-standalone[1239]:failedtobindextensionsAug3015:10:27long-haulkodi-standalone[1239]:didnotfindextensionDRI_Mesaversion1Aug3015:10:27long-haulkodi-standalone[1239]:failedtobindextensionsAug3015:10:27long-haulkodi-standalone[1239]:didnotfindextensionDRI_Mesaversion1Aug3015:10:27long-haulkodi-standalone[1239]:failedtobindextensionsAug3015:10:27long-haulkodi-standalone[1239]:didnotfindextensionDRI_Mesaversion1Aug3015:10:27long-haulkodi-standalone[1239]:failedtobindextensionsAug3015:10:28long-haulkodi-standalone[1239]:ERROR:UnabletocreateGUI.Exiting

Long story short, the DRI_Mesa libraries went missing, probably when I ran sudo apt autoremove a few weeks back. The fix was simple: Reinstall it with the command sudo apt-get install libgl1-mesa-dri and answer yes to any questions you are asked. Kodi started working again immediately.

That's about all I've got right now. I have one or two other things in mind, but those can wait for another post (which really should be dedicated and not a "things I'm doiing right now" entry).


  1. I named him Long Haul, because when I go on travel I'm in it for the long haul. I spent way too long traveling for work to do it any other way. 

Why is it always cynicism when you're right?

$
0
0

While tinkering with a new project last week that involved my old BBS tagline database I rediscovered the tagline that I used as the title of this post. I've been trying to keep up with my pattern of posting at least once every month but it's been hard, what with everything going on. Out of an abundance of caution I ran a post I'd been working on past my lawyer for advice and was informed that I should refrain from publishing it, even with multiple disclaimers because we live in a time that would have given Cardinal Richelieu an erection. I guess we really do live in a Cold War-like era once again. We also seem to live in an era where people are hiding their neighbors because there are masked kidnappers executing military raids in the United States.

Anyway, taglines.

Sometimes for the sake of my mental health I poke around with stuff just to have something constructive to do. In this case I was reading through the documentation for Homer, the personal dashboard I use to organize all my stuff 1. I don't really read the docs for it because it's a static web page that reads a config file on the back end and displays links with nice icons when you load it. Not much to it. What caught my eye was that there is now a feature where you can have a message box at the top off the page that can pull from a REST API, parse the output, and display it on a schedule. There didn 't seem to be anything out there that would do what I wanted, which was pick an entry randomly from a datastore and return it as part of a JSON blob so I took a stab at writing one. My first few attempts didn't come to much so I decided to try my hand at PHP, which is a language that I haven't really don't much with (except for one quick hack a few jobs ago). I decided to approach it the way I would a Python project:

  • Open a text file for input.
  • Read every line in the text file into an array.
  • Close the input file.
  • Pick a random element of the array.
  • Clean up the text a little.
  • Pack the string into a little blob of JSON with the key "tagline".
  • Print the JSON, which sends it to the HTTP client.


Breaking it down like that I was able to look up how to do each task in PHP separately and I had it up and running inside an hour. It's a dumb little hack, not even 30 lines of code, but it was fun to tinker with.

Something I've been kicking around in the back of my head is an article that talks about the state of web browsers in general. These days options are pretty thin on the ground - there's Firefox and all of its forks 2, Chrome and all of its forks 3, and Safari if you use Apple stuff 4. There are, however, some alternatives out there that aren't one of the big three. I've got links stashed away and half-baked plans of putting them through their paces but I haven't had the time or compute cycles to sit down and do it. What I do have is a few months of kicking the tires on Librewolf after Mozilla stuffed LLM support into Firefox, which I trust about as far as I can throw a Buick. 5 Anyway, I ran into two particular problems (well, one annoyance and one problem) that I finally sat down and figured out a while ago. When reorganizing some things in my wiki a few days ago I stumbled across my notes and figured that I should post them because somebody else might find them helpful.

The annoyance was that trying to open something that didn't use HTTPS for its control panel (like most wireless access points and DSL modems) would result in an error window and a "Yes, for pete's sake I'm sure" button the click through. In theory it's a great idea for keeping people from clicking on phishing sites but in practice phishing sites were the very first to take advantage of cheap-to-free and easy to get SSL certificates 6 so it's just a pain in the ass for the rest of it. This is because web browsers in general (and Librewolf in particular) have an HTTPS only setting that needs turned off. To do so:

  • Type about:config into the URL bar.
  • Search for dom.security.https_only_mode
  • Flip that setting to false
  • Try loading the annoying page in question again.


Also along those lines, and it was a big enough pain in the ass that I kept Firefox installed in parallel only for this purpose was getting through the captive portals at coffee shops and hotels. What I usually did was hit a URL that I know supports HTTP (I Can Haz IP?) and that would be enough to trigger the captive portal (and captive portal detection in the browser). However, for some reason Librewolf wasn't having it and it took me a while to collect enough information to troubleshoot it. It comes down to the above "HTTPS only mode" and a few configuration options that I think were changed as part of the fork-and-rebrand part of Firefox's license. So, here are the config changes I had to make in addition to the above HTTPS-only one:

  • Type about:config into the URL bar.
  • Search for captivedetect.canonicalContent
  • Set it to <meta http-equiv="refresh" content="0;url=https://support.mozilla.org/kb/captive-portal"/>
  • Search for network.connectivity-service.enabled
  • Set it to true if it's not already.
  • Search for network.trr.wait-for-portal.
  • Set it to true if it's not already.
  • Search for network.connectivity-service.IPv4.url.
  • Set it to http://detectportal.firefox.com/success.txt?ipv4 if it's not already.
  • Search for network.connectivity-service.IPv6.url.
  • Set it to http://detectportal.firefox.com/success.txt?ipv6 if it's not already.


After making those changes I no longer had any trouble with Librewolf, and it's worked with the last three or four releases of Librewolf.

All of that said and done and said and done again, I leave you with this bit of wisdom:

This message is for one reason alone: To tell the strongest among you - those with the greatest power protect those without. That's my message to the world.

--Professor Charles Xavier, X-Men: Apocalypse


  1. I keep forgetting to write about Homer. It's extremely helpful software, and about as lightweight as any recently written web stuff can be these days. 

  2. All of which basically have the same codebase, just different branding and user.js files which may or may not be helpful or useful. 

  3. Ditto. 

  4. I don't know if you can call Webkit it's own browser or not. It's an engine that can be used to build a web browser. 

  5. I know, I said "not a fork of one of the big three." I need a daily driver web browser than I can trust somewhat more than the big three and doesn't have nerfed adblocking support. I know that Mozilla said they have no plans to remove Manifest v2 support from Firefox, but much of the Mozilla Foundation's funding comes from Google and a half billion US dollars never, ever comes without strings attached. It is a truism that the best way to control the opposition is to lead it yourself

  6. Just like spammers were the very first to jump on all of the DNS-related anti-spamming measures to ensure that their garbage got through. They were set up and running weeks before most companies even got their change control requests approved. 

How about another suppository of wisdom to round the year out?

Laid off again.

$
0
0

Welp. Here we go again.

If you haven't been paying attention to social media lately (and for the sake of your mental health, I hope you haven't - ye gods, the world...) I got laid off in the last week of October without warning. A not entirely unprecedented early morning meeting rapidly turned into being told that my position was being eliminated, effective immediately. This was immediately followed by my work laptop and phone factory resetting themselves, while I was in the middle of typing a "so long and thanks for all the fish" message to my now-ex-cow-orkers. 1 So, I'm back on the job market once again with all that entails. Since that day I've been updating my resume' and looking for a new job in all the usual places. Lots of pulling wires, too. I've no idea how long it's going to take to find a new job, in part because this is the beginning of the holiday season and just about everybody's wrapping stuff up for the year.

And, of course, because the holidays are beginning that means that there's a whole bucket of anxiety and worry that comes along with it. Most of all how it kicked our health insurance into a cocked hat. COBRA is a clusterfuck of bad timing, waiting on reimbursements, waiting on paperwork to go through, and the odd panic attack when I go to pick up a prescription and the price is astronomical. 2 We can handle it for the foreseeable future, we've got savings and backup plans in place but that doesn't mean that it's not stressful. I've had a couple of things that I've wanted to write about for the last few weeks, but... it's just not there. Writing just this much text has taken me the better part of four hours, and it's just two paragraphs. I've got stuff about playing around with Wayland on Windbringer, something from a discussion I had a while back that I'm trying to turn into a somewhat intelligent post, some stuff about using Cryptpad for the last few months, even some photo sets from a couple of concerts this year but they're all stuck somewhere between anxiety and shell shock. And the holidays are coming up, with all of the monetary costs those entail. 3

I'll figure it out. It sucks but I'll figure it out.


  1. Incidentally, if you have to deal with Wageworks at your day job, there is no way for HR to change the phone number tied to your account. In my case, it was tied to my now-bricked work phone and even upper management isn't able to change it for some reason. 

  2. I live in the United States. Something is very wrong if healthcare is affordable here. 

  3. I can't leave my niece and nephews in the lurch, come on. I worked hard to become the avuncular weird uncle. 

Neologism: Beginner's Lock

$
0
0

Beginner's lock: When you get a new lock for your collection and pick it open a couple of times without a whole lot of trouble. Then you put the lock down for a day or so and subsequently have absolutely no luck getting it open again for weeks or months.

ref., beginner's luck

Neologism: Snowhawk

$
0
0

Snowhawk (n): The ridge of snow in the middle of the roof of the vehicle that the driver couldn't reach and is driving around with.

Source: Nauga Clown


Lost in the drift.

$
0
0

Windbringer's internal clock tells me that, as I write this the calendar date is 27 December 2025. To be honest, I kind of lost track of the date just before Christmas of this year. Everything started blurring together around that time, in part because it had been raining so much in California and in part because my schedule - my usual sense of how things are supposed to happen - no longer exists. I'm still searching for a new job and while I might have one or two leads I have no details. Plus, hanging one's hat on a single option is never a good idea because, if it winds up not happening it always kicks you that much harder. So I'm trying to skim just a little power off of the top and let it move me along, so I can save my strength to course correct as necessary. It's more efficient to steer than it is to propel.

A couple of weeks back somebody broke into our storage unit. We got a phone call from the manager early in the morning and, after getting out there to take a look were reminded that locks are not the weak point of any secure structure; the walls are. Our crates had been thrown around, some had been opened and gone through, and we're still in the process of taking inventory. Some things have been taken but we're not completely certain of the list yet. The rain out here (the high winds that came with them, really) have made driving out here tricky so getting to and from the storage facility has been somewhat more difficult than usual. I think I've said about as much as I can before everything's settled, so I should probably stop here.

I'm still looking for a job out here, which may as well be a full time job in and of itself. If you count unemployment (the first time I've ever qualified for it in my career) it may as well be. I'm obligated to apply for a few jobs every week and, in California at least, I have to document what I applied for, where, and contact information every week or two so they know that I'm not just sitting on my ass watching Netflix. 1 A few weeks back I had to go to a mandatory review of my progress (thankfully done as a video call 2) that involved looking at the last dozen or so jobs I'd applied for, looking at my resume, and having me pick a mandatory class that I have to attend somewhen around the time this post goes live. Toward that end I copied all of the text out of the Office document that I've been using for the last fifteen years into Markdown files, checked them into a Git repository on my laptop, and using mdBook to render them into a PDF file (with a little CSS to make them less book-like and more like a resume. This has had the side effect of making it easier to maintain multiple versions of my resume which are optimized for different kinds of jobs 3 because I can cut a Git branch for IT work (let's say), switch to it, edit the files, and then generate a PDF out of it. Switch to another branch, rinse, repeat until I have a directory of different variants of resume. 4

I'm trying not to worry. As I write this, it's the holidays so I'm trying to take it as easy as I can.

Which, paradoxically, reminds me of something else. Pretty much all year in 2025.ev I'd been in the process of getting my mandible rebuilt again. I'd finally gotten the implant installed in the bone graft, which was capped with what amounts to a little hex screw to keep the inside of the implant clean and hold the hole in my gum open. Lyssa and I had to fly to the east coast for Thanksgiving and, while out for dinner with Hasufin and Johanna it came out. Needless to say, my hearts were in my mouth when this happened. I somewhat sheepishly spat the implant out, carefully wrapped it a paper napkin, and tucked it into a carryout sauce container for safekeeping. Upon arriving back at home my dentist was able to reinstall it, and as an encore the replacement tooth had arrived so he bolted it into place using what amounts to a tiny torque wrench and put a tiny filling on top of the bolt head. One less thing to worry aboupt, or so I thought,

Two days later the matching molar on the opposite side of my jaw started hurting, and an x-ray confirmed a) the presence of an infection and b) the need for a root canal. Cue a week of antibiotics (which ruined my ability to digest anything) and painkillers. Much to my surprise, when I showed up for the root canal they knocked me out with nitrous (which I'd never had for dental work before) and I slept through the whole thing. As I write this I have a temporary filling in that molar and an appointment to finish the job in a day or two. So it goes.


  1. I'm sitting on my ass, applying for jobs and listening to Netflix, thank you very much. 

  2. I'm genuinely surprised that Microsoft Teams did not carp about me running Librewolf on a Linux box. 

  3. Conventional wisdom is that you should tailor your resume for the kind of job you're applying for. I'm pretty sure that's never been good advice and it certainly doesn't help these days (what with resume analysis being keyword-based and not experience-based) but it does help manage length. 

  4. I haven't tried anything like prompt injection in my resume because, these days at least, it would surprise me not a bit if submissions that included prompt injections were immediately canned. Folks who are opposed to the use of LLMs on principle aside, many folks don't like it when their own tricks are used against them. 

What to do next?

$
0
0

I've been asking myself that very question, every morning, for the last couple of weeks. The job hunt continues as well as before, which is to say not well at all. The only really noteworthy things that have happened were a couple of recruiters thinking that they were being cute by saying things that are highly inadvisable under any circumstances 1, and one "interview offer" (not even a job offer) for a security position which it would seem was a bait-and-switch to get me to sign up for yet another job hunting service that is a black hole for job applications. The stress and worry about such things are why I've not been writing very much lately. In point of fact, I have a couple of pending posts that I have to edit one more time before I can schedule them, but I just can't bring myself to do it.

The other day (as I write this) while getting ready to put the finishing touches on something, I was hit by a particularly distressing bit of news from Lyssa: Her debit card had been locked out because some jagoff had made just shy of $1500us worth of purchases online from the United Kingdom. Even at the best of times $1500us is not an amount of money to sneeze at, so my hearts leaped into my throat upon hearing this. At least the card has been locked out and a replacement is on the way, but the way things are set up you can't dispute pending transactions, only cleared transactions. Which means that every day for the next few days, we have to lose a few hundred dollars so that I can go back and file another report on those transactions. Fucking whee. 2

While attempting to care for my mental health these days I've been trying to work on at least one side project a week so that other parts of my brain can do things for a change. Nothing for a portfolio or to get the attention of recruiters, just stuff that I enjoy. Last week I decided to do more shortwave listening to switch up what I listen to when job hunting. I have no shortage of RTL-SDR radios on the shelf in my office 3 and while I'm not a very good ham I do like to tinker. So I did a little research and figured out that a magloop antenna would be a good project. They're kind of big but flat, so if you want to store one behind a door (let's say) they're ideal. Additionally, they're quite resilient to interference (of the sort one finds in an urban area (which is generated by... well... everything, like the electrical noise coming off of a street light)) so it's possible to get a good signal when you otherwise might not. I pulled together the parts to build a single turn magnetic loop and a couple of components from my stash of parts and spent the other day tuning it. I'll put it through its paces later this week (because, on the west coast, you pick up many more shortwave signals after dark than you do in the middle of the afternoon).

A few weeks before that I sat down to do something that I'd wanted to do for years but hadn't gotten around to, which was sit down and code myself a ciphersaber. Many years ago it looked like folks might lose the options for privacy because the US government was looking at ways to restrict access to string cryptography unless you were a government entity or one of their contractors. The Cypherpunks, a loosely organized group of cryptographers and hackers of various sorts, took this personally and set about doing something about this. 4 One in particular, Arnold Reinhold, announced a challenge: Implement a cryptographic tool of your very own, by yourself, from memory in whatever language you want, and then prove that it works by decrypting a file and viewing its contents. He called this the Ciphersaber. 5

The Ciphersaber is an implementation of the RC4 cryptosystem, which was reverse engineered from RSA's implementation and posted to the cypherpunks mailing list on 9 September 1994. These days RC4 is something nobody should use because it's been thoroughly analyzed and a number of attacks were found, leading to it being officially declared "Oh, hell no!" in RFC 7465 about eleven years back (even Microsoft is trying to get rid of it, which should tell you something). However, that does not mean that RC4 is not interesting on its own, least of all because it's possible to carry the entire algorithm in your head. It really is that simple; you can write it from scratch using just the information on the Wikipedia page, which is how I did it. I wrote it in Python using only everything built into the language, no third party modules. It's remarkably tiny, also: 286 lines of code in total, 121 lines of Python if you don't count the comments or whitespace. 6 After trying it against the test files on the gurus.com page I was able to successfully decrypt cknight.cs1 and extract the image file.

It might seem kind of strange, but I'm quite proud of this achievement.


  1. "If you don't come work for us, you'll be next in the ICE raids!" 

  2. The list of people who need LARTed, like the contents of the X-Clacks-Overhead header, never gets any shorter. 

  3. Hell, I keep one in my field kit because they're both tiny and cheap, as well as extremely handy. 

  4. "Real cypherpunks write code." 

  5. The comparison to a Jedi's lightsaber was deliberate, because Jedi were required to build their own from scratch. 

  6. grep -v '^$' ciphersaber.py | grep -v '^#' | grep -v '^\s*#' | wc -l 



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