Sorry for missing it the first time, but these repeated calls are kinda wasteful.

How about something like:

```objc
name = NSFullUserName();
if (name.length == 0) name = NSUserName();
if (name.length == 0) name = @"nobody";
```