## Nortriptylene and CPAP progress

So I’ve been on nortriptylene for nearly two weeks now, and so far it’s feeling pretty promising. I’m still at the 10mg dose (I’m supposed to increase to 20 in a few days) and while it hasn’t completely solved my fibromyalgia so far (not that I’d expect it to), it’s definitely helped me out a lot.

In particular, while I still feel pain after a full day of work, it just feels like something that’s present and that tells me that it’s time to take a break from things, rather than putting me into extreme severe agony.

Basically I suspect this is what pain normally feels like to people who don’t have this disability!

I still have some level of fatigue in the morning (and much more later in the day) and I’m still needing to manage my spoons – that’s not something that is likely to ever go away – but even this early and at this low of a dose I feel like I’m heading in the right direction.

## CPAP and Nortiptyline

Only too late did I realize that trying to adjust to a CPAP machine while already adjusting to a brain medication (that has weird effects on sleep) means that I am once again doing things on hard mode. Oops.

So far I’ve had two nights with the CPAP. The first night I didn’t get any real amount of sleep while on it and ended up taking a nap after I “got up” in the morning. The second night I did a bit better when I stopped worrying about paying attention to my breathing, although that’s hard to do.

Probably the weirdest thing about a nasal CPAP mask is that if you open your mouth, the air gets forced out through it and causes a sort of reverse snore. And it feels really weird. So if I need to talk to a cat, for example, things go strange.

Anyway the lack of sleep has made me feel like I’ve gotten a pretty big setback with chronic pain stuff; the day before CPAP, I was feeling pretty good, and over the last two days my major chronic pain has come back all over and in a big way. I’d hold off on the CPAP for now except insurance will only pay for it if I average 4 hours per night over the next two months, and I feel like in the long term CPAP is much more important for my pain stuff than nortriptyline probably is.

If tonight doesn’t go better I’ll probably go without CPAP tomorrow night though, because I have to be in good shape pain-wise on Tuesday (since I have a couple of big tasks at work plus I’m getting a bunch of cavities filled in the afternoon).

## Nortriptylene day 4

Are these updates getting annoying? I figure that the point of having a blog is to be able to do bloggy stuff again, and if people only want to subscribe to Bigger Things they can subscribe to the category-specific feeds on my site or whatever. Or they can skip/skim these entries.

Anyway.

## 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.

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).

## 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.

## 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.)

## 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.

## 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 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.

## 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.

## 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.

## “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.

## 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.

## Computers were a mistake

What’s harder than setting up a new computer?

Re-setting up an account on the same computer.

## Plans for 2019

So, it’s a new year, huh.

Might as well share some brief outlines of what I hope to accomplish this year.

## 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.

## 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).