In the I have tested pretty much any Social Networking dektop client application out there, but I have never been able to find the perfect solution to my needs.
As a compromise I ended up using Tweetie to manage Twitter, Thwirl for FriendFeed and a few tabs in the browser for other things like Facebook and Buzz.
There are at least five important things I would like to see in the perfect Social Networking desktop client:
1 – Support for every Social Networking service I use.
There are dozens of desktop clients supporting Twitter, a few supporting FriendFeed and Facebook and very few with support for all of the others (e.g. Flickr). I would like to see all of these in one single client without the need to launch a bunch of applications when I fire up my computer.
Actually every single social network you are going to add to your desktop client is adding one layer of complexity in your application that you will need to manage. APIs change, sometimes very fast, social networks are given birth every single day and so on.
At least you, as a developer, should focus on the most popular and give the option to write plugins or add ons for others.
2 – Aggregate conversations
This the most important thing I would like to see in my client.
I mainly use FriendFeed as my entry point to all of the others social networks. As soon as I share something on FriendFeed it automatically posts the very same thing on Twitter and Facebook is picking up my Twitter stream an publishes it.
If I look at my audience on Twitter, FriendFeed and Facebook I can notice that they do not overlap so much.
What actually happens is that people start commenting, liking, sharing on each single Social Network and I have no option to see the conversation started from one single post in one unique place.
After I have posted something on FriendFeed I would like my desktop client to track the conversation on that item on all of my social networks, aggregate it, and present it to me in one unique item in my client.
I think there may be some nice information visualization techniques that you may use to display this information.
3 – Give the option to store contacts locally and merge them.
I would like to keep track of my contacts on the different social networks locally and have the ability to merge different identities in one single contact.
With this feature I would be able to check instantly what one contact is sharing on every social network and what comes in terms of conversation on the subject.
4 – Locally managed lists
I would like to have the options of creating local lists picking contacts from different social network and see at the conversations going on on that list.
That would help me minimize the noise when I have few time to spend at looking at what's going on.
5 – Advanced filters
Reducing noise is probably one of the features that I would use the most.
I would like to have the option to discard all those items containing a defined set of words or sentences. At the sames time I would like to have the option to see only those items containing another set of words or sentences.
6 – Aggregate similar content
If someone shares a link and my desktop client finds out that other contacts are sharing the same item I would like to see the conversation aggregated in one single item. At the end of the day everybody is talking about the same subject.
7 – Unified search
When I perform a search I would like the search to be extended on all of the social networks.
Finally all of this should be packed into a "lickable" User Interface with a great User Experience.