If you’ve ever been told to “file a Radar” and wondered what that meant, this week’s article has just the fix.Continue Reading
Code structure and organization is a matter of pride for developers. Clear and consistent code signifies clear and consistent thought.Continue Reading
NSHipster returns to weekly publication, with new articles every Monday, updates every Wednesday, and new trivia questions every Friday.Continue Reading
Not all code can be glamorous. In fact, a lot of the low-level infrastructure that makes everything work is a slog of boilerplate.
Some find regular expressions impenetrably incomprehensible, thick with symbols and adornments, more akin to a practical joke than part of a reasonable code base. Others rely on their brevity and their power, wondering how anyone could possibly get along without such a versatile tool in their arsenal. Happily, on one thing we can all agree: In
NSRegularExpression, Cocoa has the most long-winded and byzantine regular expression interface you’re ever likely to come across.
Our fourth annual WWDC NSHipster Pub Quiz! Nearly two hundred developers, teamed up and competing with themselves and each other for a chance to ask: “Wait, what?” It’s time for the home edition—sharpen your pencil and give it your best!
Make no mistake, a tiny keyboard on a slab of glass doesn’t always lend itself to perfect typing. Whether for accuracy or hilarity, anyone typing on an iOS device notices when autocorrect steps in to help out. You might not know, however, that UIKit includes a class to help you with your user’s typing inside your app.
With 2015 behind us and the new year begun, it’s time again for an NSHipster tradition: reader submissions! As in year’s past, this installment is chock full of tips and tricks that can help ease your days working with Xcode, Swift, and Objective-C.
Recently, Swift 2.0 introduced two new control statements that aim to simplify and streamline the programs we write:
defer. While the first by its nature makes our code more linear, the other defers execution of its contents. How should we approach these new control statements? How can
defer help us clarify the correspondence between the program and the process?
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 uncertainties. As a physical manifestation of a logical system, computers are faced with the intractable problem of how to represent nothing with something.
Conversion is the tireless errand of software development. Most programming tasks boil down to some variation of transforming data into something more useful.
Product design is about empathy. Knowing what a user wants, what they like, what they dislike, what causes them frustration, and learning to understand and embody those motivations in design decisions—this is what it takes to make something insanely great.
Xcode key bindings and gestures not only shave off seconds of precious work, but make you look more confident, competent, and cromulent in the process.