Saw this post on Bill Ives' blog and thought I'd reprint it:
Cesar Brea was one of the panel participants at the January New England KM Cluster. His panel covered the role of technology in social networking. Cesar is the former head of Contact Network Corporation, an enterprise social networking software startup and now is a consultant and on the Executive Board of .LRN, an open source learning platform that includes blogs. I asked him to summarize what makes good technology for social networking applications. He replied with a good summary which is repeated in a recent post on his blog. I want to provide the main points below but also encourage you to go to his blog as Cesar has some nice long essays on industry issues. He is also a case in our blog book.
To answer this, Cesar said the logical thing is to ask first, "What makes a good social networking application?"
”In summary, you have to have something valuable to exchange, and not lose it in a thicket of other junk. Second, you have to group users into tight "affinity groups" within which they are likely to share. Finally, third, you have to make both contributing and consuming information really easy.”
So then you ask yourself the following questions about technology:
1. at what cost can I modify it to focus the feature set only on the one or two things that are most valuable to exchange?
2. does its scheme for defining and managing groups and permissions support the affinity group structure I think will maximize sharing?
3. at what cost can I modify it to support the simplest possible structured contribution and consumption of what's shared?
Generally speaking, the first and third of these are easy if you're custom-building a web app. Any good package should also make them easy.
The second is hard. The right way to do it is with abstractions that support inheritance of group properties and permissions. But abstractions can be seriously slow if not done well. (Getting this right is part of what makes OpenACS/.LRN really special.)”