Malcolm Anderson
Turnabout CA DMV logo
Turnabout CA DMV
Available on Bluesky!

Tools Used

History

For those of you not in the know, @ca-dmv-bot.bsky.social posts applications for personalized license plates to the California DMV that were flagged for potentially disallowed content. Each post consists of the proposed plate, the customer's explanation of the plate's meaning, the reason the DMV thought it should be rejected, and finally whether or not it was actually rejected.

During 2022 and 2023, I'd been working on the Objection Engine, which was built to render anything to make it look like gameplay from the Ace Attorney games for the Nintendo DS. I was trying to think of applications for it beyond its use in the Twitter Ace Attorney Court Bot (rest in peace), and it occurred to me that the CA DMV Bot's posts would be a great fit. As such, I got to work and started putting together a program that could parse the bot's posts and pass them to the Objection Engine. Before long, I had a prototype:

I was very close to being ready to set it live on Twitter... and then Elon Musk bought Twitter and made it prohibitively expensive to run bots on it. Without the ability to post to Twitter via the API, the project came to a pause.

Other social networks like Mastodon and Bluesky began to appear, and I looked into hosting the bot there. Mastodon seemed like a good candidate - the CA DMV Bot was also available there, and there was even a server dedicated to hosting fun bots! Upon further inspection, though, I realized that the Mastodon version of the CA DMV Bot hadn't been posting, and as such my bot couldn't read its posts in order to generate the videos for itself. Bluesky also had the CA DMV Bot, but was missing video support, so that was a no-go as well.

That is, until around September of 2024, when developers at Bluesky started saying that video was coming soon. When I heard the news, I rushed to put together my bot so it was ready to deploy the moment videos became available, and even contributed to the Python Bluesky API wrapper, atproto, to add support for uploading videos.

© 2024 Malcolm Anderson