{"id":158672,"date":"2025-03-26T23:59:20","date_gmt":"2025-03-26T23:59:20","guid":{"rendered":"https:\/\/peraltafinancing.com\/apple-2\/issue-680-ios-dev-weekly\/"},"modified":"2025-03-26T23:59:20","modified_gmt":"2025-03-26T23:59:20","slug":"issue-680-ios-dev-weekly","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=158672","title":{"rendered":"Issue 680 \u2013 iOS Dev Weekly"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Stop! Don\u2019t pack up your desk and welcome the weekend just yet. It\u2019s Monday, not Friday. \ud83d\ude02<\/p>\n<p>As you <a href=\"https:\/\/mastodon.social\/@daveverwer\/113209535087112722\">may have seen<\/a> there was a hiccup with publishing last Friday\u2019s issue where the software I use to publish it was completely broken for the day. \ud83d\ude44 Thankfully it\u2019s back now, and I can keep my promise to publish today.<\/p>\n<p>13 years and 7 weeks isn\u2019t a bad streak for publishing every Friday, though, is it! \ud83c\udf89<\/p>\n<p>\u2014<\/p>\n<p>The big Swift news from last week happened at the <a href=\"https:\/\/www.serversideswift.info\/\">Server-Side Swift conference<\/a> in the keynote session. Tony Parker and <a href=\"https:\/\/mastodon.social\/@airspeedswift\">Ben Cohen<\/a> announced <a href=\"https:\/\/github.com\/swiftlang\/swift-java.git\">swift-java<\/a>, a Swift\/Java interoperability library.<\/p>\n<p>I haven\u2019t seen the presentation as I wasn\u2019t in attendance this year, so I\u2019m working with almost zero information rather than having the full context, but I think this is a pretty big deal for Swift.<\/p>\n<p>I can hear you thinking \u201creally?\u201d, and if you\u2019re an iOS or macOS programmer I get it. It\u2019s extremely unlikely that you\u2019ll ever use this or any of the other server-side Swift libraries that Apple contributes to on a daily basis. It\u2019s 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.<\/p>\n<p>It\u2019s been no secret that Apple is using Swift on the server internally for a while. We obviously don\u2019t 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.<\/p>\n<p>I used to think Apple was going to do \u201cthe Apple thing\u201d with server-side Swift and that one year we\u2019d see a big tentpole \u201ciCloud functions\u201d feature or full server-side framework. Something that\u2019s just as polished and glossy as SwiftUI. I changed my mind about that a few years ago, though. Instead, I don\u2019t think they\u2019re hiding anything. I think what you see with their support of server-side Swift development <em>is<\/em> the plan, and interoperability libraries like this are part of it.<\/p>\n<p>This is in total speculation, of course, and I can\u2019t wait to see the announcement presentation from the conference so I can hear it in Tony and Ben\u2019s words. That said, I think they\u2019d agree with me that it\u2019s big news for Swift.<\/p>\n<p class=\"attribution\">Dave Verwer<\/p>\n<p><a href=\"https:\/\/getstream.io\/tutorials\/ios-chat\/?utm_source=newsletter&amp;utm_medium=referral&amp;utm_content=&amp;utm_campaign=iosdevweekly\" class=\"link\" id=\"BMvEt9G\">Build High-Performance Chat Experiences Without the Hassle \ud83d\udee0\ufe0f<\/a><\/p>\n<p>Now with integrated support for your favorite LLM APIs! <a href=\"https:\/\/getstream.io\/tutorials\/ios-chat\/?utm_source=newsletter&amp;utm_medium=referral&amp;utm_content=&amp;utm_campaign=iosdevweekly\">Start building for free today<\/a>. \ud83d\ude80<\/p>\n<h2 class=\"category news\" id=\"news\">News<\/h2>\n<p><a href=\"https:\/\/www.mongodb.com\/products\/updates\/product-support-deprecation\" class=\"link\" id=\"cH6K1gj\">MongoDB Feature Updates: End-of-Life And Deprecation<\/a><\/p>\n<p>I had kinda lost track of Realm after it got folded into MongoDB and became (I think) their \u201cAtlas Device SDKs\u201d. Someone dropped me a note last week to let me know that it\u2019s 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\u2019s integrated into a codebase.<\/p>\n<h2 class=\"category code\" id=\"code\">Code<\/h2>\n<p><a href=\"https:\/\/christianselig.com\/2024\/09\/server-side-live-activities\/\" class=\"link\" id=\"vtDVJBL\">Server side Live Activities guide<\/a><\/p>\n<p>Can you start a live activity from a remote server with a push notification? It\u2019d be a terrible article if the text said \u201cno\u201d, wouldn\u2019t it, so you probably already figured out that you can! <a href=\"https:\/\/mastodon.social\/@christianselig\">Christian Selig<\/a> explains how and gives us some gotchas to watch for on the way.<\/p>\n<hr\/>\n<p><a href=\"https:\/\/swiftonserver.com\/getting-started-with-hummingbird\/\" class=\"link\" id=\"yItsT62\">Getting Started with Hummingbird<\/a><\/p>\n<p>I linked to the <a href=\"https:\/\/iosdevweekly.com\/issues\/678#9BbZIT6\">announcement of Hummingbird 2<\/a> a couple of weeks ago. If you didn\u2019t immediately rush out to give it a try, this quick start from <a href=\"https:\/\/fosstodon.org\/@joannis\">Joannis Orlandos<\/a> might inspire you.<\/p>\n<hr\/>\n<p><a href=\"https:\/\/chris.eidhof.nl\/presentations\/swiftui-animations\/\" class=\"link\" id=\"6K8h0Wp\">SwiftUI Animations<\/a><\/p>\n<p>As <a href=\"https:\/\/m.objc.io\/@chris\">Chris Eidhof<\/a> says in the first minute of his explanation of SwiftUI animations:<\/p>\n<blockquote>\n<p>The basic animations in SwiftUI will get you very far and will take care of most of your animation needs.<\/p>\n<\/blockquote>\n<p>That\u2019s true, and he starts with the basics but also covers a whole lot more. I\u2019m confident you\u2019ll learn something if you watch this short talk on the subject.<\/p>\n<hr\/>\n<p><a href=\"https:\/\/orjpap.github.io\/swift\/low-level\/audio\/avfoundation\/2024\/09\/19\/avAudioEffectNode.html\" class=\"link\" id=\"cTRGaG8\">AVAudioEffectNode: Painless low level audio effects<\/a><\/p>\n<p>I remember when AVFoundation debuted, it was such a small API it felt almost comical in what it could (or couldn\u2019t) 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\u2019s amazing to see how far AVFoundation has come and what a rich high-level audio API it has become over the years. <a href=\"https:\/\/github.com\/orjpap\">Orestis Papadopoulos<\/a> is here to show us a nice example of it.<\/p>\n<h2 class=\"category design\" id=\"design\">Design<\/h2>\n<p><a href=\"https:\/\/lmnt.me\/blog\/reality-distortion.html\" class=\"link\" id=\"DC7eBk0\">Reality Distortion<\/a><\/p>\n<p><a href=\"https:\/\/pdx.social\/@louie\">Louie Mantia<\/a>:<\/p>\n<blockquote>\n<p>People want there to <strong>be<\/strong> a reason for every detail, because Apple has trained people to think there <strong>is<\/strong> a reason for every detail.<\/p>\n<\/blockquote>\n<p>I\u2019ve heard many times that many decisions inside Apple that you might think would include a committee are made by a single person. Here\u2019s more confirmation of that!<\/p>\n<h2 class=\"category videos\" id=\"videos\">Videos<\/h2>\n<p><a href=\"https:\/\/www.youtube.com\/playlist?list=PLugrLwuQvERqB4Kj8GOPwCnUMOLxJ0Ny9\" class=\"link\" id=\"a2js8PO\">Videos from SwiftCraft 2024<\/a><\/p>\n<p>I\u2019ve been keeping an eye on this playlist of videos from <a href=\"https:\/\/swiftcraft.uk\/\">Swift Craft<\/a> 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.<\/p>\n<h2 class=\"category finally\" id=\"finally\">And finally&#8230;<\/h2>\n<p>\u201cWe built it in two days during the <a href=\"https:\/\/tamulaitis.lt\/project\/dialrhea\/\">\u2018Internet Of Shit\u2019 hackathon<\/a>\u201d \ud83d\ude02<\/p>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Stop! Don\u2019t pack up your desk and welcome the weekend just yet. It\u2019s Monday, not Friday. \ud83d\ude02 As you may have seen there was a hiccup with publishing last Friday\u2019s issue where the software I use to publish it was completely broken for the day. \ud83d\ude44 Thankfully it\u2019s back now, and I can keep my [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11768],"tags":[15295,3554,15294,6039],"dealstore":[],"offerexpiration":[],"class_list":["post-158672","post","type-post","status-publish","format-standard","hentry","category-apple-2","tag-dev","tag-ios","tag-issue","tag-weekly"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Issue 680 \u2013 iOS Dev Weekly - Som2ny Network<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fivemor.com\/?p=158672\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Issue 680 \u2013 iOS Dev Weekly - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"Stop! Don\u2019t pack up your desk and welcome the weekend just yet. It\u2019s Monday, not Friday. \ud83d\ude02 As you may have seen there was a hiccup with publishing last Friday\u2019s issue where the software I use to publish it was completely broken for the day. \ud83d\ude44 Thankfully it\u2019s back now, and I can keep my [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=158672\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-26T23:59:20+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fivemor.com\/?p=158672#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=158672\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"Issue 680 \u2013 iOS Dev Weekly\",\"datePublished\":\"2025-03-26T23:59:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=158672\"},\"wordCount\":901,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"keywords\":[\"Dev\",\"iOS\",\"Issue\",\"Weekly\"],\"articleSection\":[\"Apple\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fivemor.com\/?p=158672#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=158672\",\"url\":\"https:\/\/fivemor.com\/?p=158672\",\"name\":\"Issue 680 \u2013 iOS Dev Weekly - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"datePublished\":\"2025-03-26T23:59:20+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=158672#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=158672\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=158672#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Issue 680 \u2013 iOS Dev Weekly\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fivemor.com\/#website\",\"url\":\"https:\/\/fivemor.com\/\",\"name\":\"Som2ny Network\",\"description\":\"Daily Deals\",\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fivemor.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/fivemor.com\/#organization\",\"name\":\"Som2ny Network\",\"url\":\"https:\/\/fivemor.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"width\":300,\"height\":86,\"caption\":\"Som2ny Network\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/fivemor.com\"],\"url\":\"https:\/\/fivemor.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Issue 680 \u2013 iOS Dev Weekly - Som2ny Network","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fivemor.com\/?p=158672","og_locale":"en_US","og_type":"article","og_title":"Issue 680 \u2013 iOS Dev Weekly - Som2ny Network","og_description":"Stop! Don\u2019t pack up your desk and welcome the weekend just yet. It\u2019s Monday, not Friday. \ud83d\ude02 As you may have seen there was a hiccup with publishing last Friday\u2019s issue where the software I use to publish it was completely broken for the day. \ud83d\ude44 Thankfully it\u2019s back now, and I can keep my [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=158672","og_site_name":"Som2ny Network","article_published_time":"2025-03-26T23:59:20+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fivemor.com\/?p=158672#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=158672"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"Issue 680 \u2013 iOS Dev Weekly","datePublished":"2025-03-26T23:59:20+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=158672"},"wordCount":901,"commentCount":0,"publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"keywords":["Dev","iOS","Issue","Weekly"],"articleSection":["Apple"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fivemor.com\/?p=158672#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=158672","url":"https:\/\/fivemor.com\/?p=158672","name":"Issue 680 \u2013 iOS Dev Weekly - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"datePublished":"2025-03-26T23:59:20+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=158672#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=158672"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=158672#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"Issue 680 \u2013 iOS Dev Weekly"}]},{"@type":"WebSite","@id":"https:\/\/fivemor.com\/#website","url":"https:\/\/fivemor.com\/","name":"Som2ny Network","description":"Daily Deals","publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fivemor.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/fivemor.com\/#organization","name":"Som2ny Network","url":"https:\/\/fivemor.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","width":300,"height":86,"caption":"Som2ny Network"},"image":{"@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","caption":"admin"},"sameAs":["https:\/\/fivemor.com"],"url":"https:\/\/fivemor.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/158672","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=158672"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/158672\/revisions"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=158672"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=158672"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=158672"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=158672"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=158672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}