journal // Jun 21, 2024
What I Built This Week: June 17th-21st, 2024
Background Noise
I used to religiously listen to the WTF podcast with Marc Maron back in the day, but haven’t for a few years. Recently poked through the archives and have been turning episodes on and off as I work. Currently listening to the recent Larry David episode.
P.S. I also dropped a playlist on the blog this week with some of my recent favorites for hacking. Loaded with bangers. Best for late night coding sessions.
CheatCode
Most of my focus was on bug fixes and wrap up work on Moumint this week, so not a lot going on with CheatCode. I did get a chance to do a little more work on some Mod components and worked out a plan for some improvements/simplifications on Push.
That got me thinking about the long arc of problems and how a true solution to a problem needs time to marinate. I started working on Push in January of 2022. At the time, I had little-to-no experience doing Linux sysadmin and deployments. I had cobbled together a working Kubernetes cluster and knew my way around the average <insert cloud provider here> dashboard, but I’d never done a bare-metal deployment before.
While I did figure out a working deployment setup around the end of 2022, work on it has been secondary to Joystick and everything else. After a few iterations on how things like instance bootstrapping and versioning works, last summer I finally “cracked it.” Since then, my test deployments have been stable and working without interruption. The only headache I’ve run into is the dashboard/UX from the user’s standpoint.
This week, I took some time to mock up some sketches of a simplification for this. It was mildly frustrating because I ended up reintroducing some old ideas I’d already scrapped, but, I’m excited to get it built and rolled out to folks—no more teasing, this will be the last internal iteration before I roll it out to the public.
The most exciting part of this new sketch is the alignment of some of the new ideas with how I’ll be niching down CheatCode in the near future. That’s incredibly vague, but will make sense as I get everything done.
Clients
This week was mostly focused on bug fixes and missing feature stuff for Moumint v2. Though it was mostly small stuff and only a few biggies, I was able to close 52 issues in just a couple of days (I’d attribute a lot of that speed to Joystick and how it’s organized). I was also able to knock out the data mapping of v1 data from PostgreSQL to MongoDB (v2 switched to MongoDB for flexibility/speed). I’m writing this early in the day on Friday, but I think I’ll be able to get the last few issues resolved today.
I need to wire back up the live page that creators load into OBS to receive popups when someone opens a pack of one of their collections. The fun part of this will be using MongoDB change streams to sync websocket events between servers. I used to rely on Redis for this, but I decided that if the functionality exists in MongoDB (a pubsub equivalent), there’s no point in adding an extra database.
I may end up doing a tutorial on how I set all this up soon as it’s incredibly powerful and snaps into Joystick with little effort.
Next Week
Not sure yet. Now that work on Moumint is wrapping up, I could use a few days of brain-off time. I’ll likely be focused on some Mod stuff and then may even start the basic wiring for the new Push dashboard. Time will tell, but whatever the direction: progress.