running and debugging rust code from the windows operating system

For a hobby project, I will likely need to build a COM interface, for a screen reader integration, and doing so in python would be annoying to say the least. I therefore decided I might take a stab at implementingn it in rust for personal development, and rust seems more interesting than c++. I recently ran into an annoying issue trying to configure vscode debugging and running on windows. Here is how to get up and running and avoid a major pitfall.

Read running and debugging rust code from the windows operating system… (5 paragraphs remaining).

Challenges of ski guiding

I have been skiing since I was 3, so for 26 or so years. I have skied trees, couloirs, bowls, moguls, and pretty much anything you can find in-bounds. This blog post came about after I started outlining how I may teach aspiring ski guides to guide blind people. I realized there isn't much free information available not related to a purpose built adaptive program on how to guide a blind skier. This manual consists of some techniques my guide (my dad) and I have come up with, and in a later blog post, I will do deep dives into some of the unique challenges of skiing certain types of terrain blind.

Read Challenges of ski guiding… (17 paragraphs remaining).

goodbye twitter

The following thread marks the end of my time on twitter. Multiple issues, such as data failing to update, data being cached in some instances but not others and thus causing weird behavior, etc made me decide I will trust this app no longer. It could lead to life threatening issues. These are the final Tweets for @derekriemer from Thursday, February 02 2023, 19:26 MST explaining my reasoning.

bye y'all. I'll likely delete this app soon. The idiots in charge don't leave me feeling confident that it's going to remain a useful place to receive emergency info like it once did, and the community that was here is practically dead. I'll likely go onto masto at some point.

As it stands, I regularly see tweets on mobile where the tweet contents change when I click the tweet in my timeline to view it. Thus, the people who remain are incapable of keeping caches from being poisoned. I can't trust the data I'm seeing to be current any longer.

There are other ways to receive necessary emergency information I need. Although, having a masto instance for emergency services, and community updates for things like wildfires would be amazing. That's one thing Twitter did well, but can't be trusted with if caches are poisoned.

Now, if @NWSBoulder and @NWS could get on the mastodon bandwaggon life would get better. Guess where I found about the Marshall fire, before anything really? It was here. It won't be any longer when I can't even trust that the data I see is accurate.

Blind twitter, and tech twitter have either mostly died, or devolved into something useless, and will completely die in the upcoming days as apis blink out of existance. Bots I followed both for productive and interesting means will die once the api changes are made.

[readers note: Twitter has announced they are about to make their api pay for use, and it's clear that most services that once paid for it will not pay, because the cost won't necessitate the benefit. Some of the people who were using these apis were delivering emergency info, etc. This info will stop working at some ndetermined date.]

You can find me for professional means on linked in, and you can find me on derekriemer.com to get in touch or follow my blog. I'll mastodon when I get around to it, and maybe I'll use facebook for some emergency info, but likely will use radios and other things.

If you remain, you need to be very aware that things aren't what they seem. This site is huge. Notifications can fail to be received from sources where you once received them, and data is often being cached, and not updated, or updated in spotty ways.

I've seen situations here where I clicked a tweet and got shown a completely different tweet. I've seen tweets fail to load, and I've seen my own tweet contents cached where clicking it revealed someone else's tweet. This cache poisoning is extremely dangerous. Cache poisoning in the software industry can regularly be cause for p0 the world's on fire level bugs. It means you might one day retweet a tweet, only to retweet natzi propaganda or similar. Cache poisoning means you get an alert about a wild fire, and the data you see is 3 hours old, or contains data that has been deleted already. It means you cannot trust absolutely anything here, at least on mobile.

[readers note: you also might be seeing the data of one user attributed to the wrong user entirely.]

When Elon took over he claimed to be shutting down Thousands of unnecessary microservices. I guarantee that some of these were doing things like updating caches, detecting user intent to optimistically load data, scrubbing blocked tweets, syncing servers, etc.

These sites are huge, and it's clear that what I'm seeing is a crumbling mess caused by a cooperating network of computers that's now starting to fail to communicate. Goodbye. You won't see many more tweets here.

I've been immersed in the world of storage systems for the last 5 years or so. When I see data being mislabeled as other data, that makes me recoil in disgust.

Dissecting an Interesting Failure and complete multiday outage of derekriemer.com, a postmortem investigation

What happened?

On January 3rd, 2023, I made a routine change to derekriemer.com, changing some draft changes to a new article I had written. The changes were then attempted to deploy to staging.derekriemer.com, but unknown to me, several days earlier I accidentally destroyed the entire site with a big oopsie. A combination of code as config, shell variable expansion acting in strange ways, and python F-strings ended up being the cause of the outage. The outage would have been isolated to my staging environment, but a push process that does not properly isolate the staging environment of derekriemer.com from the production environment caused the blast radius to include the entire site, including my production domain, instead of just my staging subdomain. The outage was not detected for days because I left a migration intending to provide separate draft deployment configs for staging and production in an borked state, not realizing what I had done. The fact that derekriemer.com is not particularly important meant I had left myself with no monitoring of the sites actual status, and nobody emailed me wondering where my site went, so in effect, I let my site cease to exist for over a week (I don't have records of exactly the date of the failure, because I'm lazy with my VCS for derekriemer.com, because its simply not that important).

Read Dissecting an Interesting Failure and complete multiday outage of derekriemer.com, a postmortem investigation… (11 paragraphs remaining).

Some (more) thoughts on smart canes

Why more?

In early 2021, I wrote a blog post about smart canes, why they usually are hipe, and why canes have design elements that make them so versatile. This blog post got a couple orders of magnitude more traffic than I expected, and based on the feedback I have received, it was educational for many people. It has been posted on many peoples blogs, and even Hacker News. I want to make sure the positive reception of my article is used to guide the industry in an appropriate direction, and generate new useful technologies, instead of being synical and bashing anyone who may have the thought to attach something to a cane.

Read Some (more) thoughts on smart canes… (6 paragraphs remaining).