Advertisement
A couple posts back, I gave my perspective on the recent TOU changes, and shared some of the difficulty that we have all had going through this process. Mike then mentioned his disappointment in Tribe, mentioning that he had thought that Tribe got it - when in fact we may not have. It should be quite evident at this point that if you intend to build a social network of your own, you had better build in from the ground up some sort of "constitution" by which all members must abide, and you *must* include mechanisms though which violators are brought to justice.
I would be interested in hearing what some of you would do in the "blue sky" situation, where you are able to start from scratch and build a social system from the ground up. An interesting (if legally dicey) idea that Mike put forth in the previous thread about this topic was that a decentralized system could be designed where federated nodes form the basis of the social network, with a centralized index perhaps for finding content across all those nodes. If such a system were in place, then the person "running the site" is the person who is hosting that part of the network. I would view this as a more technological solution to the problem, where tribes and profiles could be kept on distributed nodes of the network and the tribe surfing experience may actually land you on different domains, but all of which are running an instance of the network-ready, distributed tribe software. Clearly this is a paradigm shift from what we have today in this space, but I am positive that someday it will happen.
The other approach is to stay centralized but to get far more elaborate with the mechanisms that you have in place for displaying content, while at the same time putting in place equally elaborate mechanisms for allowing people to punish bad citizens in the same way that we enforce law & order in the real world (1st Amendment and all). The reason that the former is needed is that for a site to benefit from the network effect, it must be inviting to all kinds of different people. The reason that the latter is needed is so that people will still feel safe on the site and will not be freaked out by the occasional over-zealous troll.
I have thought some about how this would be built from the ground up, either going with the paradigm shifting "Federated Social Network Network" or by going the other direction and building into the platform a Constitution and fair enforcement policy. Now I look to you, dear reader, for your ideas on the topic. I would have posted this in Social Software Intellectuals or another such tribe, but I have come to like this forum better for certain discussions - this is more like chatting over a beer, mostly with people that I have actually met. I'm buyin!
I would be interested in hearing what some of you would do in the "blue sky" situation, where you are able to start from scratch and build a social system from the ground up. An interesting (if legally dicey) idea that Mike put forth in the previous thread about this topic was that a decentralized system could be designed where federated nodes form the basis of the social network, with a centralized index perhaps for finding content across all those nodes. If such a system were in place, then the person "running the site" is the person who is hosting that part of the network. I would view this as a more technological solution to the problem, where tribes and profiles could be kept on distributed nodes of the network and the tribe surfing experience may actually land you on different domains, but all of which are running an instance of the network-ready, distributed tribe software. Clearly this is a paradigm shift from what we have today in this space, but I am positive that someday it will happen.
The other approach is to stay centralized but to get far more elaborate with the mechanisms that you have in place for displaying content, while at the same time putting in place equally elaborate mechanisms for allowing people to punish bad citizens in the same way that we enforce law & order in the real world (1st Amendment and all). The reason that the former is needed is that for a site to benefit from the network effect, it must be inviting to all kinds of different people. The reason that the latter is needed is so that people will still feel safe on the site and will not be freaked out by the occasional over-zealous troll.
I have thought some about how this would be built from the ground up, either going with the paradigm shifting "Federated Social Network Network" or by going the other direction and building into the platform a Constitution and fair enforcement policy. Now I look to you, dear reader, for your ideas on the topic. I would have posted this in Social Software Intellectuals or another such tribe, but I have come to like this forum better for certain discussions - this is more like chatting over a beer, mostly with people that I have actually met. I'm buyin!
Advertisement
Advertisement
-
Re: Social Network Framers...
Fri, December 30, 2005 - 4:32 AMI think it all boils down to identity.
Social software networks have a low barrier to entry, they're far more accessible to people, setting up an identity is easier, but you never own that identity. You're subject to someone else's discretion and their rules.
Leaving at the edge (of the network) by creating, publishing and hosting your own content has a higher barrier to entry. It requires more effort, but it also pays dividends. You get to own your identity, your content, your network.
You have a parallel in the housing market, some people prefer to rent while other people prefer to own. It usually boils down to maintenance and cost, but a change in the market could influence people to shift their position.
With blogging becoming easier, more people who currently rent will choose to own. A change in TOU, or anything that causes people to re-evaluate their identity with a service provider, is also a good cause to change from renter to owner.
I think in 2006 we're going to see a lot more people renting through social software networks, there are a lot of people who are yet to realize networking onlne. But we're also going to see more people choosing to own what they currently rent.
When you say "someday it will happen", I can only reply with "the future is here, it's just not evenly distributed". -
-
Re: Social Network Framers...
Sun, January 1, 2006 - 11:29 PMThe owning vs. renting analogy is a very effective demonstration of what I think about when considering "framing" a social network. Many have finally come to the conclusion that, at the end of the day, Tribe always did own the TOU, the site, and the machines on which the site runs - just as your landlord owns the dwelling in which you live and imposes rules that you must choose to abide by or move on.
When it comes to "owning" space in this theoretical real estate market, the technological questions become quite interesting. Similar to Movable Type, one could imagine a Social Network that comes in the form of a downloadable package that, when installed and started, will instantly connect in to the network and make it's individual profiles, groups, and other micro-content known. In other words, this could be the downloadable Tribe.net that allows users to express themselves as they see fit while at the same time participating in a larger, federated network of host machines running this same software.
This plays off of your assertion that blogging is becoming easier (which is obviously true), but with the potential to be FAR more powerful. Imagine a Movable Type style product, i.e. one that is downloaded and installed on a machine of the user's choice, that allows for structured blogging (i.e. create your own ratings, reviews, blog entries, events, etc.), federated identity, and social graphing across distributed machines.
You can still have your friends and your friends of friends, and you can still belong to groups that live on your installation or on someone else's installation (or on Tribe's or some other major provider's installation). You are then subject to the Terms of Use imposed by that installation. The Burning Man folks can have their own colony in the larger network, where they are able to do as they please. In fact, a provider may even choose to host profiles and charge rent on their machines to host those profiles to cover the operational costs of keeping their installation up and running. But by distributing the processing and the responsibility, it may then be possible to separate the Tribe TOU issue into its cultural and technical components, and to allow humans to solve the cultural issues and to allow programmers (also normally considered to be humans) to solve the technical issues.
-
-
Re: Social Network Framers...
Sun, January 1, 2006 - 10:49 PMErk. didn't mean to post that, but I slipped my fingers...
Anyway, as I was saying,
I've given a fair amount of thought to this problem, to the point of actually starting to implement some of the building blocks. It's a mixture of social conventions among peers that are either encouraged or enforced by the underlying technology.
The core of the solution is to create a transportable identity. This identity would be in the form of some fully qualified unique identifier (say, a GUID) that maps to a description of the person behind that identifier. Each organization within the federated network would be running a web service that, when fed an identifier, would be able to return an XML blob describing the entity behind that identifier (what we in tribe would call the data that makes up a profile). The owner of that identifier can move the "home" storage of the XML as needed between organizations. Organizations would be required as per the standard to forward for some period of time (say at least six months) requests for that identity to the new home server.
An entirely seperate web service could handle the message storage system that handles message collections (what we would call Tribes here). Each tribe is also itentified with a unique, fully qualified identifier, and is similarly rehomed with appropriate forwarding rules. Requests tribe information would be made as calls to this web service, which might in turn either call the identity web service directly or allow the interveening middleware to interact with it, as needed.
Similar services could be used to handle large object storate libraries (a generalized extension of the photo album), listings, and all sorts of other backend data sources that would be needed or wanted. Layer atop these web services a set of web pages that do the presentation layer, and you have a system that is as functional as tribe, but allows users to seamlessly transport themselves between different home services, different message storage services, and different presentation layers.
I wrote a few straw-man services (a user storage system, a message system, and an authentication service) and some front-end web paes that demonstrates the concept, but then I ran out of time. I should get that stuff back up on the net and start working on it, now that it seems that tribe is jumping the tracks a bt. -
-
Re: Social Network Framers...
Sun, January 1, 2006 - 11:41 PMThe web services approach to federated social networking is exactly what I was envisioning! The hard part for me was always the fact that it seems a centralized directory is needed in order to do reliable lookups of resources that are distributed on this network. Mike, it would appear that what you are advocating is a model where several large providers participate in a decentralized network, which may help alleviate the directory issues a bit. But in my other post, I alluded to a world where one could download and run a tribe-like application at home, and have that instance participate in the decentralized network just as a larger provider (such as tribe.net today) may participate. If you are able to run an instance of tribe at home, your photo storage capabilities are limited only by the amount of storage space you have on your disk drive, and accordingly the speed with which you may serve your profile is limited by the bandwidth you have available in your home setup.
Did you have any ideas on how to implement things like search and "friend-of-friend" graph calculations if not doing those things via a centralized directory? -
-
Re: Social Network Framers...
Mon, January 2, 2006 - 4:04 PMI'd like to see a distributed implementation of social graphs.
But meanwhile, let's try something simple and practical.
First identity. If you have a place on the Net to call home, then it has a URL. URLs are memorable (by comparison to UUIDs), and we already track them and exchange them. So let's use that as the first point of identity.
Second links. Graphs emerge from links, so we need a way to find who you're linked to. What about blogrolls? Many people use blogrolls to link to their friends. WordPress has a fairly simple UI for managing blogrolls that anyone can use.
Third, semantics. WordPress uses XFN, so if you crawl the blogs by just looking at the front page, you can determine all the friend/colleague/spouse/etc links. I can't think of simpler way to extract all that information.
Fourth, search. Who says it has to be distributed? Why can't you just aggregate that information into a centralized server, do all the graph calculations there, and have people use that service to find other people?
Fifth, layering. But say you want to layer "you know X through ..." on X's blog. You can let people embed a script tag that pulls that information into their page, or come up with a FireFox extension that displays it on the currently viewed page. The possibilities are endless.
There's not a lot of graph theory, or RDF semantics, or Web service APIs behind this approach, so it may disappoint if you're looking for new technologies to hack out. I think it's more fun though, since you can pull if off in one weekend and spend the rest of the time focusing on useability. -
-
Re: Social Network Framers...
Mon, January 2, 2006 - 8:47 PMOn the identity front, I agree that easy to remember URL's represent an obvious fundamental starting point for identity on the web. Let's say that mine is "brian". On tribe, my URL is people.tribe.net/brian . Is this what you have in mind?
Regarding the graphing points, you guys should take a look at Paul Martino's (Tribe founder who has now left and started another company) web service for creating an uber-graph. This may be an interesting way to store person->person and person->content linkages, and Paul's technology allows for some interesting information to be extracted from that graph.
Regarding search, I am right there with you. A centralized search index that provides links back out to the decentralized servers that host the content would be quite cool.
-
-
Re: Social Network Framers...
Tue, January 3, 2006 - 4:32 PMAt the center of this is the identity service. This service contains all the information about an entity within the space. For simplicity's sake I'll limit my comments to how they pertain to people, but as far as I'm concerned they can refer to any discrete object, real or virtual, that can be referred to in the web universe. think X.500 with a webservice front end. This web service would provide the following features:
- Contain, present and modify public, private and semi-private information to accessors that appropriately authenticate. So a webservice call that requests a user's profile will only get read-only access to public information, unless that call provides proper credentials to view or modify that information
- Manage subscription callbacks to parts of that information. Within a security context, allow external entities to subscribe to portions of a profile, and receive notifications when those portions change.
- Allow for objects to move freely between services, and provide seamless forwarding for objects that have moved. The internal core identifier for each object needs to be universally, permanently unique and not tied to whatever service is containing it at the moment. In the event that a former containing service cannot or will not manage forwarding, a secondary forwarding registry service could be created to facilitate this. Backwards propegation of this object movement would clean up the links in the background over time, so if a service gets a redirect on an object it's looking up, it would pass on the redirection as well as update its own internal links. So if I rehomed my profile, every time someone followed a link to my old service, their service would update the link as well as pass on the new reference.
This service would contain all the profile information relevent to that particular person; all the information that we're used to supplying about ourselves on tribe or other services. The FOAF schema is an OK start to this, although it looks pretty clunky to me at this point.
Once we have that service running, then by layering a set of web pages atop it (or heck, maybe just some XSL) and you've got friendster 1.0, but without the vender lockin. Anyone could layer their own presentation mechanisms (HTML, XML, etc) atop the web service to work with or display data in a manner appropriate to their use.
Other services could then be created to work with this service. A message collection service would satisfy the concepts of "tribes", but would again be federated. my profile that I host at Profiling Service A could state that I belong to Forum B at Message Service C as well as Forum D at Message Service E. By abstracting everything using "friendly names", you would never know that you're bouncing all over the net gathering up this information. Once again, vender lockin is prevented; if Some Random Message Service decides that a certain type of discussion is inappropriate, then the owner(s) would just migrate the XML that describes the forum to a new service, set up the required redirects, and be back in business.
Other services could include binary object storage (Photo album ++), listings services, and all the other things we've come to expect from places like tribe, plus more as we dream them up.
As Brian mentioned, the connectivity graph is a particularly hard problem. My understanding is that tribe has one machine devoted to creating this graph and holding it in memory, and that's for a relatively small, self contained service. Something that's internet scale will probably need to have the problem distributed. I'm not sure if the problem is NP-Complete or NP-Hard, or merely Collosally Annoying, but the solution will probably be an approximation rather than an exact graph. Perhaps individual nodes would compute their own chunks, and would constantly be swapping data. Perhaps some graph-crawling service that does for identity what google does for searches will develop a graph service that presentation services would subscribe to.
I babble. I should go back to work. :)
-m -
-
Re: Social Network Framers...
Wed, January 4, 2006 - 12:41 AMit will definitely require a different algorithm. first, because we're talking about a larger scale graph, potentially more than you can fit in one server. second, because some limitations are acceptable. for example, I don't perceive it changing in real time, latency is acceptable. and it will probably remain two degrees of separation, much easier to query from the database. -
-
Re: Social Network Framers...
Fri, January 6, 2006 - 12:38 PMInteresting that in this discussion among 3 people we already have a clear picture of what we all find the most interesting problems to be solved:
For Mike, it would appear that "re-homing" the objects is very important, so that there is no confusion about who owns the content, especially where profiles are concerned.
For Assaf, it seems that using existing services that are out there, and centralizing part of the data that should be centralized in the interest of getting something up and running is interesting.
On the object migration front, we may run into the joint ownership of content problems that Liz Warner ran into when trying to unsubscribe and have her moderated tribes - ALL OF THEM - be deleted. Perhaps in a world where objects can migrate freely to any service provider this would not have been an issue.
For my part, I am interested mostly in the backbone that would connect all of these decentralized participants in the network. I have always thought that XMPP would be a great way to have all the nodes talk to each other, and also would be a great way to provide Presence services not just for people but for small satellite providers. This would hopefully allow implementers to make implementations of the Tribe-in-a-box application in whatever language they like, with XML exchange over XMPP being the communication method between all the nodes.
But this seems to imply that there would be a specification document for specifying the URL's to resources on your instance, as well as XML schema specifications for how information is to be exchanged in the background.
Weekends need to be weeks long... -
-
Re: Social Network Framers...
Fri, January 6, 2006 - 2:23 PM> For Mike, it would appear that "re-homing" the objects
> is very important, so that there is no confusion about
> who owns the content, especially where profiles are
> concerned.
Yeah. It's like phone number portability. It's a way of keeping the community sites in check, by making it less painful, if not transparent to migrate when a community becomes unacceptable, or when another community becomes "better", without losing all of the history and context. if it's too easy for people to leave, then social services will be less likely to do unpopular and/or draconian things.
Which is why I doubt any commercial organization would ever create a federated system; federation at first blush is the anthisis of the walled city model that internet services seem to prefer.
Oh well. -
-
Re: Social Network Framers...
Mon, January 9, 2006 - 12:34 PMI think that the centralized services (in our case, search and social graphing, for example) are the keystone of the federated model, and are the vehicle by which audience can be driven to each individual node. So if a tribe-like company were to be commercially viable, it would NOT be because of the data that lives on their servers. Rather, it would be that its services would be able to attach hundreds, even thousands of distributed satellite instances. Moving a Tribe would involve moving all the data that is solely "owned" by that tribe, which basically means posts, memberships, photos. Also, the LINKS to other types of microcontent in the tribe.
This is obviously a pretty difficult problem to solve reliably, and it makes lots of assumptions about the reliability of the connections of each node to the internet. But it does make for an interesting business at the center of the network - search, directory, and social graphing services at the center of the network which vastly increase the abilty of member nodes to attract an audience. How does it make money? Perhaps that would be the topic of another thread. -
-
Re: Social Network Framers...
Mon, January 9, 2006 - 1:48 PM"How does it make money?"
that's the interesting question.
-
-
-
Re: Social Network Framers...
Fri, January 6, 2006 - 6:43 PMI don't see how you can "move content" around. do I just say bye to tribe and take all my posts with me? what do I do with them? publish on my blog? would anyone want to read posts like "that's a good idea" or "you suck" void of context?
do I take the context with me? but now I'm stealing whole threads full of other people's comments. I can't do that unless everyone in that tribe agrees they want to move over to a new service.
it looks to me like a technically solvable problem, but one that's going to be so complex, so fragile, that by the time we figure it out, no one will care.
I think we need to start looking at different hammers.
-
-
-
-
-