I’ve been (slowly, oh so slowly) trying to teach myself Swift (the programming language, not the pop star).
The main reason, besides being a distraction to the everyday hellscape news cycle, is that I’ve been working on a small Mac app for over a year that runs as a menu bar app and connects to Last.fm to scrobble songs and do a few other things. I wrote almost all of it in Python because I know Python really well. But, I want to end up converting it to be a fully native Mac/Swift app.
Problem is … I don’t know Swift very well at all.
So, I’ve been trying to get better at it. To start the year I challenged myself with a new project: make something in Swift. The first idea that came to mind was a Matrix-inspired screen saver. The goal was to make something that was written entirely in Swift, could run natively on a Mac, was as resource friendly as possible, and I could only use Chat-GPT for help in troubleshooting, debugging, or looking up functions. I wanted to try and write the code myself as much as possible since I’m trying to learn something. I got stuck a few times, but, that’s programming for you.
The result is Emotrix. A screen saver that is inspired by the Matrix digital rain effect but every so often will throw in some chunks of pop-punk song lyrics down the screen as well. It’s silly. But it makes me happy.
I wrote and tweaked it to display the characters in a way that I like the look of more than to be “movie perfect.” (The best movie version of the effect I’ve seen is this one. I did a lot of inspo-browsing over the past few weeks.) The finished and compiled version should be downloadable here. It should be installable on the latest version of macOS, but I’ve only tested it up to Sequoia (15.7.3).