A hidden user is a user that can login to the system, but the account will not be displayed in the Login Window, where all of the other accounts on the machine are listed. In lab or work environments, it's often desired to have a hidden user that has Admin rights for administrative functions and/or other special circumstances.
In OS X 10.3 and prior all that you needed to do to hide a user from the login window was to create the account with a UID (user id) below 500 (all accounts normally created via the OS X GUI have UIDs greater than 500).
With the introduction of Tiger, things have changed. Tiger will now show (most) users, even if the UID is below 500, unless the account is UID 0 (root). The other variable that seems to stop the user (with a UID below 500) from being seen in the login window is if their default shell is set to /dev/null (other things might also cause the user to be hidden, but I don't know for sure). When we're talking about admin or special kinds of accounts, you most likely don't want to set the default shell to /dev/null ... so what to do...
Finally! Here's the hint. Tiger's login window preferences now supports a new setting called HiddenUsersList, which is an array of one or more user names. If you wanted to hide three users from the login window, the command to execute via the terminal would be:
sudo defaults write /Library/Preferences/com.apple.loginwindow \
HiddenUsersList -array-add account1 account2 account3
where account1, account2, and account3 are the short user names for the accounts you need to hide. This would add additional names to any that might already exist. To hide just one account, you'd simply type:
sudo defaults write /Library/Preferences/com.apple.loginwindow \
HiddenUsersList -array-add account1
As of 10.4.2, the default Tiger install doesn't have any user names automatically hidden. To unhide all the names you may have previously hidden, you could execute the following from the command line.
sudo defaults delete /Library/Preferences/com.apple.loginwindow \
HiddenUsersList
As always, make a backup of any preference file you might change so you can move back to it.

