Khoa Pham

Khoa Pham iOS Articles & Videos

Curated content from
Khoa Pham
Senior iOS and Web Developer at DNB. Runs onmyway133.com. Believes what you don't know is what you haven't learned.

Latest resources

What's new in Swift 6.4 at WWDC26

June 11, 2026

Swift 6.4 arrives with a set of language refinements and standard library additions that make everyday code cleaner and more expressive. This article walks through the most notable changes from WWDC26.

How to allow domains in WKWebView

June 9, 2026

When you embed web content in a WKWebView, you often want it to stay on a set of trusted domains. A login flow that wanders off to an arbitrary site, or a help page that turns into an open browser, is both a security and a product problem. There are two ways to control this. One is declarative, handed to WebKit through your Info.plist. The other lives in your navigation code, where you decide each request yourself.

How to create a toggle control widget in iOS

June 6, 2026

iOS 18 introduced interactive controls that live directly in Control Center and on the Lock Screen. Unlike widgets that only display information, control widgets respond to taps, letting users trigger actions without opening the app. A ControlWidgetToggle is the simplest form: it represents a boolean state and fires an AppIntent when the user taps it.

This article walks through building a Focus Session toggle. Tapping it starts or ends a focus block, and the control reflects the current state each time the user opens Control Center.

How to recognize text in images with Vision in Swift

May 16, 2026

Text recognition using Apple's Vision framework. The article compares the old API (VNRecognizeTextRequest with VNImageRequestHandler, synchronous perform, completion handlers) and the modern API introduced in iOS 18 and macOS 15 (RecognizeTextRequest, Swift native, Sendable, async/await). The modern version is cleaner: configure the request as a value type, call try await request.perform(on: image), get observations, extract top candidates. The article also covers recognition levels (.accurate vs .fast), language detection (automatic or manual), multi line documents, and the newer RecognizeDocumentsRequest for paragraphs instead of lines.

How to use isolated and nonisolated in Swift 6 concurrency

May 6, 2026

Two keywords that turn actor isolation from a wall into a precision tool. nonisolated opts a member out of isolation (useful for computed properties that read only constants, and for fixing delegate crashes from CLLocationManager and similar). isolated on a function parameter makes the function run directly on whatever actor you pass in. transaction closure pattern with isolated parameter lets you group multiple operations without multiple suspension points. #isolation captures caller isolation automatically. nonisolated(unsafe) is a migration escape hatch for legacy globals. isolated deinit in Swift 6.2. And the shift from nonisolated async always hopping away to nonisolated(nonsending) vs @concurrent.

About
Khoa Pham

Khoa Pham is a Senior iOS and Web Developer at DNB in Oslo, Norway, where he works on Mobilbank and Spare. He has been developing iOS apps since 2016, formerly at Shortcut AS working on the Cutters app, and at Hyper Interaktiv AS where he built apps including Cubus Friends, BikBok Life, Atea Community, TINE Handel, Displom Is Bilen, Motimate, MyCubus, and TINE Jakten. He also built the Grete Roede app using React Native. Khoa contributes to open source and shares his knowledge on his website onmyway133.com. His philosophy is simple: what you don't know is what you haven't learned.

In partnership with
Looking for your next iOS opportunity?

Join the Mobile Signal Talent Directory and make your profile visible to hiring teams searching for iOS talent.

Join the Directory
© 2026 Mobile Signal. All rights reserved.
Made by
Stan
linkedin