Fun

Quarterly Goals


My goal for the next season is “catch up on older shows while hoping there’s more to watch than just Frieren”. Maybe I’ll break down and try to watch the first season of Torture Princess, since the second season of that is airing, and it has at least one thing going for it.

Kicking it old-school

One of the windows at my house has shifted so much in its frame that it can’t make contact with the alarm sensor any more. While the alarm guy was checking things out for the door replacement next week, I asked him about turning on a bypass for that window. I’d managed to do it when I first moved in, but hadn’t kept links to the specific docs page I’d found for the unit.

He didn’t know either. He called a technician who was nearby, and the method he knew didn’t work. So he brought in his laptop, pulled out a console cable, logged into it directly, and set the bypass.

That didn’t work. So he called the senior tech, and she walked him through the 25-year-old GUI to the real manual bypass button.

That worked once, and then it re-enabled itself, so he called her back and she walked him through removing it from the set of active sensors. That worked.

The next-level hack would have been completely deleting that sensor from the config, but then they’d have had to redo the config when the window gets replaced (Spring, unless something else competes for my house budget).

While he was there, he also did something that another tech skipped three years ago when I moved in: configured the remote access so they can fix things like that directly from the office. It was originally set up to use a landline to call in alerts, but I don’t have one of those, so it now has a cellular modem that’s always online. It worked for calling in alarms, but they didn’t have the serial number and access code recorded, so they couldn’t connect to it.

A stroon by any other name…

Akebono Sangyo makes a popular line of clear plastic coffee servers whose Amazon listings announce they’re made of “stroon”. Not to be confused with the musical artist Stroon or a combination strainer/spoon, this is the romanized trade name ストロン, short for ストロントライタン = “Strong Tritan”, which has started showing up a lot recently in coffee gear. Wikipedia and “helpful” AIs that scrape it insist Tritan’s not safe for hot beverages, while the manufacturer and dozens of coffee companies say it’s both dishwasher and microwave-safe, and can handle boiling water as well as being tossed off a cliff.

Nice product, totally fake pictures

When my sister was in town a while back, we took our parents out for dinner at a nice Asian Fusian restaurant, and they served our bottle of saké in one of these:

It’s a nice-looking gadget for chilling drinks without diluting them, but when you look at the “real-life” pictures in the listing, every single one of them is a clumsy cut-and-paste job that doesn’t even deserve to be called “Photoshopping”.

Another MacOS Preview quirk…

This one isn’t new, but it’s been a low-key annoyance for years. If you tell it to open a bunch of files of the same type, say open *.png, you will often get two windows, with no obvious reason some of them ended up in the second one. Close the app, type the same command again, and all the images will load in one window so you can navigate between them. It doesn’t matter how many things you’re opening; could be 2, could be 200.

The app also sorts the images by the order they appear on the command line, and when it does the two-window thing, there’s not a consistent pattern to which ones end up where.

(grown-up Misty is unrelated, but the NPC gals in the new Pokemon game are getting a lot of attention for their sex appeal…)

Weekend roundup


I’ve got the home-security guy showing up Monday, an allergy-doc appointment on Thursday, two large book shelves to empty before next Monday when they start installing the new doors, a birthday party next Tuesday, and a whole house to clean before I start cooking for Thanksgiving. No pressure.

(the home-security guy is scoping out “how to make sure the sensors still work after they replace all the exterior doors and frames”)

Shared monitor nuisance

So far, the only downside of having my 4K vertical monitor attached to two Macs at the same time is that the Thunderbolt connection to my laptop doesn’t always notice when I turn the monitor on. I’d blame Apple’s QA department, but they haven’t had one in years.

Refined Waifus

I’m using my SwarmUI API script to re-gen my early 4K waifu wallpapers, and so far every pic is coming out obviously different but with better fingers and toes. The only real failures are ones where it decided she needed a larger head.

On a random side note, I’m glad I improved my image-posting workflow with deathmatch, because I recently noticed that Apple broke Preview.app more than usual. It used to be that dragging a thumbnail image into a Terminal window copied the full path followed by a backslash, while dragging the tiny icon out of the title bar copied the full path followed by a space. The tiny icon still works, but dragging the thumbnail now produces two copies of the path, the first one followed by a newline, the second by a space; this is spectacularly useless.

Grabbing a bunch of pics from a directory full of GenAI or traditional cheesecake is a lot easier since I added the “export current filtered view” function to deathmatch.

Cold comfort

I decided to try out James Hoffmann’s recent cold-brew coffee technique. It’s not like his “Ultimate X-brew Method” videos, which tend to draw out the tastes-nothing-like-coffee flavors that the modern specialty coffee enthusiast craves, and he even concluded that it produces better results with cheaper, darker roasts, but as techniques go it’s trivial, with only one trick: adding a few drops of beer fining agent to produce a cleaner brew without a filter.

I didn’t have any of that on-hand, and haven’t made it over to the homebrew store that’s about 1.5 miles away, but he insisted that the grounds would settle out pretty well even without that, and you could pour carefully. Which was mostly true, except for the layer on the top that I had to scoop off. I ended up pouring it through a V60 filter anyway; next time I’ll try the fining agent.

Of course, “next time” might be “Spring”, since he posted the video just in time for cold weather…

What coffee did I use?

Marisol’s Café, purchased from Marisol herself when I was at St. George’s Market in Belfast. Yes, the beans spent a year in the freezer. Still darn tasty. I don’t know how she brewed the samples she was handing out that day, but I don’t usually like black coffee, and it was so good I bought two bags.

Appreciating Ina

Ina Enohara is not the prettiest model working in Japan right now, but she’s one of the most appealing, because there’s so much personality coming through when her face lights up. Which happens a lot more often than with most of the competition.

It doesn’t hurt that she has giant soft natural breasts that match her body, but I would never have bothered learning her name if it weren’t for her smile.

(site obviously NSFW, and the usual shields-up warning applies)

Derp Thoughts


There are many effective ways to write technical documentation. ImageMagick uses none of them. Seriously, does anyone ever do anything but kitbash commands out of the examples?

Diátaxis sounds pretentious, but any structure would be an improvement over this diarrhetic infodump.

(girls are mostly unrelated, except that I was doing some tinkering with my posting script to auto-calculate the scaled resolution for the IMG tag; Qwen can’t count, so I had to request 11 girls to have a chance at getting 9 members in Girls’ GenAIration (classical reference))

Oh, yeah, that Amazon package?

It never moved again, but after five full days sitting at a depot, Amazon claimed it was being returned by the delivery company (which was also Amazon…) and processed my refund. The fact that it got scanned back in at the depot after being out for delivery suggests damage. So, in the end, the two fragile glass packages arrived just fine, but the hard-to-damage soft silicone item was destroyed.

Ordering another one promised free next-day delivery…

Playin’ with the Queen of Forks


Meanwhile, on The Island Of Miss Fit Toys

Qwen seems to default to this style of cartoon art unless you push it hard in another direction; fortunately, I like it for just goofing around. I left the layout open, but specifically requested each gal’s action and the tropical gym setting, as well as requesting different hair styles and body shapes. Sadly, I also had to explicitly request that they all had two ears, but I could not come up with an incantation that put all four in sharp focus; the poor gal on the treadmill was always a bit fuzzy.

For more fun, at one point I asked for them to be super-cute, and Qwen put Superman emblems on their sports bras.

Good luck, Have Fun, Don’t Die

Sam Rockwell is versatile enough to pull this off.

SwarmUI API script…

…to re-render an image with refining and upscaling turned on, now in my catchall Github repo as refinewall.sh, along with a script to preserve SwarmUI’s custom metadata when converting from PNG to JPG, with the straightforward name swarmui-png2jpg.sh. For the refiner script, I made use of jo to make the JSON-handling cleaner. I also decided to use exiftool to insert the original filename as a DocumentName tag to keep track of the source image file.

(all three pics use the same basic prompt, requesting sexy pixie gals in a slightly-cartoonish illustration; I wish I could get each specific variation on demand)

Slip Slidin' Away


We were supposed to get a light dusting of snow on Monday, starting in the late morning. Leaving my parents’ house Sunday night, I walked out into light freezing rain, just enough to make me expect a light freeze.

Earlier in the day, my brother had asked me if I could drive my niece to school in the morning. Not having any meetings until 9:30, I said sure.

I woke up to find over an inch of snow on the ground and more still coming down, but my street was still clear. By the time I was getting ready to leave to pick her up, I was checking for school closures. Many schools were closed or had two-hour delays, but not hers, so off I went, giving myself plenty of time to get there.

No trouble on the side streets, but as we were approaching a major messed-up intersection to make a double left turn, I felt the car start sliding on a sheet of ice. 30 years in California had dulled my winter-driving skills, but I still knew what to do, and guided the car to the curb without hitting anyone or going into a ditch (unlike at least half-a-dozen other people we’d passed since leaving my brother’s house). Then I slowly got the car moving again and got back into the lane. It gave my niece a little story for her friends at school.

The real fun was that it was still snowing when I got home half an hour later (rush-hour traffic was grindingly slow in the half-frozen slush), and I had to try to make it up my steep unshoveled 75-foot-long driveway. Surprisingly, I succeeded.

By late afternoon the sun and wind had completely cleared and dried the streets and driveways, but there’s still about an inch of the white stuff covering the yard. That will all go away as it goes back up to 50°F by Wednesday afternoon.

Santa’s Little Helpers

Keeping with the tiny-gals-in-snow theme, I asked a few elves to make me a scale model of a caffeine molecule. They weren’t quite clear on the concept:

I even went widescreen to give them more room to make a complex molecule. It didn’t help:

Then I made the mistake of asking some dwarves to provide basic chemistry lessons:

(I was tinkering up an entry for the SwarmUI Discord’s daily theme contest; I started with the gals, but decided to go fully SFW and use the dwarves instead)

Meanwhile, in Amazon Logistics

They’re still pretending that the item that went back to the depot on Friday afternoon and hasn’t moved since will be delivered by tomorrow. So they can hang onto my money for another day before starting to process a refund.

Erased!

I don’t recognize young actress Maya Imamori, and after she was caught taking a drink four months before turning 20, neither will anyone else. I can’t decide which I’d prefer: Japan cutting back on the way it polices entertainer morality and makes performers grovel, or Hollywood adopting the practice.

More precisely, Hollywood introducing the concept of shame. They already have shunning, just for the wrong reasons.

“Enough with the virgins already!”

I never thought it would happen to me, but there it was: I was sick of virgins.

Let me explain. There’s this thing about fantasy fiction, one of those whatayacallit “tropes’, where a kingdom is being ravaged by a dragon (livestock eaten, crops burned, you know the drill) and somebody gets the bright idea that the solution is to find a reasonably-healthy village girl who hasn’t played hide-the-sausage with the butcher’s son, put her in a flowing white dress, and chain her up somewhere she’ll be easy to spot when the dragon makes his next flash-fried-mutton run.

Spoiler alert: it doesn’t work. Why not? Let’s assume for the sake of argument that you’ve got a dragon problem. Every few days it launches itself into the air, flies around your villages looking for tasty livestock, swoops down, grabs a few, and heads home for dinner. Don’t get fussy about the ratio of calories burned to calories earned for the moment. It’s a dragon; there’s magic involved, okay?

Given that a decent-sized dragon can carry off an adult male sheep in each hand, er “taloned forepaw”, that’s what, 500 pounds of meat, fat, and bone, at least twice a week? Average weight of a virgin sacrifice? 80 pounds, soaking wet. This is because unless she’s seriously sickly or ugly, village girls stop being virgins around the age of twelve. Thirteen if the local boys are a little slow on the draw.

Even if you assumed that virgins were the tastiest morsels around, they’d barely be a light snack for a creature that can eat two sheep and be hungry again three days later. And if they were that tasty, he’d be back for another one the next day, and it’s not like they grow on trees.

So what are we, and yes I mean “we”, supposed to do with all those virgins? You can’t just leave them there to die from exposure; those dresses wouldn’t stand up to a stiff breeze, and it gets cold in the mountains at night. And let’s be honest, if somebody wanted them back, they’d be rescued; people don’t sacrifice sweet-tempered girls with prospects, they get rid of the annoying ones who ask too many questions and refuse to fit in. Y’know, the clever girls.

Anyway, that’s how I started a school for witches.

(file under annoying that I had to specify that the dragon had two wings, one on each side; Qwen has a habit of just not drawing limbs on the off side, triggering variation renders when I like a pic but can’t plausibly believe that the second arm/leg/wing is hidden behind the body. Also, there were size issues; it really wants to fit the entire dragon body into the frame while rendering the girls at a decent size, so in about two-thirds of my attempts, he was small enough that a little girl would make a filling meal)

Snow day?


Bit early for it, but it’s supposed to drop well below freezing tonight, and then snow for a while on Monday.

(Update: I thought they'd make a nice Christmas card...)

Soft logistics

I guess it’ll be a few more days before I find out how well Amazon packaged the squishably-soft silicone item compared to the robust boxing of the two glass items. Because it went back to the local depot Friday afternoon, hasn’t been updated since, and Amazon added their automatic five-day extension before I can even try to get my money back and order another one.

(if it does show up, there’s no guarantee it’s the same one that went out the first time; they’ve reused tracking numbers before)

Resting Waifus

I wanted to refine and upscale the 162 retro-sf waifu wallpapers I made a while back, but I definitely did not want to drag each image into the SwarmUI window, click “reuse parameters”, click “direct apply” on the preset containing the new settings, and then click “Generate”. That’s how I’ve been doing it for small sets, but it’s tedious and annoying, so I wanted to script it: extract the original parameters from the PNG as JSON, add a few new fields, then send a REST call to the SwarmUI server and download the results.

I knocked it together in Bash using exiftool, jq, and curl, and it worked great… unless the image was made with a LoRA. Which almost all of my wall-waifus are. I banged my head against the keyboard for a while before giving up and posting a stripped-down repeat-by to the Discord. Within half an hour, the developer had responded: the JSON the app stores in an image’s metadata is not the format used by the REST API; you can’t just round-trip it. (he acknowledges this is a should-really-fix-sometime issue)

Specifically, fields that are returned as arrays must be sent as comma-separated strings:

# extracted metadata
...
"loras": [
  "Qwen/Pin-up_Girl_-_CE_-_V01e_-_Qwen",
  "Qwen/Qwen_Sex-_Nudes-_Other_Fun_Stuff_-SNOFS-_-_v1-1"
],
"loraweights": [
  "1",
  "0.5"
],

# /API/GenerateText2Image
...
"loras": "Qwen/Pin-up_Girl_-_CE_-_V01e_-_Qwen,Qwen/Qwen_Sex-_Nudes-_Other_Fun_Stuff_-SNOFS-_-_v1-1",
"loraweights": "1,0.5",

Fortunately, jq can do this for you as a one-liner:

JSON=$(jq -c '.loras |= join(",")' <<<"$JSON")
JSON=$(jq -c '.loraweights |= join(",")' <<<"$JSON")

This is not the only underdocumented aspect of the REST API; there are very few examples, none of which give comprehensive lists of valid parameters or complete output. If the anime drought continues, I may pull down a copy of the SwarmUI repo and send patches for the API docs.

I’ll add the script to my Github repo once I finish tinkering with options. I’ve already added an option for the variation-related params, since I’ve had to use that feature a lot when an almost perfect pic is ruined by bizarre anatomical malfunctions. I think I also want to try re-rendering at a larger size instead of scaling as much (1080x1920 render + 2x upscale instead of 576x1024 + 3.75x), in the hopes of reducing finger and toe damage. Newer models can cope with the higher initial resolution. (additional options will wait until I’ve converted it to Python; for a quick hack, Bash is fine, but it’s clunky at handling JSON and REST calls)

X marks the territory


X: The Algorithm

It’s been pretty bad in the past, filling my “for you” feed with assorted scams, engagement farmers, and hate-filled Leftist activists, but at the moment, it seems to be pretty well centered around the type of things posted by the 24 accounts I follow:

  • 6 Japanese models/actresses
  • 4 artists (2 Japanese)
  • 4 novelists (1 who fled to Bluesky but never deleted his account)
  • 2 contrarians
  • 2 friends
  • 2 anime series
  • 2 waifu-posters (long idle)
  • 1 cat-poster
  • 1 app

Basically I get anime pics, RPG pics, cat pics, random snark and memes, and Japanese women in bikinis. This I can scroll for a while.

Truth in advertising, unfortunately

I was throwing a bunch of leftovers into a big pot of slumgullion, and decided to add a can of chili. The label read Stout Beef Chili, and despite it being waaaaay down the list of ingredients, the smell of beer was overwhelming. It cooked out somewhat, but it’s still pretty strong when you open the container. Enough that I can’t imagine using the other can that I bought, and will likely pitch it.

This is the quality of ‘thinking’ that AI provides…

(actual country of origin for “Ackers Science” and “Ackers BORO3.3” products? China, of course)

MasterCook, Cooked

After months of relentlessly pushing their new GenAI-enhanced version and their cloud subscription service, the current owner of the venerable MasterCook recipe-management software has sold the rights to some entity called Cook’n, which appears to be junking the software and only bought the customer list. They’re honoring subscriptions, but charging $10 to migrate you to their cloud.

Is their product comparable? No idea; I’ve seen so many products advertise MasterCook compatibility without actually implementing the full feature set that I gave up years ago.

Break glass in case of...


Fulfillment Roulette

I ordered three things from Amazon. One is made of squishably soft silicone, the other two are made from borosilicate glass. Each one has its own tracking number, suggesting they did not combine them into one box, despite me checking the “take your time” button on shipping.

Now, which one will have the sturdiest package when it arrives tonight?

(I didn’t ask for Ricotta to serve dubious concoctions in champagne flutes, but I guess I didn’t not ask for it, either; this is what happens when you fall back to a model with less-capable parsing because it has the anime LoRAs you need for specific characters)

🎶 “One of these things is not like the other…” 🎶

“Need a clue, take a clue,
 got a clue, leave a clue”