Calling [[TWTObserver alloc] init] doesn’t produce a usable object. Either expose properties, override –init to call one of your other initializers, or have it raise an assert ([self doesNotRecognizeSelector:_cmd]).