With all the service buddy lists and one tabbed chat window open, iChat has many duplicated elements, including four status dropdown menus and my own name repeated at least three times. That might be handy for those suffering amnesia, but most of us don’t have too much trouble remembering our own name.
What if the entire app was contained in a single window, like Coda or iOS apps?
Combining the various lists wouldn’t just save space, it’d also help eliminate confusion. That file Sarah is sending to you? The download progress bar is right under her name, not in another window. Want to start a new chat? Do it the same way you continue a chat, rather than using a different list in a different window.
Friends who are offline need not be shown. Friends who are away would be ghosted, eliminating the need to spray the interface with red dots, yellow dots, green dots and friends you can’t talk to. Extra services, like FaceTime, could be added without the need for yet another buddy list window.
The text chat button could be removed—chatting to someone via text is as simple as clicking their name once and typing. More information about file transfers could be contained within the chat itself, probably anchored to the top of the pane so the most recent comments wouldn’t be obscured. Audio chat could be contained in the chat pane or optionally detached. Video chat could also be contained in the chat pane, optionally detached or made full screen.
Adium, Chax and several other clients are already part way there—they combine all the services into one list, but they still typically show one window for friends, another for open chats and a third for file transfers.
I’m finding more and more that the best way to design desktop apps is to imagine you’re building them for iOS.