Fatbobman’s Swift Weekly #030 | Arc Lands on Windows and Google Layoffs

fatbobman ( 东坡肘子)
5 min readMay 6, 2024

Weekly Comment

Last week, The Browser Company officially released the Windows version of the Arc browser. Known for its excellent tab management, diverse themes, and outstanding performance, Arc has made a significant impression on macOS and iOS platforms over the past few years.

Arc is primarily developed in Swift, and the progress of its Windows version has been widely followed. This launch on the Microsoft platform marks not only a success for The Browser Company but also a significant milestone for Swift as it expands beyond the Apple ecosystem. Saleem Abdulrasool, a member of the Swift core team and a software engineer at The Browser Company, along with his colleagues, has worked for years to successfully bring Swift to the Windows platform.

Recently, I conducted more tests on the SwiftIO Playground Kit from MadMachine. Thanks to Swift’s protocol-oriented programming features, developers can make minimal changes to use familiar tools and workflows to complete most embedded development tasks. This makes me even more excited and optimistic about the prospects of Swift in the embedded field.

All the above facts show that Swift is steadily moving forward, realizing its dream of application on a broader range of platforms.

Conversely, Google’s layoff announcement last week has introduced some uncertainties for Python and Flutter projects. Although Google claims that the layoffs are intended to foster better development and will not negatively impact these projects, the plan has clearly caused community unrest. Given Google’s history of readily abandoning product lines, even if these layoffs ultimately do not materially affect these projects, they could severely impact developers’ confidence and enthusiasm.

For open-source projects, while their open-source nature means they are not controlled by any single major company, losing support and investment from large companies can significantly slow their development and widespread adoption. Considering the importance of the Swift language to Apple, Swift developers need not worry about these issues for a considerable time.

Don’t miss out on the latest updates and excellent articles about Swift, SwiftUI, Core Data, and SwiftData. Subscribe to Fatbobman’s Swift Weekly and receive weekly insights and valuable content directly to your inbox.

Originals

Developing Embedded Applications with Swift

Fatbobman

In recent years, Swift has gradually shown its potential for cross-platform development. In this article, I will share some of my experiences and attempts at using the Swift language for embedded development on the SwiftIO development board. For me, using a high-level language like Swift to develop embedded code should not only leverage the rich features of the language itself but also fully utilize the advantages of its complete ecosystem and toolchain. Doing so not only embodies the characteristics of modern programming but also increases development efficiency, achieving more with less effort.

This article specifically discusses embedded development on MCU (Microcontroller Unit) hardware that does not have a Memory Management Unit (MMU), and does not cover devices like the Raspberry Pi that possess full general-purpose computing capabilities.

Recent Selections

How to Create a Privacy Manifest

Starting May 1st, Apple has officially implemented a new privacy manifest requirement, mandating that all apps submitted to the App Store include a privacy manifest file when using specific APIs or third-party libraries. Failure to comply with this requirement may result in the app not passing the App Store’s review process. The following two articles provide detailed steps and considerations for adding a privacy manifest.

The Curious Case of Apple’s Third-Party SDK List for Privacy Manifests

Jesse Squires

Apple’s privacy manifest initiative is undoubtedly a good measure to protect user privacy. However, there are some unclear aspects in its implementation and detailed regulations. In this article, Jesse Squires explores the peculiarities of the third-party SDK privacy manifest list: What exactly are the criteria for selecting these third-party SDKs? While there may be various possibilities for selection, one commonality should be that these libraries are widely used by apps currently on the App Store.

Designing a Swift Library with Data-Race Safety

Joseph Heck

Joseph Heck, the primary developer behind Automerge Swift, set a new goal while building a new supplementary library: to completely avoid data races, meeting Swift’s stringent concurrency check requirements. In this article, he shares the challenges and solutions faced in achieving this goal, covering the frameworks for solutions, selection of isolation types, testing, and integration testing, as well as his insights and outlooks. He hopes that this article will help other developers better understand and apply Swift’s data race safety features, thus designing safer and more stable libraries.

Learning Swift Data

Vincent Pradeilles

SwiftData has been released for nearly a year, and with the upcoming iOS 18 version, using SwiftData for data persistence is becoming more practical. Vincent believes now is the perfect time to learn this framework. A few weeks ago, Apple released a brand-new tutorial covering all the knowledge needed to start using SwiftData in iOS apps. Vincent will introduce the basics of SwiftData in a four-hour video session based on this tutorial. He believes that this training will equip you with enough knowledge of SwiftData to get started and solve problems effectively.

The Composable Architecture: My 3 Year Experience

Rod Schmidt

Rod Schmidt began using The Composable Architecture (TCA) as the state management framework for his projects from its early days. In this article, he shares his experiences and reflections from three years of using TCA, offering perspectives and suggestions on applying it in real projects.

Following the publication of this article, there was a lively discussion in the community about the applicability of the TCA framework. Whether or not you use TCA, understanding its fundamentals and the new ideas presented can benefit developers. Additionally, a member of the Arc development team, Darin Fisher, expressed full appreciation and thanks for the TCA framework in a tweet last week. He mentioned that thanks to TCA, the Arc project could easily share a large amount of code between macOS and Windows.

If you found this weekly helpful or enjoyed reading it, consider making a donation to support my writing. Your contribution will help me continue creating valuable content for you.
Donate via Patreon, Buy Me aCoffee or PayPal.

Want to Connect?

@fatbobman on Twitter

--

--

fatbobman ( 东坡肘子)

Blogger | Sharing articles at https://fatbobman.com | Publisher of a weekly newsletter on Swift at http://https://weekly.fatbobman.com