ntietz.com blog: October plans
Hello and happy Friday! Since the last newsletter, I've put up five posts. Here are those, then I'll talk about what I'm working on.
OpenAI fixed their unsafe policy around names: This one is very personal for me, since I was unable to change my name on their products (one of which I have to interact with at work). The initial post got shared by Julia Evans, reached OpenAI folks, and the problem got fixed! It's surreal to me that a blog post of mine kicked off a feature being added to a product like this. (It's not added to all of OpenAI's products yet, but is coming soon.)
A systematic approach to debugging: Debugging is a huge part of the work of software engineers. This is how I do it, and I think it's a process that should work generally and may work for other people, too.
"Help, iterators made my Rust program slower!": This was a really fun one to write. An acquaintance made an innocuous looking change to use iterators, and then experienced a dramatic slowdown. Let's see why!
Making it fast shouldn't be the last step: I was reading The Pragmatic Programmer with friends, and the "make it work, make it right, make it fast" saying came up. I don't agree with this saying as it's often positioned, and this blog post explains what's dangerous about it.
What would a web app canary look like? This one came to me while I was running. Then I had a chance to implement a lot of the ideas here at work with our head of security, since he was thinking about related ideas. It was a lot of fun!
So, outside of blogging, I've been working on a few things. Well, I've been working on far too many independent things (and this is part of the reason I'm getting evaluated soon for ADHD). One of those I've talked about before is a programming language interpreter, but that's on the back burner for now.
On the front burner (is that a thing?) is a web app for managing chess clubs and tournaments. This is the classic thing we software engineers do: run into a minor inconvenience in life, and decide to solve it through software. In this case, I want to make my life easier as our club's tournament director, so I want software to run tournaments and to check people in each night. There is software out there for that, but none that manage clubs and small tournaments. And those that exist are largely commercial.
Is this overkill? Yes. But will it be fun? Also yes. So that's taking a lot of my time, but I should have the first version launched in a couple of weeks. Then it will be back to a few blog-oriented projects. On the docket:
Writing the interpreter for Hurl
Analyzing dependency graphs for Rust, JavaScript, and (maybe?) Python
I also want to explore a few things like Qubes OS, Firecracker VMs, and KVM. Those may come up, too!
I'm always interested in topic suggestions, so let me know if there's anything you're interested in having me write about. And if you like or dislike this newsletter, I'd love your feedback (or share it with a friend).
-Nicole