{"id":48087,"date":"2025-06-13T16:58:35","date_gmt":"2025-06-13T20:58:35","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=48087"},"modified":"2025-06-24T13:59:08","modified_gmt":"2025-06-24T17:59:08","slug":"swift-marketing-and-speed","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2025\/06\/13\/swift-marketing-and-speed\/","title":{"rendered":"Swift Marketing and Speed"},"content":{"rendered":"<p><a href=\"https:\/\/www.swift.org\/blog\/redesigned-swift-org-is-now-live\/\">Mishal Shah<\/a> (<a href=\"https:\/\/www.reddit.com\/r\/swift\/comments\/1l3djq3\/redesigned_swiftorg_is_now_live\/\">Reddit<\/a>):<\/p>\n<blockquote cite=\"https:\/\/www.swift.org\/blog\/redesigned-swift-org-is-now-live\/\">\n<p>Over the past few months, the website workgroup has been redesigning Swift.org. On behalf of the website workgroup, I&rsquo;m pleased to announce that we have merged the initial changes.<\/p>\n<p>Our goal with the site redesign has been to make Swift.org more approachable for newcomers to Swift, highlight the language&rsquo;s technical strengths, and make it easy to get started. That led to a focus on the website&rsquo;s appearance, improving the user experience, and emphasizing important features such as Swift&rsquo;s multiplatform support.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/forums.swift.org\/t\/redesigned-swift-org-is-now-live\/80296\/47\">jawbroken<\/a>:<\/p>\n<blockquote cite=\"https:\/\/forums.swift.org\/t\/redesigned-swift-org-is-now-live\/80296\/47\"><p>it&rsquo;s unfortunate that the analytics script causing <a href=\"https:\/\/github.com\/swiftlang\/swift-org-website\/issues\/18\">cmd-click to not open links in a new tab<\/a> hasn&rsquo;t been fixed in the redesign, something that has been an issue for <a href=\"https:\/\/forums.swift.org\/t\/rfc-making-swift-org-a-more-valuable-resource-for-the-swift-community\/15303\/39\">at least 7 years<\/a>. better luck next redesign, i guess<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/www.swift.org\/\">Swift.org<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.swift.org\/\">\n<p>Swift is the powerful, flexible,\nmultiplatform programming language.<\/p>\n<p>Fast. Expressive. Safe.<\/p>\n<p>[&#8230;]<\/p>\n<p>Swift is the only language that scales from embedded devices and kernels to apps and cloud infrastructure.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/forums.swift.org\/t\/redesigned-swift-org-is-now-live\/80296\/6\">Nevin<\/a>:<\/p>\n<blockquote cite=\"https:\/\/forums.swift.org\/t\/redesigned-swift-org-is-now-live\/80296\/6\">\n<p>I&rsquo;ve been using Swift and contributing to Swift Evolution for a decade, it is by far my favorite and most used programming language, and I am a huge fan.<\/p>\n<p>Nonetheless, when I read those lines, my immediate reaction is &ldquo;Wait, <em>the<\/em>, and <em>the only<\/em>? Are they saying that <em>no other language<\/em> does those things?&rdquo;<\/p>\n<p>Even if true, statements like that make me question the reliability of the narrator, and they come across as somewhat disparaging of other languages rather than just building up this one.<\/p>\n<\/blockquote>\n\n<p>Overall, I like the new homepage, but some of the wording is a <a href=\"https:\/\/github.com\/swiftlang\/swift-org-website\/issues\/1044\">bit<\/a> <a href=\"https:\/\/github.com\/swiftlang\/swift-org-website\/issues\/1053\">much<\/a>, and I think it&rsquo;s unnecessary. There&rsquo;s no need to pretend it&rsquo;s something it&rsquo;s not. I felt the same way about some of the benchmarks used to tout Swift&rsquo;s performance when it was first introduced.<\/p>\n\n<p><a href=\"https:\/\/x.com\/praeclarum\/status\/1933387031079801098\">Frank A. Krueger<\/a>:<\/p>\n<blockquote cite=\"https:\/\/x.com\/praeclarum\/status\/1933387031079801098\">\n<p>Swift <code>String<\/code> parsing is embarrassingly slow. I just converted code from <code>String<\/code> <code>indices<\/code>\/<code>SubStrings<\/code> to <code>Data<\/code> <code>indices<\/code>\/<code>SubSequences<\/code> (assuming UTF8, meh) and performance was 100x faster. Went from 8 minutes to parse an 80 MB file to 5 seconds.<\/p>\n<p>(Also 5 seconds is stupidly slow. Even Python can parse the same file, with the same algorithm, in about 1 second.)<\/p>\n<\/blockquote>\n\n<p>My experience is that Swift <em>can<\/em> be very fast. But, especially with strings and bridging, you have to be careful and measure because sometimes there are unexpected sources of slowness. Likewise, code using <code>Data<\/code> can really fly, but it can also get incredibly bogged down in safety checks if you don&rsquo;t annotate your code such that Swift can statically prove exclusive access.<\/p>\n\n<p>There were some important new <code>String<\/code> optimizations announced at WWDC.<\/p>\n\n<p><a href=\"https:\/\/mastodon.social\/@Catfish_Man\/114655166906127124\">David Smith<\/a>:<\/p>\n<blockquote cite=\"https:\/\/mastodon.social\/@Catfish_Man\/114655166906127124\"><p>Bridging non-ASCII <code>NSMutableStrings<\/code> from ObjC will be slower at the point of bridging, <em>but<\/em> the <code>String<\/code> produced as a result will be much faster.<\/p><p>One particular case this tradeoff can end up not paying off in is if you then bridge the resulting <code>String<\/code> back to ObjC. If you&rsquo;re in that situation the recommendation is to not double-bridge strings if you can avoid it.<\/p><p><\/p><\/blockquote>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2019\/02\/05\/swift-5-exclusivity-enforcement\/\">Swift 5 Exclusivity Enforcement<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2014\/09\/13\/swift-1-0-performance-and-compilation-times\/\">Swift 1.0 Performance and Compilation Times<\/a><\/li>\n<\/ul>\n\n<p id=\"swift-marketing-and-speed-update-2025-06-24\">Update (<a href=\"#swift-marketing-and-speed-update-2025-06-24\">2025-06-24<\/a>): <a href=\"https:\/\/dimsumthinking.com\/Blog\/2025\/06\/20-SwiftDotOrg.html\">Daniel Steinberg<\/a>:<\/p>\n<blockquote cite=\"https:\/\/dimsumthinking.com\/Blog\/2025\/06\/20-SwiftDotOrg.html\"><p>The week before we launched java.net, Sun presented us with a page much like the swift.org homepage that would be the landing page. They explained that people would click through to our page but Sun would own the home page.<\/p><p>[&#8230;]<\/p><p>Not to get sidetracked, but here&rsquo;s a <a href=\"https:\/\/dimsumthinking.com\/Blog\/2025\/06\/20-SwiftFoundation.html\">link to an excerpt of a previous post that argues for an independent Swift Foundation<\/a> funded by Apple that would run swift.org and a fall Swift conference.<\/p><p>I would argue that Apple has been a great steward of Swift and is bringing the language to other platforms and doing great things with the language.<\/p><p>The swift.org web site must reflect this. Adding Linux and Windows references to the home page isn&rsquo;t enough. In addition, Apple marketing can&rsquo;t be any where near the website.  There needs to be an independent editorial team that is responsible for the home page.<\/p><p>[&#8230;]<\/p><p>Here&rsquo;s what I&rsquo;d like to see on a front page that is refreshed many times a week to highlight that Swift is part of a vibrant ecosystem.<\/p><\/blockquote>","protected":false},"excerpt":{"rendered":"<p>Mishal Shah (Reddit): Over the past few months, the website workgroup has been redesigning Swift.org. On behalf of the website workgroup, I&rsquo;m pleased to announce that we have merged the initial changes. Our goal with the site redesign has been to make Swift.org more approachable for newcomers to Swift, highlight the language&rsquo;s technical strengths, and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2025-06-13T20:58:38Z","apple_news_api_id":"d2d5058a-53c2-447e-8c99-e8ad659b39cb","apple_news_api_modified_at":"2025-06-24T17:59:11Z","apple_news_api_revision":"AAAAAAAAAAAAAAAAAAAAAA==","apple_news_api_share_url":"https:\/\/apple.news\/A0tUFilPCRH6MmeitZZs5yw","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[4],"tags":[31,2586,2741,30,2598,2742,663,138,71,901,96],"class_list":["post-48087","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-ios","tag-ios-18","tag-ios-26","tag-mac","tag-macos-15-sequoia","tag-macos-tahoe-26","tag-marketing","tag-optimization","tag-programming","tag-swift-programming-language","tag-web"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/48087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=48087"}],"version-history":[{"count":2,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/48087\/revisions"}],"predecessor-version":[{"id":48191,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/48087\/revisions\/48191"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=48087"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=48087"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=48087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}