Alternative to Facebook
I found this article http://www.nytimes.com/2010/05/12/nyregion/12about.html about a bunch of guys creating an alternative to FaceBook. Here’s the thing, BuddyPress is all packaged and ready to go. The only thing it’s missing is the “node” concept they talk about. So that each individual can host their own site and connect with the sites of others via a meta-network…
Wow, 4 guys with $10,000 and an idea good enough to impress a NYT reporter on deadline. The future is changed forever!
But seriously, I do recall an audio interview with Andy Peatling more than a year ago where I think he floated an idea of BP networks all interconnected and talking to each other, and for all I know, this is a plugin or core feature in some state of alpha or beta. Maybe somebody with more awareness of the overall project can clarify.
Seriously, they’re up to $30k+ now. SO what do you think about adapting BP…
i’d hop on the bandwagon if someone could point me in the right direction…
Always good to have options. Four coders on the project sound good.
Here’s one thing that caught my eye when the Diaspora coders were talking about similar projects that failed (DiSo):
To answer directly, I am pretty sure DISO failed because:
1) They tried to add on to WordPress, a project which was not designed from the ground up to be a distributed network.
2) (a guess) they quickly tried to support all sort of features without building some sort of common infrastructure before trying to add functionality.
I would have replied and mentioned BP of course
But I also get their point.
“1) They tried to add on to WordPress, a project which was not designed from the ground up to be a distributed network.”
This really feels like the “elephant in the room” every time I visit my wp-admin panel. My BuddyPress admin menu keeps growing and growing, disproportionate to the WP-specific admin menus.
I keep waiting for the discussions to start on how BP is “outgrowing” WP. I guess that happens when the limitations of WP start to outweigh the advantages, such as all the great WP functions we get “for free”. When you think about it, it is a little weird – for example, how blogs and forums are integrated with BP in such different ways and don’t really “talk” to each other in a meaningful way. The whole idea of “like” and “favorite” and “report” buttons that work on one content type but not another. Etc.
“1) They tried to add on to WordPress, a project which was not designed from the ground up to be a distributed network.”
okay, here’s what I don’t get – isn’t MU a distributed network?
@andrea_r I’d say that MU isn’t distributed in the way that’s important here, because the data is all stored in the same db, on the same server (at least that’s how it works by default). In a truly distributed network, each individual/cluster of individuals would have full, sysadmin level control over his or her data. WP/BP is still largely under the control of the person who owns the particular machine where the stuff lives – if the owner decides to pull the plug, there goes the network.
Wow, amazing analysis by Boone… I really “get it” now. Andrea_r also has a good point though that WPMU is distributed in other ways that are meaningful and powerful. I think the author’s comment was just speculation, and limited to a project called “DiSo” that was apparently designed to integrate with WordPress; not sure if DiSo worked at all with MU.
The part about that quote that resonated with me is just the idea of “WP wasn’t designed from the ground up to host BP.” When I’m writing something for BP, I always feel like I’m gaming WordPress to do something it was not really designed to do. So I’m writing code that somehow has to play nice with the host, WordPress, which is awesome in its own right – but what I’m really trying to do is build a social network. So it would be more logical to me to say, “OK, here’s my BuddyPress network. WP is really good at XYZ, so how can I adapt *WordPress* to meet my BP needs?”
Boone is correct. A distributed (sometimes also called decentralized) network is when data are kept in different places, places that each user (be that an individual, group, or company) controls. WPMU, Twitter, Facebook, etcetera control the users’ data and experience. Although the data may be spread throughout a series of servers or even distributed server clusters, the data is controlled by one authority and is often considered locked into a closed data silo–even if that data silo is hosted in the cloud.
For more details on distributed social networking (with a Semantic Web twist) see my article, A Flock of Twitters: Decentralized Semantic Microblogging.
I was thinking about how to tackle that problem. What I envisioned would be that each member would have a “virtual calling card”. When they connect with someone in the decentralized network the person they connect with would store this (and only this) card in their database.
Essentially what would be included would be their basic, public information, including an rss of their news-stream. The effect would be as if you went to your facebook page. Just as in FB when you click on an album you go to that page, this would work the same way.
No one authority would need to manage this system.
To solve to WP/BP issues above I think that it would be really effective to leverage the is_user_logged_in() and current_user_can(‘administrator’) functions:
If a user is not logged in, it shows a regular theme, like any other blog.
If user is logged in it show the BP interface.
If user is admin it shows the BP dashboard.
This would effectively separate between wordpress and buddypress dashboards, as well as offer a person the ability to have a one-stop shop for their social and professional needs.
For the DB issues, bbpress requires it’s own table but shares the user table with wordpress, would this be an option?
Just read your article @Jeff_Sayre looks like you were thinking what I posted above already…
Who would I contact about getting involved in such a project?
I am game for getting involved in such a project. What frustrates me about Facebook is that they had the opportunity to link into the LOD cloud and did not take it. Their “Open” graph API pirates the concept of microformats, RDF, and schemas that have been around for years. They pretty much just took the ideas and made their own version. Bad form, I say!
What is missing from this conversation, though, is the idea that a distributed social network is not as much about where the data is and who controls it as it is about how the data is defined or “marked up.” So, yes, each person has that “virtual calling card” you define above, but it is in a standard XML file like RDF using a specific schema or “vocabulary” common to people who use a particular service. That RDF file, though, belongs to me, the user, and I can choose to add my affiliation with a specific network to that file or not.
Seems to me that what Mu (or the very excellent WordPress 3.0) needs is its own “vocabulary” within the LInked Open Data cloud to be a truly “open” distributed network.
Just my 2 cents…
@deltina more than 2 cents
Facebook has been hacking up technologies for a while (fbml for instance)…
I’ve been programming wordpress for a while now, but am relatively new to buddypress. Please correct me if i’m wrong, but isn’t the buddypress news feed built on such an feed? I turned to this community because I think that many of the pieces are in place already. I’m happy to devote what time I can to pushing such a project along.
@group what’s the first step?
I think the first stage, end-goal, is to create a way for connecting across-networks…
You are correct. Please read my article I linked to in my first post in this thread.
There are a few of us “Semantic Web / Linked Data” folk who are kicking around ideas to semantify BuddyPress. As far as turning WP into a distributed platform, that is too far beyond scope and would require a major rewriting of the foundational code.
@Jeff_Sayre I’d like to get involved if I can. I’ve been developing for wordpress for a while and would like to see how I can get involved in bp. Where would you recommend I start?
If you are asking where to start in helping turn WP / BP into a distributed social networking platform, I cannot say. That is currently not in the works. It would require a major rewriting of WordPress’ foundational core. If you are asking about the project I reference in my post, then it’s best to email me separately as that is beyond scope for the BuddyPress forums.
But, there may be a middle ground. A few of us are in the beginning stages of thinking about semantifying BuddyPress with the possible goal of enabling BP to use WebIDs as an alternative to OpenID, and to encode other semantic markup to enable BP networks to join the growing number of Linked Data applications.
Can I just counterpoint?
Chiming in here. I’m waiting for @apeatling to also talk more about this issue. Somebody mentioned DiSo. As I understood it, DiSo was more than just trying to systemically build distributed social networking out of WordPress or BuddyPress, but trying to do so through the establishment of more widely accepted protocols, i.e., the “social stack,” which included things like OpenID, OAuth, PortableContacts, and so forth. (“Social stack” is less of a buzz word today, but that was part of the beginning.)
I partly agree with the sentiment about WordPress needing implicit ground-up structural changes for the implementation of better social protocols, however, part of the problem @ the time actually had more to do with a lack of experience as well the protocols were still being nailed down. For example, we’re entering a second phase in all of this, as OAuth 2.0 is in the process of being released as a spec, and a 2nd iteration of OpenID will be issued as OpenID Connect — part of the problem also in the first place was these two protocols weren’t designed at the same time, so they didn’t work together conjunctively as well, but phase two here has the benefit of a foundation, so they can now build off each other. (See http://openidconnect.com/ and http://www.webmonkey.com/2010/05/new-openid-connect-proposal-could-solve-many-of-the-social-webs-woes/ )
There were also several other issues in flux, a major one being discovery. XAuth is providing a temporary solution for this going forward. Other less-known, but increasingly important protocols matured or are maturing rather rapidly: Salmon, PubSubHubbub, Activity Streams, to name a few.
That said, I think @Jeff_Sayre has been a little bit of a voice in the wilderness on all these matters. I just read this blog post of his http://jeffsayre.com/2010/05/15/repackaging-the-promise-of-the-social-semantic-web/ and it hit the nail ON THE HEAD for what’s staring everyone in the face. Sometimes things are so obvious that it’s hard to perceive them, you know?
That being said, can I just make one plea? Sometimes I hear a lot of the main BuddyPress developers intimate that they don’t really like the protocols being developed toward this end…the technology is wrong, etc., etc., and then there’s sometimes talk of how to do it right or how to do it better than the social stack.
I don’t involve myself *too much* in development here @ BuddyPress central, but I’ve been following development from the beginning, perhaps most especially with an eye toward distributing the social network beyond just one BuddyPress silo, and I do have a fairly solid view of the history of both the social stack and BuddyPress.
Can I just offer that we try and go with the flow of the protocols already being worked on in other arenas? The Internet Identity Workshop is taking place tomorrow (Mon. – Wed), it’s 10th session in just five years, and so much has happened and will continue to happen — just look at what’s on the agenda: http://iiw.idcommons.net/Proposed_Topics_IIW10 (Main site is here: http://www.internetidentityworkshop.com/ ) It’s true that these tend to be a lot of big players, i.e., Google, Facebook, MySpace, and so forth. But a lot of the people @ this particular workshop started out working small (like on DiSo), and have the interest of the open source community in mind. I sort of feel like I’m preaching to the choir, but I do think it’s really important that we all not forget the work that has already been done towards establishing solid protocols. In other words, instead of bitching about how to do things right, I think we ought to come to the IIW table, so to speak. These new internet standards have come a long way since then, and we still have a long way to go, so lets help make that happen.
By the way, it is exciting to see more buzz about all this on BuddyPress — I just hope it doesn’t fizzle. This is one area of development that actually excites me enough to insert my skillz/experience and help it along. (I actually tried it once before, but kind of went about it the wrong way, and didn’t really have a lot of help as consequence.)
Finally got around to reading your article – fantastic stuff. And, yes, it does make more sense to semantify BuddyPress rather than WP. I am very interested in getting involved with these efforts. I am presently swamped with getting the second edition of my Web 2.0 book finished, but when complete, am starting on the Web 3.0 book. All of the issues you tackle are so important to get out there to laymen – I am so excited to get moving on writing about them…
Thanks for the compliment.
I can see that you are passionate about this issue. It is good to see more people raise the banner of distributed open source social networks. Do you have much experience with Semantic Web protocols?
An update on what I’ve been doing with regards to this issue:
I’ve been holding secret, high-level discussions in my ancient, giant sloth cave about how the BP community should go about implementing SemWeb protocols in BuddyPress. Well, it seems like I’ve been in a cave as it has been difficult to get people excited about the prospects of bringing the Semantic Web to BP as most do not yet understand the benefits. Fortunately, there is a small but growing group of people that are excited, that do understand the virtues of semantifying BP. @djpaul and I plan to look into the best approaches to tackle the overall issue of BP semantification. He has also attracted another developer to join the cause.
There are more people starting to take interest as well. I spent part of today discussing with Henry Story the prospects of using BuddyPress as a test case platform for brining a solid Semantic Web implementation to an open source social networking project. One of the first projects might be a SSO (single sign on) plugin using WebIDs.
So, strides are being made, albeit small ones at this time. It is not clear whether WP / BP can be crafted to become a fully-functioning distributed social networking platform but it is the best place to start.
It is not clear whether WP / BP can be crafted to become a fully-functioning distributed social networking platform but it is the best place to start. < or is Drupal?
@jeffsayre I’ve chatted on a few occasions w/ @djpaul about distributive technologies w/ regards to BuddyPress. (Actually, I talked w/ @apeatling & @johnjamesjacoby during WordCamp NYC 09 about some of the possibilities, too.) I would say I’m much more aware of the semantic protocols. I actually haven’t ever delved into the stack, but I’m excited to do it. I’ve read several of your posts over the last year. I keep track of Messina, Smarr, Shephard, Hammer-Lahav, Recordon, and other advocates…
…I started out with the interest in just getting my own site running on the stack. But my interest kind of snowballed, and now I’m pretty much thoroughly all around passionate about it. I’ll set myself up so I can start working. Maybe just tell those of us who want in where to go.
- The topic ‘Alternative to Facebook’ is closed to new replies.