Archive for the ‘iss’ Category

ISS UI Design

Wednesday, August 13th, 2008

Contacts

The ‘Contacts’ sidebar helps Nick discover new channels created by his personal social network.

The ‘List’ presents all aggregated entries from channels subscribed by Nick. Colors play an important role. Entries in blue are incoming entries, i.e. entries that have been received. Entries in red are outgoing entries, i.e. entries that have been sent. And entries in purple are entries that have been shared.

If Nick wants to share a specific entry, he may do so by tagging the entry appropriately. The Figure shows that this particular entry is already tagged with Science. He may add new tags by selecting them from his own tag cloud, or he may create new ones by typing them. When he syndicates this entry, he publishes this entry to the channels identified by these tags. Everyone subscribed to these channels will receive a notification.

Channels

Nick has associated Debbie’s Environment tag with his Science tag (i.e. he has created a taglink between the two channels). Every time Debbie publishes something tagged with Environment, these entries are automatically tagged with Science for Nick.

Thus, for users to share information, they don’t have necessarily to share the same concepts. All they have to do is to show how their friends’ concepts are associated with their own concepts.

It is important to remember that entries received are not published in Nick’s channels automatically unless they have been approved and shared by Nick himself.

Knight Drupal Initiative

Friday, August 8th, 2008

The Knight Drupal Initiative is a partnership between the Knight Foundation and the Drupal Community to provide funding for grant proposals that explore digital publishing to transform their respective communities.

I’m glad to announce that my proposal has been approved to the next phase of the selection process. This proposal’s main goal is to build ISS support in the Drupal platform. Our specific goal is to create a social network for our university to help students and professors discover and share information with colleagues and society.

TagCloud Types

Tuesday, July 1st, 2008

The tagcloud element exposes data to be used for creating visualizations. We are brainstorming about different types of data that could be used. One of them is the “syndicated” type, which details how many entries have been syndicated in a given month. For example, 43 entries tagged “science” were syndicated in January 2008.

<tag name=”science”>
<tagcloud type=”syndicated” year=”2006|2007|2008
data=”0,0,0,0,0,0,4,23,45,32,34,31|
32,44,53,23,43,32,34,64,34,21,35,23|
43,23,34″/>

</tag>

By comparing the data for this tag with the data from the other tags, it’s possible to build a tagcloud to reveal what were the most syndicated tags in January 2008.

So far, we have the following types:

  • Syndicated: number of entries syndicated;
  • Authored: number of entries authored;
  • Subscribed: number of subscribers;
  • Commented: number of comments (from personal social network);
  • Shared: number of entries shared (from personal social network).

We are open for feedback. Thanks!

TagCloud / TagLink Merge

Monday, June 16th, 2008

I’ve received some feedback from old time contributor Massimiliano Mirra and our latest contributor Richard Hilliard, about the tagcloud and taglink formats. We decided to:

  • merge tagcloud and taglink into one, and
  • create the tagcloud and taglink elements.

This is how it would look:
<iss>

<tag name=”science”>

<tagcloud type=”syndicated” year=”2006|2007|2008″
data=”0,0,0,0,0,0,4,23,45,32,34,31|
32,44,53,23,43,32,34,64,34,21,35,23|
43,23,34″/>

<taglink type=”base”
push=”xmpp:nick@iss.im?;node=science”
pull=”http://nick.iss.im/category/science”/>

<taglink type=”incoming”
push=”xmpp:debbie@iss.im?;node=environment”
pull=”http://debbie.iss.im/category/environment”/>

<taglink type=”outgoing”
push=”xmpp:penny@iss.im?;node=science”
pull=”http://penny.iss.im/category/science”/>

</tag>

</iss>

We believe now it’s more compact, clean, and easier to generate and process. Any feedback is welcome. Thanks!

Syndicated Search

Tuesday, May 20th, 2008

I’m currently thinking about syndicated search for ISS. A search that is totally decentralized and served by friends (and friends of friends) for an extended period of time. This is the basic workflow:

  • Each individual generates a social graph beforehand consulting the cascading taglinks;
  • A query can be sent to friends up to x degrees apart, where x is define by the user;
  • This query is published on the users’ searched node with an ID and a TTL;
  • Friends may accept the query and see if they have entries that match. If so, they send the IDs of the matched entries and publish that to their matched node. The query is kept alive until the TTL expires or according to the policies;
  • Users receive the matched entries in their aggregator. These appear associated with the original query and separated from the main flow of the aggregator.

Further Reading:

ISS Policies

Friday, May 16th, 2008

ISS was designed with one interesting characteristic in mind: incoming information only comes from one-degree apart friends through subscriptions. This characteristic provides an architecture which is 100% guaranteed to be SPAM free. You’ll only receive information you want. And if you start receiving information you don’t want, you can either directly contact your friend and talk to him/her about it, or simply unsubscribe from him/her. It’s interesting to observe that the cascading of trustful social networks works as a world wide distributed recommender system perfectly tuned to output a very personalized stream. This trustful network filters out irrelevant information, while still letting good information pass through. Your friends work for you, and their friends work for them, and so forth. Everyone works together to recommend and filter information. ISS effectively unleashes the great deal of untapped potential of the collective intelligence to organize information.

The guys from the Decentralized Information Group at MIT have been pondering about this idea of combating SPAM using social networks. They implemented a FOAF crawler that generates a social graph periodically. And from this social graph they create policies around it, such as, for example, only people x-degrees apart can comment on the blog.

This goes very much aligned with how ISS was designed. When a user receives an entry from a  friend, she can read the comments that her personal network has made about it. She may also download the attached files directly from her personal network, making it easier on the original author’s server in case the entry gets popular. And since the information that reaches the user always leaves a trace, it’s very well possible to choose, for example, to read only the comments for a particular entry from people x-degrees apart.

I updated the ISS policies to make it clear how ISS controls the quality of information that reaches the user. I’ve added a special case, which are friendship requests, since these requests obviously will come from people who are more than 1-degree apart. The funny thing is that eventually we’ll only add friends that are already on our list (not our personal network obviously, but our more wide social graph that was generated beforehand). Friendship requests from people more than x-degrees apart will be dropped, not because of despise, but simply because of trust. The requests that pass through this policy will be displayed to the user as a special channel, where the user can easily see the person’s tagcloud, how many degrees separate them and how much they are connected. He may add this person to his personal social network if he sees it appropriate.

These policies will initially be applied to the Web and I.M., but they’ll be applied to e-mail as well. These three means of communication will eventually converge and have a common interface. We will finally overcome SPAM and information overload, and reach an equilibrium of information-sharing and awareness.

ISS Thesis and References

Friday, February 8th, 2008

For some background on how ISS (Instant Syndicating Standards) was born, I recommend reading my thesis. I also recommend going through the references.

ISS addresses the information-sharing problem. To come up with a solution, I was mostly influenced by these 6 technologies:

ISS integrates these technologies in a seamless framework and finds the perfect balance:

The ideas behind TagLink

Wednesday, January 16th, 2008

Creating the TagLink format was like solving a puzzle. In the end, everything must fit perfectly together. These are some important considerations that were taken to create the TagLink format:

  • The channels are chained both ways: incoming and outgoing links. What I’m watching today, I’ll be syndicating tomorrow. A channel is a connection point. It’s to what users will tune in when they want to view information, and it’s to where users will broadcast out when they want to share information.
  • For users to share information, they don’t have necessarily to share the same concepts. All they have to do is to show how their friends’ concepts are associated with their own concepts. This is the essence of TagLink.
  • The TagLink will evolve dynamically. It’s part of the Discover/Subscribe pattern. You discover an interesting channel, you subscribe to it, and your TagLink gets updated. A friend discovers an interesting channel from you, he subscribes to it, and your TagLink gets updated too.
  • The TagLink helps define the color of the tags in the TagCloud. Blue for incoming flow of information, red for outgoing flow, purple for a mutual flow and black for no flow.

The ideas behind TagCloud

Wednesday, January 16th, 2008

The TagCloud format was very much inspired by the social tagging phenomenon. Social Tagging is a bottom-up approach to cataloging information. Traditional cataloging of information is done by experts using taxonomies or ontologies in a top-down fashion. Social tagging, on the other hand, is done by common people. People are free to choose any set of keywords that they see fit to describe a specific information.

Social tagging has being very successful for organizing information. They are used for organizing e-mail (e.g. Gmail), bookmarks (e.g. Del.icio.us), photos (e.g. Flickr), music (e.g. LastFM), video (e.g. YouTube), blog entries (e.g WordPress), and reference entries (e.g Wikipedia).

In the context of ISS, tags are used to identify channels. These are some important considerations that were taken to create the TagCloud format:

  • People will have a limited amount of channels in any given time-frame. It helps friends become aware of their interests, and it helps them become self-aware of their own interests. Users that just tag anything that they read have huge tag clouds that tells me very little about them.
  • The time-frame is very important. The TagCloud format allows me to answer the following question: what are my friends’ current interests? Compare that to APML (Attention Profiling Mark-up Language). People’s interests shift or evolve.
  • A TagCloud is something to which friends will want to subscribe to. This is essential to keep friends aware of new information in a non-obtrusive way. It’s the core idea behind ISS.

ISS Stack

Tuesday, January 8th, 2008

ISS Stack