Download - Social Network Technologies
This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/us/
Social Network Technologies
Dr. Harry Chen
CMSC 491/691S
February 6, 2008
Agenda
History and MotivationAnalyzing social networksLanguages for describing social networksProgramming API for building social
networks
Source: http://en.wikipedia.org/wiki/Image:Social-network.svg
Social Network sites
What’s a Social Network site?
Let’s define “Social Network 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
Why do people join 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?
Looking back into the 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
What does it all mean?
Social Network Analysis
The 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 Introductionhttp://www.orgnet.com/sna.html
Key concepts
Social network 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_networkhttp://www.orgnet.com/sna.html
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
Who is reading your profile?
Both humans and machinesGot 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.
FOAF (Friend-Of-A-Friend)
An ontology for describing people and the links between them (i.e., relationships).
FOAF documents are typically defined in RDF (Resource Description Framework).
An Example: How FOAF works for me
http://harry.hchen1.com
http://harry.hchen1.com/foaf.rdfFOAF profile crawler
What can you say using FOAF?
http://xmlns.com/foaf/spec/
FOAF toys
Create your own FOAF profile http://www.ldodds.com/foaf/foaf-a-matic
FOAF Explorer http://xml.mfd-consult.dk/foaf/explorer/
XFN (XHTML Friends Network)
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/
XFN Examples
Step 1: 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
Harnessing the power of 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?
Social Network Innovation
Approach 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
Facebook API
Facebook provide 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
Criticisms of Facebook API
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
Google’s OpenSocial API
A 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
Benefits of using OpenSocial 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
Criticisms of OpenSocial API
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
Google’s Social Graph API
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.
OpenSocial vs Social Graph 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.
Social Graph API demo
http://code.google.com/apis/socialgraph/docs/examples.html
Criticisms of Social Network sites
People spend too much time on SNsPrivacyDo technology elites have the right to
experiment and exploit the personal information of those who knows little about their information on the Web?
Summary
Social Network sites 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.
Homework
Post at least 1 blog on …