{"id":252931,"date":"2025-05-23T01:18:02","date_gmt":"2025-05-23T01:18:02","guid":{"rendered":"https:\/\/peraltafinancing.com\/apple-2\/issue-662-ios-dev-weekly\/"},"modified":"2025-05-23T01:18:02","modified_gmt":"2025-05-23T01:18:02","slug":"issue-662-ios-dev-weekly","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=252931","title":{"rendered":"Issue 662 \u2013 iOS Dev Weekly"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Did you see the <a href=\"https:\/\/developer.apple.com\/forums\/\">developer forums refresh<\/a> that launched yesterday?<\/p>\n<p>This isn\u2019t the first time Apple shipped updates to the developer forums shortly before WWDC. It <a href=\"https:\/\/iosdevweekly.com\/issues\/461#GhsV28N\">also happened a few days before WWDC 2020<\/a> when we were all wondering what a virtual WWDC would look like! The forum refresh got lots of criticism then, but looking back they fared better than many thought they would.<\/p>\n<p>My only <a href=\"https:\/\/iosdevweekly.com\/issues\/461#GhsV28N\">request at the time<\/a> was:<\/p>\n<blockquote>\n<p>What I\u2019m hoping for is that these forums receive the attention they need inside Apple. I hope the employees and engineers are being encouraged and given time to help out, not just in this coming week but permanently. \ud83e\udd1e<\/p>\n<\/blockquote>\n<p>So, what\u2019s new with this pre-WWDC 2024 refresh? Well, first of all, they look great. I have no notes on the design refresh. \ud83d\udc4d<\/p>\n<p>The categories and sub-categories are also great, and I like how they focus people\u2019s attention on a broad selection of top-level topics rather than just coding. There are categories for <a href=\"https:\/\/developer.apple.com\/forums\/topics\/app-store-distribution-and-marketing\">Distribution and Marketing<\/a>, <a href=\"https:\/\/developer.apple.com\/forums\/topics\/design-topic\">Design<\/a>, <a href=\"https:\/\/developer.apple.com\/forums\/topics\/graphics-and-games-topic\">Graphics and Games<\/a>, and even a <a href=\"https:\/\/developer.apple.com\/forums\/topics\/community\">Community<\/a> category in addition to all the coding categories you\u2019d expect. They all have RSS feeds, too. \u2764\ufe0f<\/p>\n<p>But what about my only request? Four years seems like a good amount of time to see if Apple employees are being encouraged and given time to participate. The good news is that plenty of Apple folks are active, made obvious by the little Apple badge added to any thread where they are talking. Taking a couple of popular categories, I found that ~30% of recent threads had Apple involvement. That\u2019s much better than I expected, and those categories all had threads spanning more than two weeks, so it\u2019s not just a flurry of activity related to the launch of this refresh.<\/p>\n<p>Looking at reply and view counts on threads in those same categories, it appears they are not particularly well visited, and most threads only had two-digit view counts. I\u2019m sure that will change during WWDC, but let\u2019s see if that influx of traffic plus the refresh turns them into the destination that the Swift forums have become, which are between one and two orders of magnitude more visited for a much more niche topic.<\/p>\n<p>I\u2019m happy to see Apple put more effort into these forums, and I hope they continue to grow and become a permanent venue for this community.<\/p>\n<p class=\"attribution\">\u2013 Dave Verwer<\/p>\n<p><a href=\"https:\/\/www.revenuecat.com\/docs\/tools\/paywalls?utm_medium=sponsored&amp;utm_source=iOSDevWeekly&amp;utm_campaign=general_sponsorship\" class=\"link\" id=\"BkpPu6j\">Add paywalls in one line of code<\/a><\/p>\n<p>Take the pain out of configuring and testing your app\u2019s paywalls. With RevenueCat Paywalls you can remotely configure and edit your entire paywall view without waiting on App Review. <a href=\"https:\/\/www.revenuecat.com\/docs\/tools\/paywalls?utm_medium=sponsored&amp;utm_source=iOSDevWeekly&amp;utm_campaign=general_sponsorship\">See how it works here<\/a>.<\/p>\n<p><a href=\"https:\/\/paul-samuels.com\/blog\/2024\/05\/18\/mise-en-place-xcode\/\" class=\"link\" id=\"arKzOj1\">mise en place Xcode<\/a><\/p>\n<p>I\u2019ve not yet had a chance to check this out, but I like the idea of <a href=\"https:\/\/mise.jdx.dev\/\">mise-en-place<\/a>. Think about it like <code>rbenv<\/code> or <code>nvm<\/code> for your whole development environment. <a href=\"https:\/\/hachyderm.io\/@paulio87\">Paul Samuels<\/a> wrote up his experience with using it with Xcode and in CI, and it\u2019s worth a look if you work with external tools and work in a team.<\/p>\n<h2 class=\"category code\" id=\"code\">Code<\/h2>\n<p><a href=\"https:\/\/wadetregaskis.com\/swift-sucks-at-web-serving-or-does-it\/\" class=\"link\" id=\"w2blWdq\">Swift sucks at web serving\u2026 or does it?<\/a><\/p>\n<p>I was tempted to call <a href=\"https:\/\/github.com\/wadetregaskis\">Wade Tregaskis<\/a>\u2019 latest post a \u201csummary\u201d of a recent <a href=\"https:\/\/tech.phlux.us\/Juice-Sucking-Servers\/\">blog post<\/a> and <a href=\"https:\/\/forums.swift.org\/t\/standard-vapor-website-drops-1-5-of-requests-even-at-concurrency-of-100\/71583\">forum thread<\/a> about benchmarking some Swift on Server code, but at 6,000 words, I don\u2019t think I can! \ud83d\ude02 Benchmarking is hard! It\u2019s an interesting investigation, though.<\/p>\n<hr\/>\n<p><a href=\"https:\/\/varanios.com\/articles\/spi-or-how-to-develop-better-apis-in-swift\/\" class=\"link\" id=\"VB3MkSp\">@_spi or How to develop better APIs in Swift<\/a><\/p>\n<p>Did the Swift team make the Swift Package Index its own attribute in <code>@_spi<\/code>? \ud83e\udee8 They did not. \ud83d\ude02 Instead, it stands for System Programming Interface, and it helps API designers gate code for different groups of developers. I\u2019d guess this could be useful in large teams where you might want to roll our changes to internal frameworks gradually. It\u2019s a private\/beta attribute so it could be changed, but as <a href=\"https:\/\/github.com\/mfvarani\">Marcos Varani<\/a> says, it hasn\u2019t changed in several years.<\/p>\n<hr\/>\n<p><a href=\"https:\/\/jaredsinclair.com\/2024\/05\/20\/preview-content.html\" class=\"link\" id=\"X8qGxrf\">Do your builds include SwiftUI Previews and Preview Content?<\/a><\/p>\n<p>I\u2019m not sure I\u2019d agree with <a href=\"https:\/\/mastodon.social\/@jaredsinclair\">Jared Sinclair<\/a>\u2019s description of this as \u201cdeeply disappointing\u201d, and the answer to the question posed in the post title seems to be \u201cNo\u201d, but it is worth knowing that SwiftUI preview code is not currently being stripped from unoptimised builds. I don\u2019t see this being a huge issue, but it\u2019s probably not what you\u2019d expect to happen so it\u2019s worth knowing about. Luckily, the workaround is trivial.<\/p>\n<h2 class=\"category design\" id=\"design\">Design<\/h2>\n<p><a href=\"https:\/\/www.createwithswift.com\/understanding-typography-in-visionos\/\" class=\"link\" id=\"xElIF8x\">Understanding typography in visionOS<\/a><\/p>\n<p>Yes, this post from <a href=\"https:\/\/bento.me\/emanueleagosta\">Emanuele Agosta<\/a> is targeted at visionOS, but it\u2019s also full of great tips for creating better designs using built-in typography across <em>all<\/em> platforms. \ud83d\udc4d<\/p>\n<h2 class=\"category business\" id=\"business\">Business and Marketing<\/h2>\n<p><a href=\"https:\/\/iosdev.space\/@matt1corey\/112474715937446698\" class=\"link\" id=\"YHR0YVt\">When should you prompt users to review your app?<\/a><\/p>\n<p>This conversation, started by <a href=\"https:\/\/iosdev.space\/@matt1corey\">Matt Corey<\/a> about when to present your users with a prompt to review your app was interesting. Plenty of developers jumped in to share their experiences and results, and I was a little surprised by some of them!<\/p>\n<h2 class=\"category finally\" id=\"finally\">And finally&#8230;<\/h2>\n<p>The Gherkin, The Walkie Talkie, The Cheesegrater, The Flatiron Building, and \u2026 <a href=\"https:\/\/mastodon.social\/@BasicAppleGuy\/112485756052066674\">The SIM Eject Tool<\/a>?<\/p>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Did you see the developer forums refresh that launched yesterday? This isn\u2019t the first time Apple shipped updates to the developer forums shortly before WWDC. It also happened a few days before WWDC 2020 when we were all wondering what a virtual WWDC would look like! The forum refresh got lots of criticism then, but [&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-252931","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 662 \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=252931\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Issue 662 \u2013 iOS Dev Weekly - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"Did you see the developer forums refresh that launched yesterday? This isn\u2019t the first time Apple shipped updates to the developer forums shortly before WWDC. It also happened a few days before WWDC 2020 when we were all wondering what a virtual WWDC would look like! The forum refresh got lots of criticism then, but [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=252931\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-05-23T01:18:02+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=252931#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=252931\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"Issue 662 \u2013 iOS Dev Weekly\",\"datePublished\":\"2025-05-23T01:18:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=252931\"},\"wordCount\":847,\"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=252931#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=252931\",\"url\":\"https:\/\/fivemor.com\/?p=252931\",\"name\":\"Issue 662 \u2013 iOS Dev Weekly - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"datePublished\":\"2025-05-23T01:18:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=252931#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=252931\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=252931#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Issue 662 \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 662 \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=252931","og_locale":"en_US","og_type":"article","og_title":"Issue 662 \u2013 iOS Dev Weekly - Som2ny Network","og_description":"Did you see the developer forums refresh that launched yesterday? This isn\u2019t the first time Apple shipped updates to the developer forums shortly before WWDC. It also happened a few days before WWDC 2020 when we were all wondering what a virtual WWDC would look like! The forum refresh got lots of criticism then, but [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=252931","og_site_name":"Som2ny Network","article_published_time":"2025-05-23T01:18:02+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=252931#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=252931"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"Issue 662 \u2013 iOS Dev Weekly","datePublished":"2025-05-23T01:18:02+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=252931"},"wordCount":847,"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=252931#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=252931","url":"https:\/\/fivemor.com\/?p=252931","name":"Issue 662 \u2013 iOS Dev Weekly - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"datePublished":"2025-05-23T01:18:02+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=252931#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=252931"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=252931#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"Issue 662 \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\/252931","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=252931"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/252931\/revisions"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=252931"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=252931"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=252931"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=252931"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=252931"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}