Qualcomm Acquires Arduino: The Wheel of History Turns
Last week, Qualcomm announced its acquisition of the renowned open-source hardware platform Arduino, simultaneously unveiling the first Arduino to feature Qualcomm silicon—the Arduino UNO Q. Unlike its classic predecessors, the UNO Q employs a “dual-brain” architecture: a Linux-running Qualcomm Dragonwing processor handles high-performance computing, while an STM32 microcontroller manages real-time control tasks. Though undeniably powerful, this design quietly departs from Arduino’s founding ethos of “simplicity, affordability, and accessibility.”
Despite Qualcomm’s promises to preserve Arduino’s brand independence and open-source nature, the community’s concerns are not unfounded—given Qualcomm’s historically aggressive stance on patent licensing and its deeply commercial DNA. At $44, the board has drifted even further from Arduino’s original mission of serving educators and makers.
Intriguingly, the name “Arduino” itself seems to carry a sense of destiny. When the project was born in 2005, its founders regularly gathered at Bar di Re Arduino (King Arduin’s Bar) in Ivrea, Italy, and thus adopted its name. That Italian king, Arduin of Ivrea, once led local forces in resistance against the Holy Roman Empire, holding out for twelve years before ultimately abdicating. With his surrender, northern Italy was absorbed into the Empire’s dominion, losing its independence for nearly 850 years.
A millennium later, Arduino—named after a rebel—has similarly been absorbed into an American tech “empire” after 20 years of independence. This cyclical echo of history is both poignant and profound. Perhaps the moment they chose that name, the seeds of this fate were already sown.
Yet just as King Arduin’s defeat could not diminish his legacy—his spirit of resistance echoing through the centuries—may Arduino’s open-source ideals and maker spirit transcend mere corporate ownership, continuing to flourish and inspire across the globe.
This acquisition illuminates an enduring dilemma of the open-source world: How can one maintain idealism while achieving commercial sustainability?
Perhaps physical entities are destined to return to dust, while only the spirit endures through time.
Previous Issue|Newsletter Archive
If you appreciate my work and want to promote your product to the Swift and iOS developer community, sponsoring my blog & newsletter could be an excellent opportunity for you.
Recent Recommendations
Do Job Silently
In iOS, when an app enters the background, the system strictly limits its resource usage. If developers need to perform tasks like data refresh or periodic calculations, they can leverage the background task mechanism to have the system automatically trigger the corresponding logic at appropriate times. Kyryl Horbushko provides a detailed introduction to two implementation approaches for background tasks: the traditional BGTaskScheduler and the more modern .backgroundTask modifier. The article’s highlights include a complete configuration checklist, debugging techniques, and solutions for common pitfalls—including using LLDB commands to simulate task triggers and obtaining visual feedback through local notifications. The author believes that for new SwiftUI projects, .backgroundTask better aligns with the declarative programming paradigm and is the more natural preferred choice.
How to Integrate OpenSwiftUI into Your Project
OpenSwiftUI is an open-source SwiftUI implementation aimed at research and education. As the framework continues to improve, more developers are starting to pay attention and try using it. However, during actual integration, you’ll find it’s not “plug-and-play”—it requires manual handling of private framework dependencies. To address this, project lead developer Kyle Ye has written this article, detailing the complete steps for integrating OpenSwiftUI via Swift Package Manager, including handling critical aspects like DarwinPrivateFrameworks.
OpenSwiftUI is one of the few practical projects that allows developers to deeply understand SwiftUI’s internal rendering mechanisms. At this stage, it’s more suitable as an exploration tool rather than a production solution.
iOS 26: Foundation Model Framework - Code-Along Q&A
Apple introduced a brand new developer education format this year—Code-Along, which is an online teaching activity combining live coding demonstrations with real-time Q&A. During the first Code-Along session held in September, Apple engineers spent two hours demonstrating in detail how to integrate the iOS 26 Foundation Models framework into applications, from basic API calls to performance optimization techniques, while answering numerous developer questions in real-time.
Anton Gubarenko has compiled a comprehensive record of the Q&A from this event, covering key technical details such as the model’s 4K token context limit, 1.2GB memory footprint, structured output (Generable), streaming responses, concurrent processing, as well as practical concerns developers care most about like privacy protection and App Store review.
Performing Search with SwiftData in a SwiftUI app
Since SwiftData’s @Query
doesn’t support dynamically updating predicates within views, implementing search functionality with searchable
requires some additional work. In this article, Letizia Granata presents an elegant solution: by separating the view architecture—with the main view managing search state and the child view handling dynamic queries—she gracefully resolves this limitation. She also recommends using localizedStandardContains
in predicates for case-insensitive comparison and improved localized search experience.
SwiftUI Toggle with Dynamic Image Overlay
While developers can fully control Toggle appearance through custom ToggleStyle
, this often means reimplementing all native system behaviors—including size adaptation, tinting, and animation effects. Artem Mirzabekian demonstrates a more pragmatic approach in this article: preserving the native Toggle while using GeometryReader
to obtain dimensions and DragGesture
to capture touch position, adding a dynamic icon that responds to user interaction via overlay. This approach of extending rather than rewriting maintains system consistency while achieving visual enhancement.
The macOS DNA of Apple Platforms
Why do we encounter NS prefixes in Swift development? Why does TARGET_OS_MAC return true on iOS devices? These seemingly strange design choices all have historical roots. In this article, Uwais Alqadri explores three key milestones in Apple’s platform architecture: the NeXTSTEP merger that brought NS prefixes and the Objective-C ecosystem, Darwin as the shared Unix foundation, and the layered architecture where all platforms essentially “run on top of” the macOS technology stack.
Understanding this history not only explains those “counterintuitive” design decisions but also helps us properly use platform conditional compilation and understand why these characteristics persist today and remain difficult to change.
Tools
Swift Profile Recorder: A Performance Profiler Requiring No System Privileges
Swift Profile Recorder is an in-process sampling profiler open-sourced by Apple, designed specifically for Swift server-side applications and used extensively at Apple for years. Unlike traditional profiling tools (such as eBPF, DTrace) that require system privileges, it runs directly within the application process as a Swift Package, enabling On-CPU and Off-CPU profiling without additional permissions. This allows it to work in restricted environments like Kubernetes and Docker containers, where performance samples can be collected with simple curl commands and visualized using mainstream tools like Speedscope and Firefox Profiler.
The project’s “zero-privilege, easy integration, cross-platform” characteristics make production performance profiling no longer exclusive to privileged environments. For deeper insights into its background and Apple’s practical experience, I recommend reading Introducing Swift Profile Recorder: Identifying Performance Bottlenecks in Production by Johannes Weiss and Mitchell Allison.
RichText: A SwiftUI Component for Free Text and View Mixing
SwiftUI’s Text cannot freely embed interactive views, and its text selection experience is lacking. RichText, developed by LiYanan, achieves text and view mixing through declarative syntax, precise typesetting based on TextKit 2, with embedded views (like Button) fully retaining their interactive capabilities, while supporting smooth text selection and copying.
TextView {
Text(”Hi, This is **RichText**.”) // Markdown will be parsed
“ Hello “ // Plain string
Button(”Tap Me”) { // Fully interactive button
print(”Button Clicked”)
}
.id(”button”) // Recommended to add id to all views
Text(.now, style: .timer) // Dynamic text
.id(”timer”) // Maintain as view through id for dynamic updates
}
Foundation Models Playgrounds
A collection of Playgrounds built and maintained by Ivan Campos, demonstrating how to call Apple’s Foundation Models framework for conversation, summarization, creation, tool calling, and other scenarios. Examples are organized by theme: chat conversations, summary explanations, content generation, code and data, multimodal image-text, security evaluation, vertical tools, agent patterns, etc., with each Playground focusing on a specific capability.
高通收购 Arduino:历史的轮回
上周,高通宣布收购知名开源硬件平台 Arduino,并同步发布首款搭载自家芯片的 Arduino UNO Q。与经典版本不同,UNO Q 采用了“双脑”架构——由运行 Linux 的 Qualcomm Dragonwing 处理器负责高性能计算,同时保留 STM32 微控制器以执行实时控制任务。这种设计无疑强大,却也悄然偏离了 Arduino 一直以来“简单、低成本、易上手”的初心。
尽管高通承诺保持 Arduino 的品牌独立与开源特性,但考虑到其在专利授权领域一贯的强势作风,以及深植于商业化的企业基因,社区的担忧并非杞人忧天。44 美元的定价,也让这款产品距离 Arduino 最初面向教育与创客的定位愈发遥远。
有趣的是,“Arduino” 这个名字本身就带着宿命的意味。2005 年项目诞生时,创始人们常在意大利伊夫雷亚的 Bar di Re Arduino (阿尔杜因国王酒吧)聚会,遂以此命名。而那位意大利国王 Arduin of Ivrea,曾代表本土势力反抗神圣罗马帝国的统治,坚守 12 年后终告退位。自此,意大利北部并入帝国版图,失去独立地位近 850 年。
千年之后,以反抗者命名的 Arduino,在独立运营 20 年后,同样被美国科技“帝国”收编。这种历史的轮回,令人唏嘘。或许在命名的那一刻,命运的伏笔已悄然埋下。
然而,正如 Arduin 国王虽败犹荣,其反抗精神流传千年。愿 Arduino 所代表的开源理想与创客精神,也能超越公司所有权的变迁,继续在世界各地延续与发芽。
这场收购映照出开源世界的恒久困境:如何在坚持理想主义的同时,实现商业的可持续?
也许,实体终将归于凡尘,而唯有精神才能长久流传。
如果您发现这份周报或我的博客对您有所帮助,可以考虑通过 爱发电,Buy Me a Coffee 支持我的创作。
近期推荐
静默执行后台任务 (Do Job Silently)
在 iOS 中,应用进入后台后,系统会严格限制其资源使用。若开发者希望执行数据刷新或周期性计算等任务,可以借助后台任务机制,让系统在合适的时机自动触发相应逻辑。Kyryl Horbushko 在本文中详细介绍了后台任务的两种实现方式:传统的 BGTaskScheduler 与更现代的 .backgroundTask 修饰符。文章的亮点在于提供了完整的配置清单、调试技巧与常见陷阱的规避方案——包括使用 LLDB 命令模拟任务触发、通过本地通知获得可视化反馈等实用方法。作者认为,对于新的 SwiftUI 项目,.backgroundTask 更契合声明式编程范式,是更自然的首选方案。
OpenSwiftUI 集成指南 (How to Integrate OpenSwiftUI into Your Project)
OpenSwiftUI 是一个面向研究与教育的 SwiftUI 开源实现。随着框架的不断完善,越来越多的开发者开始关注并尝试使用它。但在实际集成时,你会发现它并非“即插即用”——需要手动处理私有框架依赖。为此,项目主要开发者 Kyle Ye 撰写了本文,详细介绍了通过 Swift Package Manager 集成 OpenSwiftUI 的完整步骤,包括处理 DarwinPrivateFrameworks 等关键环节。
OpenSwiftUI 是少数能让开发者深入理解 SwiftUI 内部渲染机制的实践项目。现阶段,它更适合作为探索工具,而非生产方案。
Foundation Models 框架实操问答 (iOS 26: Foundation Model Framework - Code-Along Q&A)
Apple 在今年推出了全新的开发者教育形式——Code-Along,这是一种结合实时编码演示与即时答疑的在线教学活动。在 9 月举行的首场 Code-Along 中,Apple 工程师用两个小时详细演示了如何将 iOS 26 的 Foundation Models 框架集成到应用中,从基础 API 调用到性能优化技巧,同时实时回答了众多的开发者问题。
Anton Gubarenko 对本次活动问答记录进行了详尽的整理,内容涵盖了模型的 4K token 上下文限制、1.2GB 内存占用、结构化输出(Generable)、流式响应、并发处理等关键技术细节,以及开发者最关心的隐私保护、App Store 审核等实践问题。
在 SwiftUI 中使用 SwiftData 实现搜索 (Performing Search with SwiftData in a SwiftUI app)
由于 SwiftData 的 @Query
不支持在视图内动态更新谓词,因此在使用 searchable
构建搜索功能时,需要进行一些额外处理。本文中,Letizia Granata 提出了一个巧妙的解决方案:通过分离视图结构——主视图负责管理搜索状态,子视图负责处理动态查询,从而优雅地解决了这一限制。她还建议在谓词中使用 localizedStandardContains
进行比较,以忽略大小写并提升本地化搜索体验。
为 Toggle 添加动态图标覆盖层 (SwiftUI Toggle with Dynamic Image Overlay)
虽然开发者可以通过自定义 ToggleStyle
完全控制 Toggle 的外观,但这往往意味着需要重新实现所有系统原生行为——包括尺寸适配、色调处理和动画效果。Artem Mirzabekian 在本文中展示了一种更务实的方案:保留原生 Toggle,通过 GeometryReader
获取尺寸、DragGesture
捕获触摸位置,以 overlay 的方式添加能够响应用户交互的动态图标。这种扩展而非重写的思路,既保持了系统一致性,又实现了视觉增强。
Apple 平台的 macOS DNA (Apple Platforms Runs on macOS DNA)
为什么 Swift 开发中会遇到 NS 前缀?为什么在 iOS 设备上,TARGET_OS_MAC 也会返回 true?这些看似奇怪的设计其实都有其历史渊源。Uwais Alqadri 在本文中探讨了 Apple 平台架构的三个关键节点:NeXTSTEP 合并带来的 NS 前缀与 Objective-C 体系、Darwin 作为共享的 Unix 基础,以及各平台实际上都“运行在” macOS 技术栈之上的分层架构。
了解这段历史,不仅能解释那些“反直觉”的设计决策,也能帮助我们正确使用平台条件编译,并理解这些特性为何至今仍然存在、并且难以改变。
工具
Swift Profile Recorder:无需系统权限的性能分析利器
Swift Profile Recorder 是 Apple 开源的进程内采样分析器,专为 Swift 服务端应用设计,已在 Apple 内部大规模使用多年。与传统性能分析工具(如 eBPF、DTrace)需要系统特权不同,它以 Swift Package 形式直接运行在应用进程内部,无需额外权限即可进行 On-CPU 和 Off-CPU 分析。这使其能够在 Kubernetes、Docker 容器等受限环境中正常工作,只需通过 curl 命令即可采集性能样本,并支持 Speedscope、Firefox Profiler 等主流工具可视化。
该项目的“零权限、易集成、跨平台”特性,让生产环境的性能分析不再是特权环境的专属。想深入了解其背景和 Apple 的实践经验,推荐阅读 Johannes Weiss 和 Mitchell Allison 撰写的 Introducing Swift Profile Recorder: Identifying Performance Bottlenecks in Production。
RichText:让文本与视图自由混排的 SwiftUI 组件
SwiftUI 的 Text 无法自由嵌入可交互视图,文本选择体验也不够好。由 LiYanan 开发的 RichText 通过声明式语法实现文本与视图混排,基于 TextKit 2 精确排版,嵌入的视图(例如 Button)完全保留交互能力,同时支持流畅的文本选择和复制。
TextView {
Text(”Hi, This is **RichText**.”) // Markdown 会被解析
“ Hello “ // 普通字符串
Button(”Tap Me”) { // 完全可交互的按钮
print(”Button Clicked”)
}
.id(”button”) // 建议所有视图都加 id
Text(.now, style: .timer) // 动态文本
.id(”timer”) // 通过 id 保持为视图以维持动态更新
}
Foundation Models Playgrounds
由 Ivan Campos 构建并维护的 Playgrounds 集合,展示如何调用 Apple Foundation Models 框架完成对话、摘要、创作、工具调用等场景。依主题划分示例:聊天对话、摘要解释、内容生成、代码与数据、图文多模态、安全评测、垂直工具、智能体模式等,每个 Playground 都聚焦一个能力点。