Author
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
Tips On Small-Screen Development
Most of the development team here at BiTE are very well supplied with screen real estate; in fact, I can’t believe how wide and how numerous their monitors are. Very often, someone shares their screen with me, and it’s so insanely wide that it’s almost impossible to see it on my screen, because it has …
Swift 5.5: Asynchronous Looping With Async/Await
In an earlier article, I introduced the Swift 5.5 async/await syntax that lies at the heart of Swift’s new structured concurrency. To do so, I demonstrated how to replace a common use case of Grand Central Dispatch (GCD) — switching from the main thread to a background thread and then back to the main thread …
Swift 5.5: Asynchronous Looping With Async/Await Read More »
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 …
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 …
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 …
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 …
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 …
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 …