Unify Type Properties and Methods

The coexistence of ‘static’ and ‘class’ keywords is confusing. We should unify type properties and methods in Swift.

Expose Mutable Properties as Immutable

It is a common API design pattern. But how to do it in Swift is not well known.

iBand + iPod > iWatch

iWatch, no. iBand and new iPod, yes. iBud, maybe.

View Controller Actor Chain

How to use UIViewController actor chain on iOS 8 and how it is implemented.

Objective-C Initializer Design Rules

Rules to follow when designing initializers.

The Inconsistent Order of View Transition Events

Code depending on the order of view transition events is dangerous for it is so inconsistent.

The Complete Objective-C Messaging Flow

How do method lookup, dynamic resolution and message forwarding work together in objc_msgSend?

Delegate VS Block in API Design

Wherever delegate works block also works, but sometimes delegate is still a better choice in API design.

A Surprising Corner Case of Using NSNotification, NSOperationQueue and GCD

I found a very interesting corner case of using NSNotification, NSOperationQueue and GCD. Without precaution, I dare say 99% of experienced iOS/OS X developers would fall for it.

The Danger of Invisible Pools

The danger is in the invisible. The danger is in regions that are out of your control.