NSLocale
Internationalization is like flossing: everyone knows they should do it, but probably don't. And like any habit, it becomes second-nature with practice, to the point that you couldn't imagine not doing...
View ArticleUIAccessibility
We all want to help one another, human beings are like that. - Charlie ChaplinYou know what I wish everyone would copy from Apple? Their assistive technologies.iPhones and iPads--magical as they...
View ArticleNSCharacterSet
As mentioned previously, Foundation boasts one of the best, most complete implementations of strings around.But a string implementation is only as good as the programmer who wields it. So this week,...
View ArticleUICollectionView
UICollectionView is the new UITableView. It's that important.This is not to say that collection views are in any way unknown or obscure--anyone who went to any of the WWDC sessions about it, or got to...
View Article#pragma
#pragma declarations are a mark of craftsmanship in Objective-C. Although originally used to make source code compatible between different compilers, the Xcode-savvy coder uses #pragma declarations to...
View Article@
Birdwatchers refer to it as (and I swear I'm not making this up) "Jizz": those indefinable characteristics unique to a particular kind of thing.This term can be appropriated to describe how seasoned...
View ArticleAddressBookUI
Address Book UI is an iOS framework for displaying, selecting, editing, and creating contacts in a user's Address Book. Similar to the Message UI framework, Address Book UI contains a number of...
View ArticleNSLinguisticTagger
NSLinguisticTagger is a veritable Swiss Army Knife of linguistic functionality, with the ability to tokenize natural language strings into words, determine their part-of-speech & stem, extract...
View ArticleUILocalizedIndexedCollation
UITableView starts to become unwieldy once it gets to a few hundred rows. If users are reduced to frantically scratching at the screen like a cat playing Fruit Ninja in order to get at what they...
View ArticleNSURLProtocol
iOS is all about networking--whether it's reading or writing state to and from the server, offloading computation to a distributed system, or loading remote images, audio, and video from the...
View ArticleNSValueTransformer
Of all the Foundation classes, NSValueTransformer is perhaps the one that fared the worst in the shift from OS X to iOS. Why? Well, there are two reasons:The first and most obvious reason is that...
View ArticleNS_ENUM & NS_OPTIONS
When everything is an object, nothing is.So, there are a few ways you could parse that, but for the purposes of this article, this is all to say: sometimes it's nice to be able to drop down to the C...
View ArticleNSOrderedSet
Here's a question: why isn't NSOrderedSet a subclass of NSSet?It seems perfectly logical, after all, for NSOrderedSet--a class that enforces the same uniqueness constraint of NSSet--to be a subclass of...
View ArticleKVC Collection Operators
Rubyists laugh at Objective-C's bloated syntax. Although we lost a few pounds over the summer with our sleek new object literals, those Red-headed bullies still taunt us with their map one-liners and...
View Articleinstancetype
Want to know what's coming next in Objective-C? Keep your ear to the ground.Objective-C is a rapidly evolving language, in a way that you just don't see in established programming languages. ARC,...
View ArticleCGGeometry
Unless you were a Math Geek or an Ancient Greek, Geometry was probably not your favorite subject in high school. No, chances are that you were that kid in class who dutifully programmed all of the...
View ArticleReader Submissions - New Year's 2013
In celebration of the forthcoming year++, I thought it'd be fun to compile a list of some of your favorite tips and tricks of the trade--to give y'all a chance to show off some of your NSHipster...
View Articlenil / Nil / NULL / NSNull
Understanding the concept of nothingness is as much a philosophical issue as it is a pragmatic one. We are inhabitants of a universe of somethings, yet reason in a logical universe of existential...
View Article__attribute__
A recurring theme of this publication has been the importance of a healthy relationship with the compiler. Like any craft, one's effectiveness as a practitioner is contingent on how they treat their...
View ArticleNSLocalizedString
Strings are perhaps the most versatile data type in computing. They're passed around as symbols, used to encode numeric values, associate values to keys, represent resource paths, store linguistic...
View Article