Day 2 of Nortriptylene

I took my first dose Monday night, and I had some incredibly intense dreams, and I was very aware that I was dreaming but kept on switching between like six different parallel threads, and was also very aware of my various apnea events. I was sort of awake and asleep at the same time and wasn’t really sure what was a dream and what was reality.

All day Tuesday I was drowsy and in a fog, and did absolutely nothing with my day except basic things around my home. Fortunately, it was also a day off because of the snowpocalypse.

I was kind of worried that my second day on it would be much the same, but aside from feeling vaguely like I was stoned all morning, I made it to work just fine (although I was in sort of a zombie mode on my way there), and then during the day I actually had a fairly productive day. In particular, I finally looked into modernizing the lab’s website (which was originally running Movable Type, just like this one), and realized that a quick-ish path forward would be to use Publ. However, the lab’s site had a lot more hackiness with templates and layout than my own one did, and I quickly came to the conclusion that the best path forward would be to finally implement better support for pure-HTML entries – so I did.

So far I’m not finding any major reduction in my pain levels (and if anything I’m noticing the pain I do have much more acutely) but I mean I’m only at the starting taper dose.

I’m getting a couple of cavities filled tomorrow. I’m not looking forward to finding out how that interacts with this current mental state.

Read more…

Various life/status/etc. updates

So, Seattle’s been basically shut down for most of the past, oh, week and change, thanks to the snow. People did overreact to the news of the snow (did they really need to stock up with a month’s worth of bread and milk?) but the various shutdowns do otherwise make sense; Seattle is very hilly and when it snows it gets icy and slippery. And some caution does make sense for having a nonperishable food supply, since power outages are a thing. The really remarkable thing is just how much snow we’ve gotten this year; most years we’ll get none or just a light dusting, or maybe we’ll get one or two snow days when it gets especially bad.

But anyway. Despite the shutdowns, my doctor’s office was still open today (thankfully, although unsurprisingly as they have an urgent care clinic so they make plans to stay open as much as possible). So I was able to do my appointment where I finally got to deal with my various medications for fibromyalgia (as well as finally getting a new prescription of estradiol).

Read more…

Sleep study results

I finally got the results of my sleep study. Well, partial results, anyway. In-home tests can find either obstructive or central apnea, and complex apneas appear as obstructive. So, unsurprisingly, it determined that I have obstructive apnea.

Anyway, the good news about this (and it’s all good news!) is that I’ll be getting a CPAP machine, and modern CPAP machines are small, lightweight, self-adjusting (no need for a separate titration!), and also provide ongoing diagnosis. So after two weeks of sleeping with it, I’ll know if I have complex or simple obstructive apnea, and either way the treatment is a CPAP so I don’t really care to split hairs about what the underlying problem is.

Read more…

Lua, why are you like this?

Okay so I like LÖVE for making games, and have used it for quite a few of them at this point.

I like that it gives me a bunch of useful primitives for making games, and then just gets out of my way. And I like that it has a simple build process where it isn’t too difficult to make a cross-platform build and continuous deployment system that also lets me do continuous deployment to itch.io or whatever.

And I also like that Lua is a fairly easy language to learn, with a simple syntax. But there’s a few things about it which are just baffling or annoying to me.

And I’m not talking about the 1-based arrays! (That’s annoying in a couple of situations but for the most part it doesn’t really matter, at least not to the extent that people make a big deal about it.)

Read more…

Shelving

When you are born, you are given a shelf to put things on. The shelf is angled away from the wall a little bit, but that’s okay, because the things you put on it are boxes and they don’t slide around too much.

But as you get older you’re given more things to put on the shelf. And one of them is a bit round.

Read more…

I have fibromyalgia.

So yeah. This explains a lot about my chronic pain issues – and a bunch of other things.

It explains my IBS and anxiety.

It explains my sensory overload.

It explains my chemical sensitivity.

It explains my need to manage my “spoons.”

It explains why drinking alcohol makes me hurt all over.

And it also explains how I can move forward, and I’m actually already on the right track.

Read more…

Wrist diagnosis

Me: My wrists have been chronically sore for over 20 years and it’s basically everything except carpal tunnel syndrome.

Doctor: Maybe it’s arthritis?

Me: No, it doesn’t match the symptoms of arthritis, it’s some sort of chronic inflammation. Maybe there’s a structural issue that makes me extra prone to inflammation.

Doctor: Hmm. Well, let’s get a bunch of tests done, like x-rays and such.

Me: And soft-tissue scans?

Doctor: Sure.

Doctor: [orders a bunch of tests, including x-rays, but no soft-tissue scans]

Me: [does them, wonders what the point was]

Tests: [are for arthritis]

Doctor: You don’t have arthritis. But you do have signs of inflammation!

Me: You don’t say.

Read more…

Pronouns, correcting and moving on

When I finally came out as trans at work back in 2015, it took a little bit of time for my coworkers to get up to speed. Most of them were great at simply self-correcting and moving on. There were always a few people who would start to make excuses for how hard it was, though, and go on and on at length about it, citing the pronouns that they used for me when they first met me or whatever. This latter behavior is a bit irritating, but I eventually got some of them to stop.

At my current job, where I started out female-presenting but visibly trans to begin with, I’ve only had one coworker have any trouble with my pronouns, and she’s always been great at self-correcting and moving on, with no further comment. And that is exactly what I want.

Most of my friends have been great about it too. When I was using they/them (as a concession to “how hard it is”), most of my friends were good at either self-correcting or mutually-correcting each other. There would be a few holdouts, but none of them really turned out to be actually friends – they’d all turn out to have some deep-seated transphobic baggage that they refused to address, and I’d have to cut ties with them. Fortunately that was the vast minority. And much more recently when I realized that I definitely prefer she/her, but they/them is still fine, well, I still have the same friends who are still being supportive in the same way.

In particular, one of my oldest friends, who is now also my business partner, has been amazing at self-correcting, in a way that is apparent to others and gets others on board. And he’s even gone through a second phase of that when I did the they/them to she/her switch, which isn’t even that necessary but I so greatly appreciate that he makes the effort.

But there are certain people in my life who claim to want to be on board but keep on making excuses for why they can’t, and why it’s so hard for them, and eventually shift the blame onto me. And they are people that I can’t simply cut ties with.

Read more…

“Modern” web design antipatterns

I am so fucking sick of modern web design where standard HTML form elements are reimplemented using <div> and Javascript.

For example: my mortgage provider just unleashed a new web design on the world. Functionally it’s identical to the old website, but it looks slightly shinier. It’s also completely non-functional for me.

When I try to log in, it gives me my wish-it-were-two-factor “secret question.” I enter my answer. I press Enter, and nothing happens. So I click the submit button – which is, as it turns out, a <div> with attached JavaScript. That JavaScript changes the <div> text to “please wait…” and then it sends off an asynchronous API request. When it gets the response from the server, it then changes the location URL in my browser.

Congratulations on reimplementing <form> the long way around!

Oh, and this process took way longer than it needed to, and I thought maybe it wasn’t working at all. So I opened up their contact form – which, as it turns out, only replaced the page content with that because of course everything’s a “single page application” now. I started filling it out, and when the first form submission finally came back, oops, suddenly I’m logged in! (Meaning I’ve now lost the contact form I was already halfway done filling out.)

So I opened up the contact form again in another tab, and found that I couldn’t tab into the requisite “state” drop down box (because of course I need to give my city and state to provide website feedback, for some reason). So I clicked on it, and tried typing “wa” – and nothing worked. It didn’t jump down to “Washington.” It didn’t even jump to “Washington” then back to “Alaska.” Oh, and of course cursor keys didn’t work either – I had to use my mouse to scroll and click and this hurts my wrist and is slow and error-prone. (Oh and I should add that there was no scroll bar on the selection box either, the expectation was that I’d know to use my scroll wheel and be able to! This is not something you can rely on!)

Because it turns out that the dropdown box, rather than being a <select>, was a fucking <div> with JavaScript to set the value. And doesn’t have any keyboard access. For bonus points, they invented some HTML tags like <dropdown> to contain it. Why?! Standards exist for a reason! What happens in some future HTML verson where the <dropdown> tag becomes a thing? Except it wouldn’t because fucking <select> already exists and has since HTML fucking 1 point 0.

Because, of course, they reimplemented <form> and <select> the long way around.

Why the fuck do people make their lives harder like this? Peering into the page source, everything was obviously built using Angular, which is just… bad. Really bad. I see so many Angular sites that do this. And there’s absolutely no reason for most Angular sites to be based on Angular.

It’s so maddening. You have to do more to get less functionality, that would already be handled by the browser in a cross-platform, humane, accessible manner!

So I sent them this message on their contact form:

Hi, your new website doesn’t function correctly in a number of web browsers, including Safari on macOS. After receiving the challenge question it simply hangs for several minutes. Also, your contact form no longer follows accessibility guidelines and doesn’t support keyboard entry for people with e.g. mobility impairments, and I suspect it won’t work correctly with many screen readers either.

Please don’t reimplement basic browser functionality; for example, there’s no reason for the <div class="dropdown"> with added JavaScript when browsers already have <select> widgets which work perfectly fine.

I bet they get back to me with something like “We apologize, but we only support the Chrome browser. Please download it at google.com/chrome” or something. Because we learned nothing after the whole debacle that was MSIE 6, apparently.

Anyway. Fuck modern web design. Make your shit out of plain old HTML. Seriously. Please. You can build asynchronous, self-updating sites using standard JavaScript and basic DOM methods without a lot of work, and that’s only in the case that you need to – and you probably don’t.

Not everything needs to be a fucking single-page “app,” for fuck’s sake. It buys you nothing except for a bad user experience when things don’t go perfectly.

Read more…

Sleep diagnosis

So, after many years of being aware of a problem with my sleep, I finally saw a sleep specialist. It was good to learn that whatever is going on can be figured out and treated.

What’s really frustrating is what led to me taking this long, and how much I’ve been shamed for having this disorder and how I’m yet still being shamed for having not taken care of it sooner.

Read more…

Mobile Blogging with Publ and CodeAnywhere

Right now I’m sitting bored in a waiting room, so I decided to give CodeAnywhere a shot as a means of editing entries directly on my site, since that’s a use case I’ve mentioned as a possibility for the future.

Here are some of my observations as I run across them while writing this entry.

Read more…

Some more site template update thinguses

I’ve updated the Publ-templates-beesbuzz.biz repository, and also made it a lot easier for me to keep it up-to-date.

I also made it easier for me to put in webmention likes and stuff for things. And since this site is configured with fed.brid.gy support, maybe I can reply to Mastodon comments, like this one, which I have also marked as a “like” in this entry.

Anyway, boost it if you want to.

Update: fed.brid.gy continues to not actually behave in a way corresponding with how I expected. Oh well.

More Authl thoughts

So, thinking about things more, the “profile URL” scheme doesn’t make sense for pure OAuth endpoints like Twitter, Facebook, etc. I’m thinking the API should provide two discovery mechanisms: one for profile-type (OpenID, IndieAuth/RelMeAuth, Mastodon), and one for SSO-type (OAuth).

Read more…

More fun with Webmentions

I ended up writing a little embed widget to embed webmention responses/reactions into my blog posts. It all happens client-side, but so do Disqus comments so I figure that’s okay.

It only works with webmention.io as the webmention endpoint (although it could be modified to work with any endpoint that speaks the same query API), and I suspect Aaron might end up being a skosh annoyed with how I actually implemented it, but whatever. :)

Anyway, if you find any bugs with it or want to make improvements, for now you can submit an issue against the Publ website repository or you can just, like, comment here or something.

Medical terminology for trans healthcare

I am finally enrolled in Kaiser Permanente’s transgender healthcare program. (Why I didn’t get enrolled when I first signed up for it is a mystery, but whatever.) Today I finally received my insurance form for submitting reimbursement claims for my hair removal.

It gave me a diagnostic code of F649 with an explanation of “Uncomfortable with one’s gender.”

This is… not great phrasing.

Read more…

Reprogramming my sleep cycle

So because I’m starting the new job next week I figured it was time to get myself back on a compatible sleep schedule. In the past I’ve always done this by taking a dose of melatonin before bed to ease myself into going to bed early, and then try to continue to go to bed at a regular time every night. That usually works for about three days.

What I’m doing this time is attacking it from the other end: I have set my smart bed and Apple Watch to both wake me up at 8:00 every morning, both only on weekdays. The smart bed’s alarm comes through my phone (which charges on my nightstand) and happens during a shallow sleep phase during the half hour or so before the actual alarm time. This usually wakes me up effectively.

The Apple Watch charger, however, lives on the bookshelf across the room, and the Nightstand Mode alarm turns out to be the right combination of pleasant enough to not be jarring and annoying enough to get me up to turn it off.

Read more…