Weekly Comment
On November 22nd, the CEO turmoil at OpenAI finally came to an end with Sam Altman’s return. Along with his return, the company’s board of directors underwent restructuring.
In the past two weeks, I have been using ChatGPT intensively to help me create new projects (see the article in this issue of the blog for details). I’m not sure if it’s related to the recent events, but the stability of ChatGPT has been quite unsatisfactory lately. I hope that with the re-stabilization of the company’s management team, the quality of the service will also improve.
Despite the various news about the OpenAI incident flooding the timelines of social media last week, what actually caught my interest was a “party” initiated by designers and developers themselves: content interaction based on window position.
The “party” seems to have been triggered by this tweet. In the tweet, Bjørn Staal showcased a video demonstrating interaction between multiple browser window elements based on localStorage.
Soon, this idea inspired many designers and developers, who showcased their own implementations (@devdevcharlie, @nonfigurativ, @hakimel, @convey_it, @hungrydonke, @jw1dev), creating a spontaneous party.
If you are interested, feel free to join this “party”.
Originals
Pair Programming with AI
Over the past two weeks, with the assistance of AI, I have embarked on rebuilding my blog in an unfamiliar development environment using languages and frameworks that are new to me. Through this rebuilding process, I hope to gain some mastery of these new languages and frameworks. This article records some of my experiences working with AI.
Recent Selections
Checking Out Assistive Access
Regardless of whether it is the era of feature phones or smartphones, in the Chinese mobile phone market, senior-friendly phones, as a specialized category, occupy a considerable market share. Typically, these phones are characterized by long battery life, large fonts, loud sound, and large buttons. Starting from iOS 17, Apple has provided a similar mode on the iPhone called Assistive Access. Assistive Access is a unique iOS experience that allows users with cognitive disabilities to independently use the iPhone more easily. In this article, Jordan Morgan expresses his views on this mode and provides some suggestions after using it. The article points out that some deliberate steps are required to enable this mode because it is not a feature that can be casually switched and is intended for long-term (or permanent) use. The article concludes by noting the lack of an API to determine whether Assistive Access is enabled, which the author sees as a regrettable limitation to the potential of Assistive Access. The author hopes that Apple can provide more support to third-party developers, as they are also willing to contribute to this mission.
How to customize the macOS menu bar in SwiftUI
In this article, Daniel Saidi introduces how to customize the menu bar of a macOS app in SwiftUI. In addition to explaining the basic usage of CommandMenu and CommandGroup, the author also explores some advanced topics, such as handling menu commands in multi-window apps and implementing custom focus values (FocusedValueKey). The author provides clear examples and screenshots for each step, allowing readers to follow along and apply these techniques in their own SwiftUI apps to create more distinctive macOS menu bars.
Using Swift SDKs to cross-compile Swift packages to Linux
Cross-platform compilation is a common requirement in development. In Swift 5.8 and earlier versions, developers needed to use “destination files” to achieve cross-platform compilation, which was a relatively cumbersome process. Fortunately, Apple’s Swift team has greatly simplified this process by introducing Swift SDKs. In this article, Pol Piella Abadia provides a detailed explanation of how to retrieve, install, and use Swift SDKs using the Swift command-line tools. This article provides developers who wish to cross-compile Swift code on platforms such as Linux with detailed guidance and useful resources.
Swift JSON/Model Library Research
songgeb
This article is a summary of the author’s research on Swift code libraries used for JSON and model conversion. The purpose of the article is to find an easy-to-use tool that addresses some of the usability issues of Swift’s native Codable (which can solve the problem but often requires developers to manually write additional code). The article compares several different JSON libraries, including ObjectMapper, HandyJSON, KakaJSON, ExCodable, and CodableWrapper, and after considering the functionality, stability, integration cost, and minimum iOS version requirements, the author presents their own choice.
VisionOS: Debug Window
In the first quarter of next year, developers are expected to receive Apple Vision Pro. So, how can developers obtain debugging information when testing applications with the device? Yasuhito Nagatomo provides his solution in this tweet.