Thursday, March 09, 2017

Sockmonster Mk. 4

Autumn is a strange little cat.  There was no distinction in her little head between fun-exercise playing and life-or-death fighting when we first got her.  She's much less rough around the edges now, but when she's feisty, there's a bloodlust and a need for savage close-quarters combat I've not seen in a domestic cat before.  Batting a little ribbon or feather does not cut it in most cases.

In the heat of mock-battle, there's hissing and growling and grabbing and kicking and yelling.  Claws and fangs swing and chomp without restraint.  With my childhood cat, I did this kind of thing by hand, and got a little scratched up.  This one plays ROUGH - bare handed play might end in me bleeding out.  (I have seriously considered buying a falconry glove, but it would need a pretty long sleeve.)


By the by, it is remarkably difficult to A) record video of a cat while playing with her, and B) convince a cat to do even a very usual thing on-command.  This is the best I could get without waiting for her to decide on her own that it was feisty time.

All this brings me to my latest haphazardly-crafted object: Sockmonster Mk. 4!

This is the entire Sockmonster family line, or what's left of it.  The original Sockmonster is actually inside of Mk. 2; its skin was a much flimsier and less interestingly-textured sock, and it was the quickest to spill its (mostly plastic-bag) innards.  All but the latest incarnations have had gashes patched up with the handyman's secret weapon, duct tape.

Mk. 2 subsumed the original and added an inner skin of brown paper for extra crunchiness.  Over time the stuffing got all shoved into the end, and indeed began to get ripped out like viscera.

Mk. 3 introduced a semi-rigid spine, a nice thin chunk of plastic that would bend a bit and spring back.  I also attempted to build it with segregated internal stuffing compartments, Titanic-style, to keep the stuffing evenly distributed.  But as you may be able to tell, the mid-point is a very popular kicking target, so the spine broke and the center stuffing compartment appears to have hernia'd out.

For the fourth one, the spine is a towel rolled up as tight as I could get it.  No plastic to wear out and snap.  The stuffing is in one big tube around the spine, and of the whole thing is wrapped in a couple layers of claw-armor burlap and chompy-thick felt.

Originally, I had both ends sewn up, but the thickness and firmness of the thing made it hard to grip one-handed.  Luckily, one end was pretty weak since this whole thing was an exercise in making it up as I go, and Autumn quickly tore it open again for me.  A little stuffing out of that end, squeeze up the sides a bit and boom, handle.  Much better.  :^)  It's a collaborative process, as it turns out.

So, we'll see how this works.  As one might expect, if one were familiar with cats, now that some effort has gone into constructing a more robust Sockmonster, kitty's aforementioned interest in brutal hand-to-hand combat has begun to sharply drop off.  These days she's all about running and being chased.

I had concentrated a lot on physical points of failure, but as the old saying goes, there's

Monday, March 06, 2017

How to Fix: Maddening Subpixel Font Rendering

This is mostly a note to my future self so that next time I set up a Linux machine, I don't have to re-invent this particular wheel.

Most computers nowadays, by default, display text using sub-pixel rendering.  Microsoft calls their implementation "ClearType", and I'm sure Apple has some similarly innocent-sounding name for it.  Without getting into the technical details, it's an optical illusion that, apparently, for most of the population, makes text nice and clear to read.  For me, it looks smeary, and makes my eyes continuously strain and toil to make everything all right.  They fail, and I get a mighty headache if I keep looking for too long.

Naturally, on my own computers I turn this noise the hell off.  But for a while now, there has been one niggling little hiccup where the first QT program I load (or maybe it's KDE specific, I really don't know.  All GTK and other programs are fine.) would fail to honor my very explicit settings and fall back on the default behaviour of stabbing me in the corneas.  The workaround was quick and easy, and generally if I'm at the computer I'm busy trying to do something, so I let the problem stagnate.

But in upgrading my laptop recently, I had one more little burst of attempting to figure this nonsense out, and figure it I finally did.


Xft.autohint: 0
Xft.lcdfilter: lcdnone
Xft.hintstyle: hintnone
Xft.hinting: 0
Xft.antialias: 1
Xft.rgba: none

I don't even know which line(s) make the difference.  I just found a handful of Xft settings to try and lo, once these crunch through xrdb when the session starts, all is well.  These can go in a global Xresources file too of course.

I hope this helps somebody else, and I'm pretty sure it will at least help future me.

keywords for searching:
disable subpixel antialiasing
prevent sub-pixel anti-aliasing
qt kde first launch ignore freetype settings
why the crap do some programs use horrible blearytype font rendering
To others whose eyes are allergic to this crap but are also stuck on Windows, be warned: your Windows lies to you.  If you ask it to turn off ClearType, it will claim that it has done so and carry on smearing your text with eyeball-shredding colors.  You have to go through some crazy multi-step "Which of these looks better to you?" quiz to truly turn it off, and sometimes every one of the options presented will be using subpixel rendering.  So, as always, good luck Windows folks.

Tuesday, February 28, 2017

Doubles Storytelling

I have made a toy which two people, near or far, can use to tell stories.

I was going to write about it here, but I wrote about it within itself instead:

Thursday, January 26, 2017

Gremlins and Chaos and Being

The gremlins in my head, on a quiet day, ask only that I wash my hands a bit more than an average person would.  On a raucous day, they demand that I create something and share it.  They don't ask nicely.  It doesn't matter what I come up with, whether it's any good, or with whom I share it.  This occasionally causes some embarrassment, but one learns to deal with that.  If the gremlins are ignored, they begin wreaking havoc and this fun, grumpy person becomes an un-fun grumpy person.

A side-effect of paying any attention to the world around me is that when the world goes mad, I go a bit mad with it.  Anxiety and dread leak right inside and stir the gremlins.  "Pain is good for art" and all that.  I'm a very fortunate and privileged person, and not what most would call talented, so my use of the words "pain" and "art" is a bit of a stretch.  But that's fine.  In any case, my brain gremlins and I have been on edge lately.

The gremlins are soothed by simple seeds growing into complex patterns.

I played around with randomized, low-fidelity pixel art.  8x8 noise of a single random color, mirrored for symmetry.  The human brain (well, mine anyway) will turn almost any such shape into something recognizable.  A penguin with antlers.  An armored soldier.  A dog walking upright.  A happy toad or a skull with pigtails.  Once I got a bunch of these drawing on screen, it seemed like asking the simple question "who are you?" might be interesting.

The gremlins like music; during worrisome times, songs get stuck in my head far more easily than usual.  Recently my noggin was cycling this Cat Stevens song, for reasons I won't try to understand.

The bit that kept rolling around in my brain was "if you want to be me, be me".  Might it be interesting to have some kind of interactive mechanic that boils down to "be me" when you meet someone?  Well, I already had plenty of random pixel people to meet.

You can see I've got some other stuff going on there too.  Random names, offspring from mathematically averaging the pixel characters.  I also threw something together to randomly build up a map.  And some random special rooms for whatever weird tools and functions I was playing with. And gave each character random traits that determine what and how they can see, where they can go, how they get noticed.

Why I stuck with an Atari aesthetic (including directions and one action button) I do not know.  Why I wrote the code almost entirely on my phone during insomnia hours rather than from the comfort of a proper computer, I do not know.  Why I named it "RPG1" and retrofitted a bunch of acronyms in its manual, I do not know.

What I do know is that from the chaos, some interesting effects cropped up.  As a moose I traded feet with a bunch of bananas, and suddenly I could go places I could not reach before.  I was a butterfly who talked with and became a spring-propelled robot, after which I could not see the butterfly anymore.  As a thief, I met a two-headed bird and had a screen full of three-headed turtle babies.

Play online:

It's a bit of a hot mess, but there.  Happy, gremlins?  No?  You already have some more stupid little projects lined up?  Hm.  Gonna be an interesting few years to be me.

Friday, January 20, 2017

Inaugur- (wretch)

Here it is.  The new age, where nothing makes sense and the more asinine it sounds, the more likely it is to be happening.  Good, evil, right, wrong, fact, fiction, none of it means anything.  Things just are.  Because loud, proud ignorance says so.

It's an interesting time to be alive.  I've never been bored in my life, but I would sure love to try it.  As it is, though, I'm going to be angry and frustrated and terrified and indignant for some time.  I'd say something like "four years", but let's not assume time or space or anything else are comprehensible phenomena anymore.  Or that dissidents like myself won't be jailed or hanged by then.  Or that all life on Earth won't have simply been obliterated by nuclear weapons.  Nothing's given, things just are.  Because small, spiteful vanity says so.

So far, the worst expectations I could muster have only ended up demonstrating the limits of my own imagination.  But my dense optimism means everybody here has one more ally -- I will stay and fight.  The temptation to abandon this poisoned ship and its lunatic captain will be overwhelming, but we have to stand strong.  Because courage and right and decency say so.  Those things don't exist in this age, true enough, so it falls to each of us to create them.

Dissent is patriotic.  We shall overcome.  [Inspirational quip #3 not found.]

Wednesday, November 09, 2016

Monday, November 07, 2016

Let's Get This Over With

I know these things happen every four years and therefore cannot last any longer than that, but it feels like I can no longer remember a time when I wasn't worrying that a superbly-qualified world leader might lose the presidency to a prejudiced reality show pseudo-celebrity.

In the primaries I voted for Bernie, because I think we desperately need some socialist ideas and tools to pull us back from the brink of commercialist self- (and planetary-) destruction.  My wife voted for Hillary, and we were both glad to be supporting both candidates.  They each rank among the most honest politicians our country has to offer, and the most progressive.  (Yes really.  Do some actual research if those things sound strange to you.)  Voting felt really good in the primary.

Since then, we've witnessed the rise of a monster created and fueled by the worst runaway features of our young nation - money equaling speech, entertainment posing as news, echo chamber information bubbles, and more racism, sexism, zealotry, bigotry, and other forms of reckless fear-mongering hate than I would have ever imagined.

I've been all but paralyzed by anxiety for what feels like ages.  I'm normally not a terribly worrisome person.  I've always trusted that most of the time, most of the people will do the best they can.  I still feel that way.  But there is so much influence and so much concentrated power which is willing to swallow any pill no matter how horrifying, as long as it means perpetuating itself.  There are so many lies told so often and so loudly.

My wife observed that every four years the Republican party puts up somebody worse than the last time.  We had Dole, who seems a perfectly respectable statesman at this point, then W, McCain, Romney, and now Drumpf.  (I wouldn't necessarily have ranked McCain as worse than Bush if it hadn't been for Palin, who herself almost sounded cogent compared to today's toupee'd cheesepuff.)  In trying to figure out who is next, assuming we get to keep having elections, the only figures who come to mind for me are Scott Walker (yes, more dangerous than Trump, because he's actually accomplished terrible things instead of just blustering on about them) and whomever is the head of the KKK.  (Please excuse my gross ignorance of the grossly ignorant.)

We've always liked the ritual of voting on election Tuesday.  Ours are not particularly ritual-filled lives, but we've got a few we really feel are worth hanging on to.  Next time around though, we think we'll vote early, as so many have done this time.  I doubt I would have quite the same level of apprehension if this thing were already 100% out of my hands.

Anyway, I look forward to being productive again.  I look forward to being able to relax, find some peace, maybe even fall asleep.  I hope I can do it here in the nation of which I was born.  The one where different kinds of people can work together.  I hope that nation is still here.  I think it is.  Hillary Clinton is seeking what seems to me an impossible job, but if anybody on the planet is up to it, if anyone can be prepared enough, strong enough, compassionate enough, she's the one.

Please vote tomorrow if you haven't already.  Let's get this over with.