NSHipster

NSHipster is a journal of the overlooked bits in Objective-C, Swift, and Cocoa. Updated weekly.

Latest articles

As We May Code

Chris Lattner often describes LLVM as a process of lowering. You start at the highest level of abstraction, source code written in a programming language like Swift or Objective-C. That code is parsed into an abstract syntax tree, (AST), which is progressively transformed into lower-level,...

WWDC 2020

Like everything else in 2020, this year’s WWDC had to be a little different if it was going to happen at all. When Apple first announced that the conference would be fully remote, nobody knew what that would look like, exactly. What parts of the dubdub experience would be kept in this new format? ...

Cross-Pollination

April is the month when apple trees start to bloom up here in the Pacific Northwest. All across Oregon’s Willamette Valley, from Portland stretching south to Eugene, long-barren branches sprout white, 5-petaled blossoms tinged with pink. Any other year, our family would be taking weekend trips...

Contact Tracing

An ounce of prevention is worth a pound of cure. Early intervention is among the most effective strategies for treating illnesses. This is true not only for the human body, for society as a whole. That’s why public health officials use contact tracing as their first line of defense against ...

Swift Logging

In 2002, the United States Congress enacted the Sarbanes–Oxley Act, which introduced broad oversight to corporations in response to accounting scandals at companies like Enron and MCI WorldCom around that time. This act, PCI and...

Static and Dynamic Callable Types in Swift

Last week, Apple released the first beta of Xcode 11.4, and it’s proving to be one of the most substantial updates in recent memory. XCTest got a huge boost, with numerous quality of life improvements, and Simulator, likewise, got a solid dose of TLC. But it’s the changes to Swift...

RawRepresentable

Programming is about typing. And programming languages are typically judged by how much they make you type — in both senses of the word. Swift is beloved for being able to save us a few keystrokes without compromising safety or performance, whether it’s through implicit typing or ...

@

Birdwatchers refer to it as (and I swear I’m not making this up) “Jizz”: the general characteristics that form an overall impression of a thing. Walking through the forests of the Pacific Northwest, a birder would know a nighthawk from other little brown jobs from its distinct vocalization,...

Objective-C Direct Methods

It’s hard to get excited when new features come to Objective-C. These days, any such improvements are in service of Swift interoperability rather than an investment in the language itself (see nullability and lightweight generics). So it was surprising to learn about this recently merged...

Swift API Availability

Code exists in a world of infinite abundance. Whatever you can imagine is willed into being — so long as you know how to express your desires. As developers, we know that code will eventually be compiled into software, and forced to compete in the real-world for allocation of scarce hardware...

Discover, share and read the best on the web

Subscribe to RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters! Get unfiltered news feeds or filter them to your liking.

Get Inoreader
Inoreader - Subscribe to RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters!