It's been a week of fun with camera simulation and Sparkle support. Especially the latter has been challenging (as you can read in this week's article), but it does mean we're now able to offer RocketSim out of the App Store.
You might wonder—are you leaving the Mac App Store?
I'm definitely not! We just found out that many companies don't allow to install apps from the Mac App Store, if only after an exception. To get RocketSim in the hands of larger companies, we had to take this step. This already resulted in continued conversations with teams of 50+ app developers (!!). Feel free to reply to this email if you want to use RocketSim with this new distribution channel.
My second priority is finishing the core of my Swift Concurrency Course. I'm currently writing the final module on migration, but I can't just simply write those lessons. I truly want to eat my own dogfood, so I'm using the contents of the lessons to migrate several open-source projects like Diagnostics. Such migration results in unexpected challenges and real-world examples that I can use to optimize my course.
One of the challenges I faced is writing logs, lock-free, but concurrency safe, into a file. I've encountered interesting resources like NIOFileSystem and this thread on the Swift Forums. It shows that a migration to Swift Concurrency isn't only about rewriting some code—it can also mean going back to the drawing table to optimze and guard performance.
Have a great week!