Agenda History andMotivation Analyzing social networks Languages for describing social networks Programming API for building social networks Source: http://en.wikipedia.org/wiki/Image:Social-network.svg
Let’s define “SocialNetwork sites” A web site that allows individuals to Construct a public or semi-public profile in a bounded system Articulate a list of other users with whom they share a connection View and traverse their list of connections and those made by other with the system Source: Social Network Sites: Definition, History, and Scholarship , D. Boyd and N. B. Ellison http://jcmc.indiana.edu/vol13/issue1/boyd.ellison.html
5.
Why do peoplejoin Social Network sites? To social “ Since we can’t meet face-to-face, we may well just meet up online.” To share experience “ I have some great pictures from Tibet for you to see.” Being nosy “ Who is that cute girl I saw in the gym?” Find contacts and make deals “ Maybe Bob can introduce me to that VC” Let your voice be heard “ My friends don’t’ listen to me. Maybe others will.” Do you have other reasons to join a social network?
6.
Looking back intothe past The idea of creating profiles and communicate with strangers are nothing new. Remember ICQ, IRC and MUD. What do you think have caused the sudden explosion of Social Network sites? Source: Social Network Sites: Definition, History, and Scholarship , D. Boyd and N. B. Ellison http://jcmc.indiana.edu/vol13/issue1/boyd.ellison.html
Social Network AnalysisThe study of relationships between people, groups, organizations, computers, web sites, and other information and knowledge processing entities. Why do you think it’s important to study social relationships? Source: Social Network Analysis, A Brief Introduction http://www.orgnet.com/sna.html
9.
Key concepts Socialnetwork as a graph People Nodes Relationships Edges What do we measure? Degree Closeness Betweenness Centralization Clustering coefficient Path length Radiality Source: http://tinyurl.com/22dhsd http://en.wikipedia.org/wiki/Social_network http://www.orgnet.com/sna.html
10.
Example: Betweenness (1)Heather has less direct connection than Diane. (2) Heather has a “sweeter” spot in the network because she connects two groups of people. (3) Heather is a “single point of failure”. Source: http://www.orgnet.com/sna.html
11.
Who is readingyour profile? Both humans and machines Got it! Contact, school, favorites… HTML detected. But, what’s in the page? In order to help computer programs to better understand our profiles and social relationships, we need to express information in an explicit representation.
12.
FOAF (Friend-Of-A-Friend) Anontology for describing people and the links between them (i.e., relationships). FOAF documents are typically defined in RDF (Resource Description Framework).
13.
An Example: HowFOAF works for me http://harry.hchen1.com http://harry.hchen1.com/foaf.rdf FOAF profile crawler
14.
What can yousay using FOAF? http://xmlns.com/foaf/spec/
15.
FOAF toys Createyour own FOAF profile http://www.ldodds.com/foaf/foaf-a-matic FOAF Explorer http://xml.mfd-consult.dk/foaf/explorer/
16.
XFN (XHTML FriendsNetwork) A way to represent human relationships using hyperlinks. It divides your social relationships into categories: People who you are friend with. People you have physically met People in your professional circles of life People relate to you geographically (live together, neighbor) Your family members People whom you have romantic relationship with Identity (ME) – identify web sites that you own XFN: http://gmpg.org/xfn/
17.
XFN Examples Step1: Use “rel” tag to define how you are related to this link. Step 2: Let the world know you an XFN page Read more: http://gmpg.org/xfn/join
18.
Harnessing the powerof Social Networks Why do you think web sites are so in love with social networks? It’s all business! Two objectives: Grow user base : more visitors, more clicks Keep your eyeballs focused : the longer you stay on their pages means more revenues Q: How can they achieve these?
19.
Social Network InnovationApproach 1: Provide services that solve an actual problem or add value to users’ Web experience Del.icio.us – social bookmark Flickr – share photos MySpace – get musician’s work to the public Facebook – 24/7 connect in the cyber world. Approach 2: Build a platform and provide API Facebook API Google OpenSocial API and Social Graph API
20.
Facebook API Facebookprovide a platform , something that others can customize (re-program). Most Web 2.0 sites, being applications, they can’t be re-programmed – e.g., flickr. Interface (API): GET, POST HTTP calls to fetch/update user and application information Query (FQL): SQL-like interface for accessing user and application information Markup (FBML): markup language for adding your own applications into Facebook
21.
Criticisms of FacebookAPI Facebook requires all communication and application interactions “route” through Facebook servers. No JavaScript, No DIV You are forced to learn a new language: FBML Performance suffers because you give up all applications to Facebook
22.
Google’s OpenSocial APIA set of common API for building social applications on the Web. Get access to Profile information (user data) Friends information (social graph) Activities (things that happen) JavaScript and REST
23.
Benefits of usingOpenSocial API Developers have to learn one API to work with multiple social network sites. No need to learn a new language, if you already know JavaScript. Many popular social network sites support OpenSocial API http://code.google.com/apis/opensocial/faq.html
24.
Criticisms of OpenSocialAPI The idea only works if everyone support OpenSocial API. Facebook doesn’t support it, but it has a large user base. Why new companies want to open up its information to other side? OpenSocial API was incomplete and problematic when it was first released. As reported by TechCrunch on November 5, 2007, OpenSocial was also quickly cracked. The total time to crack the OpenSocial-based iLike on Ning was just 20 minutes, according to TechCrunch, with the attacker being able add and remove songs on a user's playlist, and to look into information on their friends. http://en.wikipedia.org/wiki/OpenSocial#Criticism
25.
Google’s Social GraphAPI API that provide social network information about a Web user. Given a Web user ID (email or URL), it can tell you Other Web user ID you are known to be associated with (e.g., different web site you own, profiles on different social networks) Relationship with other Web users.
26.
OpenSocial vs SocialGraph API Both support REST and provides JavaScript API Social Graph API doesn’t rely on pre-defined agreements between different social network sites. Social Graph rely on Google’s computing power to crawl and process public data on the Web and discover social relationships.
27.
Social Graph APIdemo http:// code.google.com/apis/socialgraph/docs/examples.html
28.
Criticisms of SocialNetwork sites People spend too much time on SNs Privacy Do technology elites have the right to experiment and exploit the personal information of those who knows little about their information on the Web?
29.
Summary Social Networksites allow people to create profiles and be virtually connected with family and friends. Though many sites exists for business reasons, but they provide many value-added services and make our life more convenient. FOAF and XFN are languages for describing profile and relationships on the Web Facebook API, OpenSocial API and Social Graph API changed the way we use and think of social network sites.