Author

Avatar image

Matt Neuburg

Senior Mobile Engineer

Matt has been writing and updating his well-known iOS programming books every year since 2010, and is widely considered a foremost educator about Swift, Xcode, and Cocoa. He has also written the definitive guide to AppleScript, as well as some other programming languages. He makes tech topics not only readable but enjoyable. Matt is also a former Classics professor. This means he can read Ancient Greek, which rarely comes up in iOS programming, but is really cool.

Published Posts

Swift 5.5: Replacing GCD With Async/Await

Multithreading! The mere word sends shivers up one’s spine. And if it doesn’t, it should. Main thread and background threads. Code that runs asynchronously. Code that can run simultaneously with other code. Code that can run simultaneously with itself. Code that can share data across threads — possibly with disastrous consequences. Concurrency. Multithreaded code is …

Swift 5.5: Replacing GCD With Async/Await Read More »


Understanding Git Merge

Carrying on from my earlier article about some ways in which Git is commonly misunderstood — and how I think one should understand Git — I’d like to dive a bit deeper into one of the most important things Git knows how to do: merging. If Git is often misunderstood, merging is one of the …

Understanding Git Merge Read More »


Of Git and GitHub, Master and Main

Following on from my earlier blog post on understanding (and misunderstanding) Git, let’s dive deeper into some individual Git topics. Today’s article is about the branch names master and main. It’s the story of a change in the policies, at GitHub and within Git itself, about what the default initial branch name should be. This …

Of Git and GitHub, Master and Main Read More »


Taking Control of Rotation Animations in iOS

We all love to have animation in our app’s interface. But sometimes writing even the simplest animation can be rather elusive. Rotation is a case in point. As you probably know, the way to rotate a view (or a layer) is to change its transform, applying a rotation transform to it. But certain rotations are …

Taking Control of Rotation Animations in iOS Read More »


Picturing Git: Conceptions and Misconceptions

Usually, I write on this blog about matters directly related to developing for iOS on a Mac. I typically talk about Xcode, the Swift language, and of course iOS itself (in particular, aspects of Cocoa Touch and related frameworks). Today I’d like to switch gears and talk about another development-related topic that’s near and dear …

Picturing Git: Conceptions and Misconceptions Read More »


Cta image

Keep In Touch

Get the latest news, articles, and tech tips right in your inbox.

Little Swift Tricks: Boxing Multiple Types

Here’s a little Swift language trick I sometimes use — more often than you might suppose, actually. As I’m sure you know, Swift is very strict about the types of its objects. You have to declare clearly what type a reference is, and from then on, you have to stick to that. That’s one of …

Little Swift Tricks: Boxing Multiple Types Read More »


Night Thoughts on Testing iOS In-App Purchases

What’s the business model for an iOS app? If you aren’t just distributing an app as a freebie out of the goodness of your heart (several of my apps do work that way), and if you aren’t being paid directly by a client to create or maintain the app in the first place, and if …

Night Thoughts on Testing iOS In-App Purchases Read More »


Picking a Photo in iOS 14

If your app puts up an interface where the user gets to choose a photo from the photos library, you’re probably familiar with UIImagePickerController. Indeed, you’re probably all too familiar with it. UIImagePickerController is a remarkably clunky, aged piece of interface, both from the user point of view and with regard to its programming API. …

Picking a Photo in iOS 14 Read More »