Is there anything wrong with doing something like
NSString * string = [ [ NSString alloc ] init ];
...
[
Setting an instance variable to nil is more useful in a multi-threaded application than a single-threaded one, since with multiple threads you can't always guarantee that an instance variable will only be read before it's released.
I generally don't bother in single-threaded applications, unless there's some other compelling reason.