My TypeScript honeymoon period is over
Captain's Log: Stardate 78064.4
Getting there... the website now can do all the mailing list management that I have thus far done through substack. I like substack, but it's just not the right tool for what I'm doing, as it's focused on newsletters that make their money via subscription revenue. Plus, substack annoyingly doesn't have APIs, so I can't have a little checkbox on account creation for "sign me up for the mailing list," nor can I have a checkbox on the user's profile page to change the subscription status. So I'm doing it through mailerlite now, which lets me do all that.
In doing that, I discovered that in my typescript code there was a bug where I called an async function (which returns a Promise) without calling "await." This is a horrifying bug. Eventually I found that it is possible to configure typescript-eslint to produce errors about this and other terrible things that you can do with async functions to completely screw yourself. Once I got those lint errors up, I found about a dozen awful bugs from this. My honeymoon period with typescript has worn off -- it is definitely helpful and better than raw JS, but they did not go NEARLY far enough and left lots of footguns lying around waiting to go off.
The next thing I'm musing on is whether I should code up a quick blog for the site. After about an hour of work, I think the answer is "yes," it will be easier to just write my own blog platform than to remember how to use wordpress, style it appropriately, hook it up to my site, figure out their subscription model, ... etc. Of course my blog platform will have almost zero features, and that is fine with me. Just a simple form to edit a post via markdown, and a quick way to view it.
This is making me wonder if I should move this devlog to the website. I think I probably want to -- it has long bothered me that it is not discoverable, and that you need a discord account to see it. I'd much rather that it was out there on the web.