ntietz.com: Accessibility, Rust, a digital vigil, and idle engineers
Hello and happy Friday! This month I kept busy with a few blog posts, and did some math and programming. I always love hearing from readers, so reply to this if you've got any thoughts to share!
Blog Updates
Here are the posts from this month:
Accessibility is a requirement, not a feature: As technologists, we have an ethical obligation to make our software accessible for all users. This post dives into why this is the case. Not everyone has the power to stand up for what's right for our users. If you do have influence at work, please take a moment to read this and think about if your employer's software is doing right by all its users.
Introducing Yet Another Rust Resource (YARR): I'd previously soft-launched my short open-source Rust training, YARR. This blog post announces it directly and has some usage suggestions. So far, people have found it helpful, and I turn to it myself as a reference sometimes. It should be something you can work through in a few days, and should get you to the point of being able to pair program with someone on Rust code.
Building a digital vigil for those we've lost: Monday, November 20, was Transgender Day of Remembrance. I couldn't attend a vigil, so I built a digital one to remember all those trans people who we have lost over the last year to violence and suicide. As a trans woman who was influenced deeply by someone on this year's list, I had to do something. This is a deeply personal post, but it does still mention Rust and WASM and has a pun, because I cannot stop myself. (I deal with grief partially through humor.)
Why do companies hire people to be idle a lot of the time?: This one came out of a thread in a programming community I'm part of. Someone postulated that big tech employs people just to keep the off the market, and that's why they have a lot of downtime. I present the argument here that it's in large part because big tech isn't (wasn't?) cash constrained and is optimizing for a different metric.
If that list isn't some emotional whiplash, I don't know what is. Ethics, training, memorials, then business.
Side Projects
I have a few projects in the works right now.
Chess Club Manager
The main side project I've been working on for a little while now, Chess Club Manager, is paused for the moment. I've gotten it to where I can start to use it, but am feeling pretty overwhelmed by the prospect of doing work outside of work (because maintaining a production side project is work), so I've hit pause. This might be a few days, it might be indefinite, but it is very freeing to let myself let go of this.
Along the way, though, I learned a lot about developing web apps in Rust. I'll keep chugging away at some of the production-worthy aspects of it like instrumentation, so that future projects can benefit from this work; I may make a template.
I also wrote a proof along the way! I read the USCF Official Rules of Chess as part of my process to become a certified tournament director, and ran into a curious statement where I wasn't sure why it was true. To figure it out, I wrote this proof. I used a web app called Overleaf that my friend pointed me to, where we could collaborate on the proof when I was writing it up and editing it. Here's the document if you are curious about Overleaf.
Blog Book
I'm in the early stages of compiling my blog posts down into book form.
My main motivation here is that I want a physical reminder that I can see of all the work I've put into my blog. I wrote about 37,000 words across 30 posts in 2022, and I wrote 52,000 words across 50 blog posts so far in 2023. When I realized that this was effectively book length, I decided that would be the perfect way to visualize the work that I've done. I'll also learn about the publishing process along the way, which will help me, as I'm also in the background exploring writing a software design book.
My secondary motivation is to give my readers a way to give me a token of appreciation, if they want to. I'm uncomfortable asking for donations, as I'm well employed; it's psychologically much easier to offer something for sale. This is an early exploration for me, as long-term I would love to make my living from my writing or from selling products. If you're interested in getting a copy, email me as some encouragement to keep going. Also email me if you want to a free advance copy in exchange for checking the typesetting and whatnot.
I'll be putting out one volume for each year, with volume 0 covering 2022, volume 1 covering 2023, etc. This is something a few other blog writers I read have done. If you like their writing, please buy their books to support them!
My Exceptional programming language
Advent of Code starts today! I recently finished writing the interpreter for Hurl (introduced previously). I haven't written a blog post about the interpreter yet, but that will come soon! In the mean time I'm going to put it through its paces with some early Advent of Code problems. I do not expect that I will withstand the pain for very long, but this is my proper punishment for bringing this language into the world.
Explorations in cryptography
I've started exploring cryptography again! We're reading Real-World Cryptography at my work book club, and that inspired me to implement RSA in a toy-cryptography crate. It's been a really educational experience, and it's giving me more appetite to dive deeper into this stuff.
I don't intend to become a cryptographer, or even a security professional. But as a software engineer working with the web, working with user data, working with networks? Understanding how cryptography works is pretty critical to not messing it up tremendously. I want to make sure our users are kept safe, and this is part of that.
Coming soon!
Okay, so that's a lot. This newsletter is long in the tooth, so I'll wrap up with what you can expect in December:
Blog posts about cryptography, programming languages, and doing it for the money. (Yes, I do it for the money, or I did originally.)
A preview of the blog book project, hopefully.
Some more code/tech heavy blog posts.
Alright, talk to you again in December!