{"id":58558,"date":"2025-01-30T21:30:12","date_gmt":"2025-01-30T21:30:12","guid":{"rendered":"https:\/\/peraltafinancing.com\/apple-2\/issue-691-ios-dev-weekly\/"},"modified":"2025-01-30T21:30:12","modified_gmt":"2025-01-30T21:30:12","slug":"issue-691-ios-dev-weekly","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=58558","title":{"rendered":"Issue 691 \u2013 iOS Dev Weekly"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Happy Friday, everyone! Below, I\u2019ve got another longer-form article covering an interesting hardware-based Swift project from <a href=\"https:\/\/www.lukehoward.com\/\">Luke Howard<\/a> and <a href=\"https:\/\/dev.ursfjord.no\/\">Peer Espen Ursfjord<\/a>. The device they\u2019re building is music-related, but the real story is about getting Swift, C\/C++, Linux, Android, Dart, and Flutter all working together!<\/p>\n<p>Next week\u2019s issue will be my usual \u201cBest of And Finally\u2026\u201d for 2024, and then I\u2019ll take my annual week off the week after. But until then, enjoy hearing about what Luke and Peer have been up to. \ud83c\udfb8<\/p>\n<p class=\"attribution\">Dave Verwer<\/p>\n<p><a href=\"https:\/\/superwall.com\/\" class=\"link\" id=\"yQoXOcP\">Remotely configured paywalls with 1 line of code<\/a><\/p>\n<p>Developers rely on Superwall to grow revenue, from the biggest apps like PhotoRoom, Mojo &amp; Citizen to thriving Indies. Run price tests, paywall experiments, update locked features, and more without shipping app updates. Plus, set up revenue tracking (no SDK required!) to access our advanced revenue charts and analytics \u2013 all for free. Superwall is the complete toolbox to <a href=\"https:\/\/superwall.com\/\">unlock your growth<\/a>.<\/p>\n<h2 class=\"category article\" id=\"article\">Article<\/h2>\n<p>I don\u2019t know if you\u2019ve noticed, but Swift is trying hard to shake the image of being only for Apple platform development. Take a look at some of the posts from the Swift blog over the last year and you\u2019ll spot a theme:<\/p>\n<p>Apple also recently announced <a href=\"https:\/\/github.com\/swiftlang\/swift-java\">swift-java<\/a>, and it was in response to <a href=\"https:\/\/iosdevweekly.com\/issues\/680#start\">my writing about it<\/a> that <a href=\"https:\/\/www.lukehoward.com\/\">Luke Howard<\/a> got in touch to tell me about his project.<\/p>\n<p>He\u2019s building a hardware device for use in recording studios. It uses a mix of technologies but has Swift at its heart. The device monitors and mixes audio tracks that are flying around an Ethernet network as Audio over IP (AoIP). It captures the audio and gives musicians the ability to make their own mix from the individual AoIP feeds and output it to their headphones. For example, a drummer might turn down other channels to focus on their own output while setting the rest of the band to be quieter.<\/p>\n<p>I had a quick call with Luke and <a href=\"https:\/\/dev.ursfjord.no\/\">Peer Espen Ursfjord<\/a>, another developer on the project, earlier this week to learn more about it. The hardware is built around a <a href=\"https:\/\/www.raspberrypi.com\/products\/compute-module-4\/?variant=raspberry-pi-cm4001000\">Raspberry Pi CM4<\/a> with a small touchscreen. The Swift app runs on Linux and handles the creation of two mixes for two headphone ports on each device. All the back-end logic happens in Swift using some open-source <a href=\"https:\/\/swiftpackageindex.com\/PADL\">libraries<\/a> written by Luke and his team. It then uses <a href=\"https:\/\/flutter.dev\">Flutter<\/a> for the UI with their <a href=\"https:\/\/github.com\/PADL\/FlutterSwift\">FlutterSwift library<\/a>. The end result is a device you can either control from the embedded touchscreen <em>or<\/em> from an iPhone, a Mac, or an Android phone!<\/p>\n<p>Luke is a musician and producer by profession but has always kept one foot in the Apple development world ever since he worked on <a href=\"https:\/\/en.wikipedia.org\/wiki\/Rhapsody_%28operating_system%29\">Rhapsody<\/a> in 1997\/98. That mix of backgrounds shows, and is often where you get the most interesting products. Software developers know how to fix problems that software developers have, but bring in some professional experience from outside of the industry and magic can happen.<\/p>\n<p>When you combine that domain knowledge with Swift\u2019s ability to fit in with other technologies you can progress quickly. That said, Luke was keen to say that he\u2019s building on the shoulders of giants like the people behind <a href=\"https:\/\/ocaalliance.com\">Open Control Architecture<\/a> (OCA) and the work of the Swift and Flutter teams:<\/p>\n<blockquote>\n<p>\u201cOne thing I really want to drive home is that this is not rocket science. I\u2019ve not done anything half as clever as the Swift team has with C++ and Java interoperability. FlutterSwift is just a few thousand lines of structured concurrency glue around Flutter <a href=\"https:\/\/docs.flutter.dev\/platform-integration\/platform-channels\">platform channels<\/a>. The beauty is what you can do with it, which is to make your platform-specific Flutter code platform-agnostic.\u201d<\/p>\n<\/blockquote>\n<p>That goes back to my point about different perspectives, but also shows how far we have come with interoperability with Swift. I hope you\u2019ll get inspired and check out a few of the links in this article and <a href=\"https:\/\/d9b15c16.sibforms.com\/serve\/MUIFAG0WFkCWzsypJVvv5MC-wHlHdS1ZjmPZv6MZ8--jtYHxMa_4NLX89FvurcXFleb0vxD3b_8Ck0JSqrqG88XKmQ1ZOYoGd3Ay-SGJokI2gLFkcb3k6jFk6G_86htK7TriHT7WyYYWxywR5G3t-sBSp4kEyuBb-wPshDtPxQ1nr4ffjoVvKqMHJqL36MpAlqGcfBbSdoPvK68L\">sign up for their notification list where they are gathering interest<\/a>.<\/p>\n<p>I\u2019ll finish with my favourite quote from Luke during our conversation:<\/p>\n<blockquote>\n<p>\u201cHaving C, C++, Dart, Java, and Swift in the same process is kind of ridiculous, but somehow it all works.\u201d<\/p>\n<\/blockquote>\n<p>I\u2019m really glad we live in a world where not everything is <a href=\"https:\/\/iosdevweekly.com\/issues\/467#start\">pure Swift<\/a>.<\/p>\n<p>Are you doing anything interesting with Swift that <em>isn\u2019t<\/em> an iOS\/macOS app? Let me know by replying to this email.<\/p>\n<p class=\"attribution\">Dave Verwer<\/p>\n<h2 class=\"category news\" id=\"news\">News<\/h2>\n<p><a href=\"https:\/\/www.apple.com\/newsroom\/2024\/12\/apple-honors-2024-app-store-award-winners\/\" class=\"link\" id=\"fzLEvwt\">2024 App Store Award winners<\/a><\/p>\n<p>Congratulations to all the winners of this year\u2019s awards! I\u2019m happy to see recognition for Balatro and \u201cThank Goodness You\u2019re Here!\u201d, both are fantastic. There\u2019s a great selection of independent developers in the list, too, which is great to see. I\u2019ll be checking some of them out over the holidays.<\/p>\n<h2 class=\"category jobs\" id=\"jobs\">Jobs<\/h2>\n<p><a href=\"https:\/\/iosdevjobs.com\/jobs\/e-250aaa6d-30d5-447c-9256-4b92a1b1fc47\">Senior iOS Developer @ komoot <\/a>\u2013 Develop innovative new features from the first idea and concept over to road map planning, implementation, testing, release and monitoring. Team up with six team members to build a state of the art iOS app with more than 5 million installations. \u2013 <em>Remote (within European timezones)<\/em><\/p>\n<h2 class=\"category finally\" id=\"finally\">And finally&#8230;<\/h2>\n<p>Has it only been <a href=\"https:\/\/bsky.app\/profile\/basicappleguy.com\/post\/3lcy2sxp4r22s\">5 years<\/a>? It seems like so much longer.<\/p>\n<p>I sometimes wonder how the team who created that machine feel about it. It was a remarkable product, but they must have known what was coming. Or, maybe they didn\u2019t? I\u2019d love to know the story.<\/p>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Happy Friday, everyone! Below, I\u2019ve got another longer-form article covering an interesting hardware-based Swift project from Luke Howard and Peer Espen Ursfjord. The device they\u2019re building is music-related, but the real story is about getting Swift, C\/C++, Linux, Android, Dart, and Flutter all working together! Next week\u2019s issue will be my usual \u201cBest of And [&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-58558","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 691 \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=58558\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Issue 691 \u2013 iOS Dev Weekly - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"Happy Friday, everyone! Below, I\u2019ve got another longer-form article covering an interesting hardware-based Swift project from Luke Howard and Peer Espen Ursfjord. The device they\u2019re building is music-related, but the real story is about getting Swift, C\/C++, Linux, Android, Dart, and Flutter all working together! Next week\u2019s issue will be my usual \u201cBest of And [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=58558\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-30T21:30:12+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=58558#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=58558\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"Issue 691 \u2013 iOS Dev Weekly\",\"datePublished\":\"2025-01-30T21:30:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=58558\"},\"wordCount\":905,\"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=58558#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=58558\",\"url\":\"https:\/\/fivemor.com\/?p=58558\",\"name\":\"Issue 691 \u2013 iOS Dev Weekly - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"datePublished\":\"2025-01-30T21:30:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=58558#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=58558\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=58558#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Issue 691 \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 691 \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=58558","og_locale":"en_US","og_type":"article","og_title":"Issue 691 \u2013 iOS Dev Weekly - Som2ny Network","og_description":"Happy Friday, everyone! Below, I\u2019ve got another longer-form article covering an interesting hardware-based Swift project from Luke Howard and Peer Espen Ursfjord. The device they\u2019re building is music-related, but the real story is about getting Swift, C\/C++, Linux, Android, Dart, and Flutter all working together! Next week\u2019s issue will be my usual \u201cBest of And [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=58558","og_site_name":"Som2ny Network","article_published_time":"2025-01-30T21:30:12+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=58558#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=58558"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"Issue 691 \u2013 iOS Dev Weekly","datePublished":"2025-01-30T21:30:12+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=58558"},"wordCount":905,"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=58558#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=58558","url":"https:\/\/fivemor.com\/?p=58558","name":"Issue 691 \u2013 iOS Dev Weekly - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"datePublished":"2025-01-30T21:30:12+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=58558#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=58558"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=58558#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"Issue 691 \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\/58558","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=58558"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/58558\/revisions"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=58558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=58558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=58558"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=58558"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=58558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}