State of the Art

ISS was inspired by these 6 technologies:

  • Peer-to-peer networks
  • Social networks
  • Instant Messaging
  • Blogging
  • Social tagging
  • Content syndication

Peer-to-Peer Networks

Peer-to-peer technology refers to a class of applications that take advantage of the resources available at the edges of the Internet. These resources can either be computing power, storage space, content, bandwidth or human presence.

Peer-to-peer applications have proven to be important for many tasks such as distributed computation (e.g. Seti@Home, Genome@Home), content distribution (e.g. e-Mule, BitTorrent) and communication and collaboration (e.g. Jabber/XMPP, Lotus Sametime).

One of the biggest challenges of peer-to-peer applications is the lookup problem, i.e. how to address the resources available in the network. Some lookup techniques are: centralized search (e.g. Napster), flooding (e.g. Gnutella), Distributed Hash Table (e.g. CAN , CHORD), semantic routing (e.g. Edutella, GridVine), social routing (e.g. Bouillon, WiredReach) and publish/subscribe (e.g. Siena, Scribe).

Among the main advantages of peer-to-peer technology are robustness, scalability and easiness of use. Bringing the user's personal computer closer to the heart of the Internet makes the whole sharing process much easier.

References

Social Networks

A social network represents the relationships people and organizations have. Social network analysis studies these relationships and their applications.

Among the classic social network analysis are the small world problem, from Stanley Milgram, the small world phenomenon, from Duncan Watts and Steven Strogatz, and the strength of weak ties, from Granovetter. These studies demonstrate how connected we all are and how important social networks are for the dissemination of information.

Many researchers have studied the impact and the potential social networks have on applications such as e-mail (e.g. Malone et al. with the Information Lens System), mailing lists (e.g. Goldberg et al. with Collaborative Filtering), newsgroups (e.g. Riedl et al. with Grouplens), personal sites (e.g. Kautz et al. with the Hidden Web), search engines (e.g. Brin and Page with PageRank), recommender systems (e.g. Maes et al. with Social Information Filtering), reputation systems (e.g. Resnick et al. with Reputation Systems), peer-to-peer networks (e.g. Grassman et al. with Social Networks in Peer-to-Peer), instant messaging (e.g. Smith with I.M. as a Scale-Free Network) and blogs (e.g. Kumar et al. with Structure and Evolution of Blogspace).

Web applications that help people organize their social network online are very popular. Some examples are MySpace, Facebook, and Orkut. These applications are walled gardens, but open standards such as FOAF (Friend of a Friend) and XFN (XHTML Friends Network) also exist.

References

Instant Messaging

Instant messaging provides real-time communication between two or more people and often provides presence information as well. Some examples of instant messaging applications are ICQ, AIM, Yahoo Messenger, Microsoft Messenger and Jabber/XMPP.

Recently there has been a great effort towards integrating multimedia such as audio and video into instant messaging. Applications that offer audio are known as VoIP (Voice over IP). Examples include Gizmo, Asterisk, WengoPhone, Skype and Google Talk.

Real-time communication and rich awareness are propitious for informal collaboration and often are part of groupware applications. Some examples of groupwares are Lotus Sametime, Adobe Acrobat Connect and Groove.

There have been several attempts to create a unified standard for instant messaging. The most popular standards are SIP (Session Initiation Protocol) and Jabber/XMPP (eXtensible Messaging and Presence Protocol).

References

Blogging

A blog is a user-generated website that resembles a journal or diary. Some common examples of sites that let users build ther own blog are LiveJournal, Blogger, and WordPress.

A blog is made up of entries that are displayed in a reverse chronological order and that typically consist of: a title, a date, a body, a permalink and tags. Blogs often provide means of interaction and socialization such as commentaries, trackbacks and blogrolls.

There are two main blogging format standards: RSS (Really Simple Syndication) and Atom. Aggregators that support these formats help people organize multiple subscriptions.

Blogs have become the de facto personal channels of the Web. They are very easy to setup and they help people share ideas, photos (flogs), audio (podcasts), video (vlogs), and presence (microblogging).

References

Social Tagging

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 is a quite recent phenomenon and 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). Social tagging main advantages are a) the easiness of use, since tags correspond to a flat namespace; and b) the emergent collective intelligence, since the "selfish" effort of individuals generally helps the community as a whole.

References

Content Syndication

Content syndication helps users to publish and be kept aware of any changes to websites, human availability, or anything of interest that changes with time.

Applications today usually follow the pull model, i.e. they apply polling techniques to check for updates. Some issues regarding the pull model are limited scalability and bandwidth usage. To address these issues, some applications follow the push model, i.e. they receive updates automatically. Some examples of push technologies are XMPP, FeedTree, Cometd and SamePlace.

There are two content syndication standards: RSS (Really Simple Syndication) and Atom Syndication Format. The Atom Publishing Protocol also describes how applications may publish updates.

References