[buddypress-trac] [BuddyPress] #1493: Deprecate Friends component and replace with Personal Group type

buddypress-trac at lists.automattic.com buddypress-trac at lists.automattic.com
Wed Dec 23 07:19:29 UTC 2009

#1493: Deprecate Friends component and replace with Personal Group type
Reporter:  johnjamesjacoby  |       Owner:  johnjamesjacoby
    Type:  enhancement      |      Status:  new            
Priority:  major            |   Milestone:  Future Release 
Keywords:                   |  
 Since "friends" are just a group of users, the thought is you could ditch
 the "friends" component all together in lieu of letting users create their
 own personal groups, where they pick who's in them rather than people just
 joining them.

 People could request membership the same as they do now, except with this
 method "friends" reaps the benefits of everything the groups API can do.
 This would solve the group activity feed/list/filter issue also, since my
 private groups of friends would just show up as another group to view and
 post to.

 It would solve Jeff Sayre's user relationship issue too, because then he
 could create 10 private groups and call them what he wants and put people
 in them however he wants.

 Our fear is that this might over complicate the groups component, so
 making the UI easy to understand is critical if we go this route. It also
 blurs the lines as to what "groups" actually represent.

 What I notice on testbp.org is that when people join the site, they
 immediately do three things. Check out the activity wall, join groups, and
 add friends. This would simplify the group/friend process and make it a
 one shot deal.

 Other open source software works similarly. phpBB uses groups in a way
 that works on both an Access Control level, and a friends/foes/ignored
 users type of level.

 If we introduced a "system" group type, you could basically have site-wide
 moderators, site-wide contributors, etc... Groups of users that have their
 own forums, activities, members, and scopes.

 My theory for how this works is a lot like Twitter's lists, only they work
 in both directions. Not only is it a group of people that I know, the
 people I've added to that group now can talk back and forth to one another
 because I've added them as a "friend." It's a way for my circle of friends
 to talk using me as the center.

 In the group creation process, I just imagine seeing an extra option for a
 "personal" group type, and maybe a "system" type if we expand it that far.

 These groups act like hidden groups, except people can request to be in
 them, as well as the group admin being able to add anyone to the group
 they wanted.

 DB migration wouldn't be too hard. Just make new groups called "friends"
 for each user, and add the user_id's that everyone already has as friends.

 URI's would need to be mapped away from /groups to
 /members/john/groups/group_name instead.

 The "friends" component then could be replaced with something similar to
 the "follow/followers" model of Twitter. Something a little lighter and
 less meaningful than a group or a friend.


Ticket URL: <http://trac.buddypress.org/ticket/1493>
BuddyPress <http://buddypress.org/>

More information about the buddypress-trac mailing list