Using WebKit to call WKWebView Javascript from Swift and Swift from Javascript

Many mobile applications incorporate remote web pages, either as passive (static) content — or as in this case as integral parts of the UI. Using the WebKit/WKWebView techniques presented here, your native apps can be better integrated with web content and provide a superior experience to end-users.

Flexible and Easy Unit Testing of CoreData Persistence Code

Modern and high-quality iOS applications are expected to perform flawlessly. An important input to ensuring flawless, regression-resistant code is to add comprehensive unit and integration testing as part of the development process. This article steps through a methodology for building repeatable, automated database unit tests for iOS applications using CoreData as their persistence layer.

Configuring a UIScrollView in a Storyboard — with no code!

To understand how to setup a scrolling UIView within a UIScrollView, first we need to understand the views that will be involved, and how they relate to each other. Once we understand this, the concept of scrolling views becomes much simpler to understand and configure.

Creating an iOS Chat Bubble with Tails in Swift — the easy way

To understand how to setup a scrolling UIView within a UIScrollView, first we need to understand the views that will be involved, and how they relate to each other. Once we understand this, the concept of scrolling views becomes much simpler to understand and configure.

Benchmarking Xcode Builds

I recently started working with a fairly large iOS/Swift code base — one which takes several minutes to complete a full build from a clean folder. Since I have several macOS workstations on-hand, I naturally was curious how they compare in my most common use case — developing Swift iOS applications. Is there one that would give me less time to fetch a cup of coffee during a full build?

Big Improvements in iOS10 Swift3 CoreData

Having a built-in relational database in iOS via CoreData is a pretty nice feature of the mobile OS. I’ve always liked using it, but like many developers I’ve never appreciated the volume of boilerplate code to create and maintain just to setup the basic scaffolding in a new project.