Issue 680
30th September 2024
Written by Dave Verwer
Comment
Stop! Don’t pack up your desk and welcome the weekend just yet. It’s Monday, not Friday. 😂
As you may have seen there was a hiccup with publishing last Friday’s issue where the software I use to publish it was completely broken for the day. 🙄 Thankfully it’s back now, and I can keep my promise to publish today.
13 years and 7 weeks isn’t a bad streak for publishing every Friday, though, is it! 🎉
—
The big Swift news from last week happened at the Server-Side Swift conference in the keynote session. Tony Parker and Ben Cohen announced swift-java, a Swift/Java interoperability library.
I haven’t seen the presentation as I wasn’t in attendance this year, so I’m working with almost zero information rather than having the full context, but I think this is a pretty big deal for Swift.
I can hear you thinking “really?”, and if you’re an iOS or macOS programmer I get it. It’s extremely unlikely that you’ll ever use this or any of the other server-side Swift libraries that Apple contributes to on a daily basis. It’s off to one side and out of the day-to-day limelight, but the Swift team (and therefore Apple) is taking server-side Swift seriously.
It’s been no secret that Apple is using Swift on the server internally for a while. We obviously don’t know exactly what they are using it for, but the effort they are putting into libraries and interoperability tells a story. Java is a big deal for interoperability when it comes to big companies. It just is.
I used to think Apple was going to do “the Apple thing” with server-side Swift and that one year we’d see a big tentpole “iCloud functions” feature or full server-side framework. Something that’s just as polished and glossy as SwiftUI. I changed my mind about that a few years ago, though. Instead, I don’t think they’re hiding anything. I think what you see with their support of server-side Swift development is the plan, and interoperability libraries like this are part of it.
This is in total speculation, of course, and I can’t wait to see the announcement presentation from the conference so I can hear it in Tony and Ben’s words. That said, I think they’d agree with me that it’s big news for Swift.
Dave Verwer
Sponsored Link
Build High-Performance Chat Experiences Without the Hassle 🛠️Now with integrated support for your favorite LLM APIs! Start building for free today. 🚀
News
MongoDB Feature Updates: End-of-Life And DeprecationI had kinda lost track of Realm after it got folded into MongoDB and became (I think) their “Atlas Device SDKs”. Someone dropped me a note last week to let me know that it’s being deprecated, along with a few other related projects. I have no idea if these projects continued to see use, but I can only assume that they do as that kind of library tends to live forever once it’s integrated into a codebase.
Code
Server side Live Activities guideCan you start a live activity from a remote server with a push notification? It’d be a terrible article if the text said “no”, wouldn’t it, so you probably already figured out that you can! Christian Selig explains how and gives us some gotchas to watch for on the way.
Getting Started with Hummingbird
I linked to the announcement of Hummingbird 2 a couple of weeks ago. If you didn’t immediately rush out to give it a try, this quick start from Joannis Orlandos might inspire you.
SwiftUI Animations
As Chris Eidhof says in the first minute of his explanation of SwiftUI animations:
The basic animations in SwiftUI will get you very far and will take care of most of your animation needs.
That’s true, and he starts with the basics but also covers a whole lot more. I’m confident you’ll learn something if you watch this short talk on the subject.
AVAudioEffectNode: Painless low level audio effects
I remember when AVFoundation debuted, it was such a small API it felt almost comical in what it could (or couldn’t) do. If I remember correctly, playing back a single sound file without any control after playback began was about the extent of it. For everything else, you needed a much more low-level framework like Core Audio. It’s amazing to see how far AVFoundation has come and what a rich high-level audio API it has become over the years. Orestis Papadopoulos is here to show us a nice example of it.
Design
Reality DistortionPeople want there to be a reason for every detail, because Apple has trained people to think there is a reason for every detail.
I’ve heard many times that many decisions inside Apple that you might think would include a committee are made by a single person. Here’s more confirmation of that!
Videos
Videos from SwiftCraft 2024I’ve been keeping an eye on this playlist of videos from Swift Craft as the organisers have been publishing them over the last few months. It looks like the set is complete now though, and what a selection of talks there is! Enjoy.
And finally...
“We built it in two days during the ‘Internet Of Shit’ hackathon” 😂