iChat sorts the buddy list in two passes, first by a user's state (available, idle, or away) and second by something by login time or most recent activity; I'm not really sure which. I'd prefer my users to be sorted first by user state and then alphabetically. Here's how: Open a terminal window and type:
defaults write com.apple.iChat BuddyList.SecondarySortOrder 2Now quit and restart iChat (if it was running), and your buddy list will be sorted by availability and then by alpha.
Mac OS X Hints
http://hints.macworld.com/article.php?story=20040115154324513