[development] social network module

Albert Wong ajwwong at alumni.princeton.edu
Sun May 28 21:30:30 UTC 2006

Greetings - I don't generally post here, but I read your comment re: social
networking and I didn't want it to fall through the cracks..


. so I just wanted to give you a little bit of (hopefully helpful) guidance,
regarding which direction to take, in case you're looking for some.  On dev
/ your 5.26.06 posting / it seemed as if you were trying to decide whether
to go for developing either...


(1) "social networking" capabilities, a la orkut -- for drupal end users --

(2)  or network analysis -- for drupal admins.


Personally, my vote is for polishing up the social network capabilies of
drupal for end users, a la orkut.  


[In fact, (1) might be a prerequisite for a successful deployment of (2).
Reasoning:   without adequate SN capabilities, there might be little network
infrastructure to analyze.]  :-)


Anyhow, that's my current interest and bias and in case you've elect to go
that route, I've done some investigating of what drupal already has on
offer, so could hopefully give you a bit of a head start.  There's
definitely stuff you can build on, although there's also quite a ways to go.


The principal social networking tool available in Drupal, imho, currently,
is Drupal's "buddylist.module" which is supposed to be the rough equivalent
of the common "friends" function you find on all the popular SN sites,
orkut, myspace, etc.  


The module is well written and well documented.  So, I would consider
building off of it.  


However, this module has two significant drawbacks, 


(1)  First, under its current cvs setup, *buddy relations are not
symmetrical*.  That is, if A is buddy of B, it does not imply that B is
buddy of A.  That is, buddylist treats friendship relationships as
*directional*, rather than *mutual*.  This creates some confusing scenarios
-- for example -- under the current setup, you can have the following


"Jack is buddies with Jill, but Jack is not buddies of Jill, where as Jill
is not buddies with Jack, but Jill is buddies of Jack"  


[Did you get that?  ;-)]


Although there might be some very unusual special cases where a
unidirectional friend relationship might be useful, this is clearly,
generally, not the common semantic case.  


(2)  Second, currently, *buddy relationships may be unilaterally
determined*.  That is, A can unilaterally decide to declare that he is
buddies with B, regardless of B's consent.  That is, for example:


"Quasimodo, the crazy stalker, can decide *on his own* that he's buddies
with Esmerelda, even though Esmerelda has placed a restraining order on


Again, this unilateral capability is not standard in the common usage of
buddy relationships as a social networking tool - and for good reason, I
believe.   Generally, buddy relationships are mutually and *consensually*


There are other more superficial issues regarding the polishing of
buddylist, but these two issues strike at the core of it, and should be
tackled first, imho.  


A solution to these two issues above has been posted as a patch here
http://drupal.org/node/11892 -- it is patch that I wrote -- with help from
RobRoy -- and functions without a hitch on my site, www.ithou.org .  This
patch replaces the "asymmetric" / "non-consensual" framework with one that
is "symmetric" and "consensual".  It is still awaiting review.  I imagine
that you could assist in that polishing and review process and as part of
your SoC contribution, you could help move Drupal and buddylist into a more
solid social networking platform.


Should this be of interest to you as part of your SoC project, please do not
hesitate to contact me.  





albert [at] ithou.org


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20060528/96341076/attachment.htm

More information about the development mailing list