Ludum Dare 37 Update

So I’ve been thinking about porting my project for Ludum Dare 37 to JavaScript because I think it would work really well as a simple web game. To that end, I tried to fire it up.

Unfortunately, it had bit rot and didn’t work. It was written for Python 2 and didn’t work in Python 3. A few quick changes and it was good to go again.

You can find the updated version at https://karatorian.org/2016/ld37/ (get the one with a 2023 date).

Four

I’ve always said “More than three drinks isn’t any fun.”, but four is a special kind of place. Everything is hyper-focused and visceral. While it’s certainly an over-indulgence, it’s a place worth exploring from time to time.

Trans Thoughts

It’s been over a year since my “coming out” post and I’ve been giving the issues it discusses a lot of thought lately. At the time I said I didn’t have any gender dysphoria and wasn’t trans. It didn’t explicitly state that the second statement was a conclusion based on the first, but it’s pretty strongly implied.

That is not a cooincidence. At the time, I thought dysphoria was part and parcel of being trans, and that all trans people had it. At the time, I also had a very limited understanding of what gender dysphoria is.

On deeper reflection, I do experience some degree of gender dysphoria. Towards the end of my post, I get all angsty about not being able to be myself, to wear the clothes I want to, to style my hair the way I want, to (openly) do some of the stuff I enjoy. That’s an example of the dysphoria I do experience.

It’s not crippling. It’s not so bad that I have difficulty functioning, and, mostly I can just ignore it. (Which I am thankful for, many people have a much more difficult time with these things than me, and I feel for them.) But ignoring things doesn’t make them go away.

Over the years, there have been subtle signs. (Including a lot of the stuff mentioned  towards the end of my previous post.) When I started playing tabletop roleplaying games, the first character I created was female. A significant portion of subsequent characters have been female as well. Nearly all of my video game avatars (when given a choice) are female.

I recently started a game, was initially going to make a female character, had a weird feeling that I shouldn’t, and made a male character instead. Literally the first time I used the in-game character customization feature, I changed my character’s features to be more feminine.

On the other tentacle, in the Super Mario franchise, I prefer to play as Toad, the most ambiguous character in a cast of fairly strongly gendered protagonists. I’m also not saying that all people who cross-gender roleplay are trans; I’m sure most of them aren’t, this is just something I noticed in my own behavior as I dug deeper into my feelings.

Over the years, I’ve told myself that it’s so much easier (and safer) to be a hetero cis male than a lesbian trans female. The fact that I even have to occasionlly remind myself of this is telling.

That said, I wouldn’t describe myself as trans-female, or a trans-woman. Trans-feminine (which is a term I only recently came across) seems more accurate. Deep down, I am more effeminate than is considered socially acceptable for my assigned gender. I generally hide it, but feeling forced to do so does cause me some degree of distress.

I have pretty severe social anxiety, and while I’ve embraced the fact that I’m weird and a geek, I still feel the omipresent pressure to fit in. As the song says, “I wish that I could be like the cool kids.” The views of my friends and family make this even worse.

I don’t think there’s a single person I’m really close to that is actually accepting of trans people. Even of those that aren’t outright anti-LGBTQ bigots, there are none I’m sure of. If I were to transition (whatever that might mean for me), there’s a real possibility I might loose everyone. There a few friends I don’t see very often and some acquaintances that I pretty sure of, but that’s it.

And that scares the hell out of me.

Coming Out

Shortly after National Coming Out Day, I read an article encouraging strait people not to ignore the day as not relevant to them and use the opportunity to stand up for LGBTQ rights. Unfortunately, the day had already passed. Furthermore, I was too cowardly to have taken the advice anyway. With my family, I felt it wasn’t worth the risk. Today I decided to change that, and I’m not waiting until next year to do it.

My entire childhood I was lied to. I was told that homosexuals (which was not the term used) were terrible people. I believed this lie until high school. One day in middle school, I told a friend of mine (what I thought at the time was) a funny story about a gay bashing. He didn’t think it was funny, but he didn’t say much about it and I was puzzled at why he didn’t laugh. Now I know why; I’m still ashamed.

Once I was in high school, I actually found out some of my friends were gay. As I already knew they were good people, the lie fell apart. I’ve got friends, associates, and relations across the entire LGBTQ spectrum. So when my father said he was “in favor of a little gay bashing,” but thought the Orlando nightclub shooting was “a little much.” it made me sick. Who’s really the terrible person here?

I haven’t worked up the nerve to ask him if he really believes that it’d be acceptable for his grand-niece to be brutally beaten just because she happens to like girls, so long as she’s not actually killed. I hope not, but at this point, none of his bigotry surprises me anymore.

I’m a gynecophilic cis-male with atypical gender expression. Anyone who knows me knows that I grow my hair and fingernails longer than is usually considered masculine. I’m effeminate enough that when I was younger I got mistaken for a female fairly often. (Today, I’d probably have to shave.) At first this annoyed me; but as I grew to accept myself, I eventually stopped correcting people.

I’m not trans: I’ve never experienced any gender dysphoria or seriously considered transitioning. But it is something I’ve thought about. It’s because of this contemplation that I identify as (mostly) gynecophilic rather than heterosexual. My attraction remains towards females even when I imagine myself as one. I say mostly because I’d be lying if I said there hadn’t been a few guys that caught my eye.

But I’m not sure anybody really knows me. A few people have seen me in a dress or pig-tails, but for the most part, I say firmly in the closet. When I find a dress or skirt I like, I sigh wistfully and put it out of my mind. “You’d get disowned,” I tell myself. Maybe I show a female friend who I think’ll appreciate it, but mostly they don’t (perhaps my taste is terrible).

So, if you’ve ever wondered about the Q in LGBTQ; wondered who that might be. That’s me; I am queer.

Time Errors

So I noticed that my comment on the NetBSD entry was dated in the future. So I checked the time zone in my WordPress settings, and it was still on UTC. However, after fixing that, the time was still wrong. So I looked at the time on my VM, which was off (I guess virtual machines don’t keep very good time when the uptime gets to be about a year or so.) So I tried to install ntpdate on my VM, only to find out that Debian has ended long term support for Debian 6 (squeeze-lts) as of this month.

So now I’ve got to update the OS on my virtual machine. Last time I tried that, it didn’t boot and I had to start over from scratch. This time I think I’m going to just install the new kernel, try to reboot, watch the Xen console and go back to the old kernel if it doesn’t boot. Also, I need to setup some kind of backup system for my VM anyway.

So this could be an interesting experiment. Also there may be some down time. (Although I hope not, ’cause it’s really inconvenient when my email server is offline.)

NetBSD

I decided to install NetBSD on my old laptop. I’ve been meaning to play around with the BSDs for a while, but only recently got around to doing so. Why NetBSD specifically? That’s a funny story, actually.

I was messing around with rump kernels and read that their device drivers come from NetBSD. This makes a lot of sense, because they’re the portability focused BSD. (Open does security, Dragonfly does performance, Free does something…) So I thought it might be instructive to mess about with the source.

The install is pretty easy as far as these things go. Setting up the network (on WiFi no less) was automatic, which is better than Linux at times (WiFi on that laptop has given me headaches, even though it’s a bog standard Atheros).

The install only had one hiccup which would’ve stumped a newbie. Since I had a GTP partion table with a protective MBR and GRUB installed, the auto partioner did something strange and the bootloader didn’t get installed properly. I was able to figure out how to use the bootloader on the install disk to boot into the system and fix it.

The system installed the BSD disklabel into the protective MBR partition (which started at sector 1), but the root partition therein started at sector 34 (after the GPT tables). Which meant that the MBR boot block (which never got installed, for some reason, perhaps they expect a workable DOS style one to already be there) couldn’t find the partition’s boot block.

After a few false starts, I was able to fdisk the MBR partition to start at 34. (I also changed it’s type to NetBSD, not that it mattered much.) Once I marked it as active and installed the MBR boot block, everything worked.

If I’d have applied my old procedure of zeroing the first K or so of a HD before a new install (adopted as a surefire fix for Windows installers that balked at anything the least bit unexpected), it probably would’ve gone fine. (I kinda want to test this theory.)

Anyway, once I got that fixed, I started to play around. The base system includes a fairly basic un*x setup, complete with X and build tools, but not much else. I enabled XDM during installation and while X worked out of the box, when I logged in, I was greeted with TWM. I haven’t use TWM since I tried running Gentoo for a while (which this kinda reminds me of). Also, there’s no browser (that I noticed) at all.

I installed Firefox binaries (which are about twenty versions out of date) and XFCE (moldiness unknown, I didn’t check) and things where much nicer. (Once I remembered which config file I had to hack to change my window manager. XDM apparently doesn’t understand the way modern desktop advertise themselves to display managers.) I’m thankful I decided to setup pkgin during installation.

It’s unfortunate that there’s not a handy Chromium build. There’s a work in progress port, but nothing quick and easy. So I decided to use pkgsrc to build a more recent Firefox before attempting to compile Chromium. Unfortunately pkgsrc isn’t smart enough to continue an interrupted download, so I don’t know if I’ll ever get the sources downloaded, never mind compiled.

If I’m going to be building a lot of packages for this box, I think I ought to figure out how to cross compile them on my desktop (which has way more MHz, cores, RAM, etc.).

🍪

The Itch

So, as I complained about on Facebook earlier today the EU Cookie Law (properly known as the Directive on Privacy and Electronic Communications) is stupid and annoying. It requires all cookie placing websites (which is basically all websites) to pester you about it. Chances are, once you say “ok, go away”, they track this by adding yet another cookie (or expanding the size of the cookie they would otherwise set).

“97% of websites use cookies – you may as well add a disclaimer that your website is using electricity.”
—Oliver Emberton, Silktide

Furthermore, the bad actors who abuse cookies (advertising trackers, cross site crackers, etc.) aren’t going to comply. Most of what they do is illegal or at least morally questionable. They’re organized criminal gangs operating out of countries that won’t extradite them. It’s silly.

So I’ve proposed a solution. Allowing knowledgeable web browser users such as myself to “opt in” to cookies. Most of us already have. We’ve read the hype about “evil cookies,” saw past the drama, realized most of the convenience expected from the modern web depends on cookies, and reacted appropriately. We block third party cookies, we allow first party cookies, and our ad blocker does the rest (blacklisting known bad actors).

Those that aren’t so knowledgeable use their browser defaults; which are the same exact settings (at least in a reputable browser). Why? Because that’s the reasonable setup. If I wanted to be annoyed by every site that wants to set a cookie, there’s already a browser setting for that. I’ve tried it. It’s annoying.

So in the interest of ending annoyance, I’ve decided to propose a mechanism for opting in to cookies. (I don’t think we really needed one (more correctly, we already had one), but the EU obviously has some stupid lawmakers). So this is a technical hack and a political protest all in one.

The Scratch

I propose an extended HTTP header be added to bypass all this silliness. I nominate the name “X-Cookies-Please” as being sufficiently succinct. (I resisted the urge to suggest something more snarky.) The content of the header is irrelevant; the presence of the header is enough to opt in. For example:

GET / HTTP/1.1
Host: ico.org.uk
Accept: text/html;...
User-Agent: Cookie Monster 1.0
Referer: https://blog.karatorian.org/
Cookie: ...
X-Cookies-Please: Yes you fools!

See, isn’t that better. I know this seems silly, but I am fairly serious. (Perhaps I should alter my tone. Or the content of the example? Nah.) I suppose I should talk to some browser developers and standards folks to get the ball rolling on this.

Tablets

So I forgot my tablet at a friend’s house last night and was too lazy to go get it today. This wasn’t really a big deal as I’ve got a perfectly functional desktop which can do anything the tablet can do (except a few walled gardens (like Snapchat) that I could conceivably run in an emulator if I so desired). Except one thing…

I can’t take it to bed with me, or on the couch, or wherever. I’ve realized what I really use it for: browsing the web in bed. Heck, I can’t even really lean back in the cheap recliner I use as a computer chair and still browse effectively.

So now I know anyway.