Title: MST Test 2
Tags: ss8 #ss10 ss9 ss7

Q: What is (X)HTML(5) used for?
A: presentation markup

Q: What are the characteristics of (X)HTML(5)? (name 3)
A: - rendered by user agents
- human readability
- less formal, user-friendly syntax and semantics

Q: What is the "view source" effect?
A: HTML can easily be learned by viewing the source code o websites

Q: What are some xml-based data format standards?
A: RELAX NG, JSON, YAML

Q: What are the characteristics of xml-based standards? (name 3)
A: - consumed by applications for further processing
- machine interpretable
- importance of schemas and validation

Q: Why are textual data formats preferred over binary formats? (3 reasons)
A: - are more portable and interoperable
 - can be directly read by human beings (with a simple text editor)
- importance of character encoding (UNICODE, UTF-8)

Q: What protocol do web services use?
A: HTTP(S)

Q: What are web services?
A: application-to-application communication based on the architecture of the World Wide Web

Q: Are web services simple or complex and open or proprietary?
A: simple and open

Q: Name two REST-like protocols
A: OAI-PMH, Atom

Q: What is linked data?
A: Is a method (architectural style, set of standards) to build Web of (connected) Data

Q: What uniform aspects contribute to the web's success? (3 reasons)
A: - Uniform encoding (HTML)
- Uniform addressing (URI)
- Uniform transportation (HTTP) for the exchange of documents.

Q: What are some obstacles to applications reusing valuable information published on the web? (name 3)
A: - information is usually exposed in the form of (HTML) documents
- raw data that feed Web sites are locked in closed data silos (usually some form of (NO)SQL databases), other applications cannot access raw data unless data providers offer some (REST) API
- each data provider is likely to provide a different API

Q: What is the idea behind the web of data?
A: provide access not only to documents but also to data

Q: What are the four linked data principles?
A: - use URIs as names for things
- use HTTP URIs so that people can look up those names
- when someone looks up a URI, provide useful information, using the standards (RDF, SPARQL)
- include links to other URIs, so that they can discover more things

Q: What is the relation between the accept mime-type and linked data?
A: depending on the Accept mime-type of an HTTP GET request
- return HTML resource representation for human readability
- return machine processable RDF resource representation

Q: Does linked data represent items as resources?
A: yes

Q: What kind of interface needs to be provided for structured query access to linked data?
A: SPARQL interface

Q: What kind of URIs need to be identified in the process of linking data?
A: dereferencable URIs

Q: What is the RDF?
A: Resource Description framework: a data model for representing metadata on the web

Q: Name four RDF serialization formats
A: RDF/XML, N3, Turtle, N-Triple

Q: What are the purposes of RDF serialization formats? (name 2)
A: - Data formats for RDF resource representations
- Used to transfer RDF data from application-to-application

Q: What is OWL?
A: Web Ontology Language: A more expressive language for expressing for describing the syntax and semantics
of vocabularies (ontologies) in a machine-understandable way

Q: What is SKOS?
A: Simple Knowledge Organization System: A language for describing controlled vocabularies (thesauri, classification
schemes, etc.)

Q: Name two examples for controlled vocabularies describable by SKOS
A: thesauri, classification
schemes

Q: What is SPARQL?
A: RDF Query Language: A query language and protocol for accessing RDF data on the Web

Q: How should vocabularies be published? (name 2 best-practises)
A: hash-based URIs, slash-based URIs

Q: What are the advantages of hash-based URIs? (name 2)
A: - Suited to group the description of a moderate number of related terms into one vocabulary document
- Agent can retrieve terms with a single HTTP request

Q: What is the advantage of slash-based URIs?
A: - Suited to split the descriptions of terms in large vocabularies into one document per term
- No need for the agent to download a massive document to find the description of a term

Q: What is the difference between information and non-information resources w.r.t. publishing data?
A: Information resources should deliver both HTML and RDF

Q: Which of these are information and non-information resources?
http://dbpedia.org/resource/The_Shining_%28film%29
http://dbpedia.org/data/The_Shining_%28film%29
http://dbpedia.org/page/The_Shining_%28film%29
A: 2 and 3 information, 1 non-information

Q: What is open data?
A: Open Data: a philosophy, practice, or policy that data are freely available to everyone without restrictions from copyright, patents, a.s.o.

Q: What is the "Linking Open Data" project?
A: a W3C community project with the goal to extend the Web with
a data commons by publishing various open data sets as RDF on the Web and by
setting links between data items from different sources

Q: Since when has the linking open data developed rapidly?
A: since 2007

Q: What is the disadvantage of in-document interactivity with Javascript and CSS and how can it be overcome?
A: - causes the need for repeated transfer of static page elements
- AJAX tries to overcome this by including server communication into in-document interactivity

Q: What does AJAX stand for?
A: Asynchronous Javascript and XML

Q: Outline the original AJAX design (5 aspects)
A: - Standards-based presentation using XHTML and CSS
- Dynamic display and interaction using DOM
- Data interchange and manipulation using XML and XSLT
- Asynchronous data retrieval using XMLHttpRequest
- Javascript binding everything together

Q: How do conventional web applications (compared to AJAX) work? (3 steps)
A: - Define a page for every event in the application (e.g. “view items”, “purchase items”, “check out”, ...)
- Each event returns a full page to the browser
- This page is rendered to the user

Q: Was the web viewed in a document- or application-centric way before AJAX?
A: document-centric

Q: What is the role of interactive multimedia documents w.r.t. document- and application-centric views of the web?
A: the borderline between documents and
applications disappears

Q: What is the role of AJAX architecture w.r.t. the bordeline between the web documents/applications?
A: it blurs the borderline

Q: What are the three important parts of the AJAX architecture?
A: - small server-side events
- asynchronous
- onAnything

Q: What are small-server side events?
A: Components can make small requests to a server and
tweak the page that is currently displayed by changing the DOM.

Q: What does asynchronicity mean in the context of AJAX?
A: Requests do not cause the browser to block. The user can continue
to use other parts of the application, and the UI can be updated independently

Q: What does onAnything mean?
A: Modern browsers are able to trap the same user events as operating
systems: mouseovers, clicks, keypresses, etc. -- Any of these user events can
cause an asynchronous request.

Q: Describe the AJAX Page Lifecycle (6 steps)
A: (1) The user makes an initial request against a given URL
(2) The server returns the original HTML page
(3) The browser renders the HTML page as in-memory DOM tree
(4) User activity causes an asynchronous request to another URL, leaving the existing DOM tree untouched
(5) The browser returns data to a callback function inside the existing page
(6) The browser parses the results and updates the in-memory DOM. This is reflected on-screen to the user (the page is updated, but not “refreshed”)

Q: What will happen to AJAX in the future? (2 aspects)
A: - AJAX as a unifying term for multiple technologies will probably disappear-
- The technologies behind it will be the state of the art in web development

Q: Name 5 steps for AJAXifying Web Documents
A: 0) original source code
1) prepare the HTML
2) communicating with server
3) parsing response
4) putting it all together

Q: Which step in AJAXifying Web Documents does this code represent?
A: Step 0: Original Source Code

Q: Which step in AJAXifying Web Documents does this code represent?
A: Step 1: Prepare the HTML

Q: What does these three keywords do?
A: - The onblur attribute causes the function getNameData() to be invoked when the element loses the focus. The value property of the element will be passed as an argument.
- this is a reference to the element on which the event handler has been registered.

Q: What does the XMLHttpRequest object do? (name 3 actions)
A: - send HTTP requests
- receive responses
- parse responses as XML

Q: What does getNameData() do?
A: This function appends the matriculation number as entered in the input field, constructs a HTTP GET request and sends it to the server.

Q: What step of AJAXifying Web Documents does this code belong to?
A: Step 2: Communicating with the Server

Q: In what step of AJAXifying Web Documents is this code used?
A: Step 3: Parsing the Response

Q: What does this function do and how are the results accessed?
A: - This method retrieves the response from the server and splits the string into a two element string array, containing the last and first name, separated by a comma.
- Using the ID attributes defined in the HTML source, we can directly access the correct input fields and fill them with the last and first name.

Q: What is this and what does it do?
A: callback handler: a function that will be invoked when the
response is received from the server

Q: Why are callback handlers needed?
A: We cannot directly invoke the data response processing function, since the send()
method of XMLHttpRequest returns immediately, and the server communication is
executed in a separate thread

Q: When is a callback handler invoked?
A: when the server response is received

Q: Are the data requesting and the data receiving functions connected in the process of AJAXifying Web Documents?
A: No, they are independent, a callback handler serves as an indirect connection

Q: When does XMLHttpRequest execute the callback function?
A: on every state change

Q: What step of AJAXifying Web Documents does this code belong to?
A: Step 4: Putting It All Together

Q: Name the 5 XMLHttpRequest states
A: - 0 (uninitialized): the send() method has not yet been invoked.
- 1 (open): the send() method has been invoked; the request is in progress.
- 2 (sent): the send() method has completed.
- 3 (receiving): the response is being received.
- 4 (loaded): the response has been parsed and is ready for harvesting.

Q: Why is this code line necessary?
A: It's necessary because the function should only be executed when the request is fully processed (when the XMLHttpRequest state is "loaded")

Q: Why is a try/catch block used here?
A: Because newer versions of the Internet Explorer use a different syntax for the XMLHttpRequest
object, so the code tries to find out which version to use

Q: Name a cross-browser issue w.r.t XMLHttpRequest
A: Microsoft Internet Explorer (5.0+) uses a different syntax for the XMLHttpRequest
object

Q: How are errors handled when AJAXifying Web Documents?
A: by querying the HTTP status of XMLHttpRequest

Q: Is Ajax purely asynchronous?
A: No, the XMLHttpRequest object can also be used synchronously (blocking)

Q: What does the highlighted argument do?
A: It makes the XMLHttpRequest synchronous instead of asynchronous

Q: What happens during a synchronous request?
A: the browser’s user interface becomes nonresponsive for
the duration of the request

Q: What is a potential drawback of synchronous requests?
A: Network latency: The user notices even small delays - if the request takes ten seconds, the
user will most probably terminate the operation

Q: Name an issue that could occur when there is a lot of network latency
A: - Side effects, caused by latency, may cause problems in data processing and user interaction.
- Consider an asynchronous auto-fill function, as discussed above. If the background request takes too long to return, the user might begin populating the fields by hand.

Q: What is the origin of Javascript?
A: Javascript is Netscape’s (and Mozilla’s) implementation of the ECMAScript standard, a script language based on prototype-based programming.

Q: Name four advanced programming features Javascript supports
A: - continuations
- closures
- aspect-oriented programming
- on-the-fly type modification

Q: What is the use of Javascript in the AJAX context?
A: creating a rich user interface

Q: Do Javascript variables have to be declared?
A: no

Q: Name two problems of instant declaration of variables (e.g. in Javascript)
A: - no type-check
- no checks against misspellings

Q: Which four basic types does Javascript support?
A: object, number, string, boolean

Q: What value do Javascript functions return implicitly when no return value is specified?
A: undefined

Q: What happens in this situation?
A: The function myFunc() overrides the function myFunc(a). Functions
are identified only by their name, not by their parameters. (parameters are optional)

Q: What is the function type in Javascript?
A: A variable type that refers to functions

Q: Can functions be re-defined in Javascript?
A: yes

Q: What is a closure?
A: The function is able to access the state of its enclosing block - this feature is known
as closure. A closure retains access to the state of the enclosing block; when used
later, that state is still available to the closure.

Q: How can Javascript code be included in a HTML document?
A: inside a script element in the web document’s head section

Q: How can Javascript code defined in HTML documents be launched?
A: By providing hooks like this one

Q: How do modern browsers store copies of web pages?
A: Modern browsers store a copy of every web page as an in-memory XML tree,
regardless of whether the document source is XHTML or old HTML 2.0

Q: What happens when a browser's in-memory XML tree is modified?
A: The modifications are instantly
reflected by the browser’s rendering of the document

Q: Why is the exact representation of a web document in XML not always clear? (name 2 reasons)
A: - HTML defines many implicit elements that are not present in the HTML source but are present in the DOM tree.
- Incorrectly formulated HTML code is corrected and transformed into wellformed XML using partially browser-specific rules.

Q: What does this code do and what would be a safer way to rewrite it?
A: It directly accesses the element by its element type, should rather be accessed by ID

Q: What is Prototype?
A: a class library for the handling of AJAX requests

Q: Is Prototype Open Source?
A: yes

Q: What class library does the code below require?
A: Prototype

Q: Name 3 common usages of AJAX
A: - server side validation
- request notification
- autocomplete

Q: What is a drawback of client-side validation?
A: It can be circumvented easily

Q: How can client-side validation be circumvented? (name 2 ways)
A: - by disabling JavaScript
- by by-passing the web application accessing the server directly via Telnet

Q: What is the advantage of client-side validation?
A: usability: instant feedback, no need to wait for page to refresh

Q: Name 3 aspects of user input that should be verified
A: - type
- value range
- plausibility

Q: Which one is always mandatory, client-side or server-side validation?
A: server-side

Q: What is a requirement of client-side validation?
A: portability of the validation rule to the browser

Q: Does client-side validation allow checking the input against a database or server-side resident rules?
A: no

Q: Does AJAX allow using server-side or client-side validation?
A: both, it allows combining them

Q: How should users be notified about a request being issued?
A: graphically (due to network latency)

Q: How is a request in progress usually represented graphically to the user?
A: by an animated graphic that indicates a
request in progress which is invisible at first

Q: How can autocomplete be achieved?
A: by combining server- and client-side code:
- server side holds a list of known data and returns an unordered list starting with the numbers/string etc. the user entered
- on the client side, Ajax.Autocompleter gives suggestion for autocomplete

Q: Which of these autocomplete code snippets is server-side and which one is client-side?
A: The first one is server-side, the second client-side

Q: What are some drawbacks of AJAX? (name 3)
A: - incompatible with back button
- difficulty with bookmarks
- GET may cause data loss

Q: Why does AJAX have problems with the back button and with bookmarks?
A: because both work on the basis of whole pages, so reloading/storing the current state of an n AJAXified web document is difficult or impossible

Q: Why can GET be problematic w.r.t. AJAX?
A: Because implementing non-idempotent actions (e.g. “delete this item”) as GET methods may
cause data loss - imagine a search engine crawling your site!

Q: What is the theory of structural balance?
A: A theory about social networks capturing sources of conflict within a group

Q: What is a simple path in a graph?
A: A simple path does not repeat nodes

Q: What is the distance between two nodes of a graph?
A: the length of the shortest path
between them

Q: How does breadth-first search work?
A: It searches the graph outward from a starting node, reaching
the closest nodes first

Q: What is the small world phenomenon?
A: Smallest paths in giant graphs are usually short

Q: Who performed the study about six degrees of separation and when? Describe the study
A: Stanley Milgram and his colleagues in the 1960s
The starters were each given some personal information about the target (name, address, occupation) and asked to forward the letter to someone they knew on a first-name basis, with the same instructions, in order to reach the target as quickly as possible. Each letter passed through the hands of a sequence of friends in succession.

Q: What are Kevin Bacon Numbers?
A: “hops” from an actor to Kevin Bacon on IMDB

Q: What is triadic closure?
A: If two people in a social network have friends in common, then there is an increased likelihood that they will become friends themselves
at some point in the future

Q: What is the clustering coefficient of A?
A: - is defined as the probability that two randomly selected friends of A are friends with each other
- the clustering coefficient of node A is 1/6 because there is only a single C-D edge among the six pairs of friends (B-C, B-D, B-E, C-D, C-E, D-E)

Q: What does the clustering coefficient measure?
A: the prevalence of social networks

Q: What are bridges in social networks?
A: two nodes A and B in a graph is a bridge if deleting the edge would cause A and
B to lie in two different components

Q: Are bridges frequent or rare in giant networks?
A: rare

Q: What are local bridges in social networks?
A: - an edge joining two nodes A and B in a graph is a local bridge if its endpoints A and B have no friends in common; deleting an edge would increase the distance between A and B to a value strictly more than two
- an edge is a local bridge when it does not form a side of any triangle in the graph

Q: What is the span of a local bridge?
A: the distance its endpoints would be from each
other if the edge were deleted

Q: What is the Strong Triadic Closure Property?
A: A violates the Strong Triadic Closure Property if it has strong ties to B and C,
and there is no edge at all (strong or weak tie) between B and C. A satisfies the
property if it does not violate it.

Q: What does the Strong Triadic Closure Property say about local bridges?
A: If a node A in a network satisfies the Strong Triadic Closure Property and is
involved in at least two strong ties, then any local bridge it is involved in must be
a weak tie.

Q: What is a more real-world alternative to distinguishing strong and weak ties?
A: neighborhood overlap

How is neighborhood overlap defined?

Q: What is the neighborhood overlap of the edges of local bridges?
A: 0
neighborhood overlap definition:

Q: What is the relation between neighborhood overlap and tie strength?
A: neighborhood overlap should grow as tie
strength grows

Q: Do real social networks have tie strength differentiation?
A: yes
- Facebook: reciprocal, one-way, maintained relationship
- Twitter: weak tie (follow), direct messaging (strong tie)

Q: What is edge embeddedness?
A: number of common neighbors (equal to numerator in neighborhood overlap)

Q: What is a structural hole?
A: A network position at the end o multiple local bridges (e.g. B in this image)

Q: What social advantages do structural nodes have? (name 3)
A: - early access to information in multiple parts of the network
- combined information from several groups = amplifier for creativity
- “social gatekeeping” = prevent triangles from forming around the local bridge

Q: What disadvantage do structural holes have?
A: less embedded within a group, less protected by mutual neighbors

Q: What is are diversive and agglomerative methods in graph partitioning?
A: diversive methods: identify and remove the “spanning” links between densely connected regions -> network begins to fall apart
agglomerative methods: find nodes that are likely to belong to the same region and merge them together

Q: Which nodes are good starting points for graph partitioning?
A: local bridges

Q: What is the betweenness of an edge?
A: The total amount of flow it carries

Q: How can betweenness be calculated?
A: 1) breadth-first search, starting at node A
2) number of shortest paths from A to each other node
3) determine amount of flow from A to all other nodes

Q: What is intrinsic vs. contextual formation of links?
A: - intrinsic: a friendship forms because two people are introduced through a common friend (triadic closure)
- contextual: a friendship forms because two people attend the same school or work in the same company

Q: How can homophily be measured?
A: - calculate the probabilities of a cross-class edge based on fractions of graph of different classes
- if fraction is cross-class edges is significantly less than probability, evidence for homophily

Q: What are some mechanisms underlying homophily? (name 2)
A: - selection (immutable characteristics, some of them determined at birth)
- socialization and social influence (mutable characteristics, people may align behaviors with friends)

Q: What is a focus point in a social network?
A: psychological, legal, or
physical entities around which joint activities are organized (e.g., workplace)

Q: What is an affiliation network?
A: - represents affiliation of people with foci
- bipartite graphs: nodes can be divided into two sets such that every edge connects a node

Q: Explain the Co-Evolution of Social and Affiliation Networks
A: - a shared focus provides the opportunity to become friends
- the friendship of people can influence each other’s choice of foci

Q: Name the three types o closure in social networks
A: triadic, focal, membership closure

What is triadic closure?

What is focal closure?

What is membership closure?

Q: What is the Schelling model?
A: The Schelling Model shows how spatial segregation can arise from homophily
- there is a population (agents), each of type X or type 0, residing in cells of a grid
- a cell’s neighbors are the cells that touch it, including diagonal contact
- each agent wants to have at least t agents of its own type in its neighborhood
- if this is not the case, the agent is unsatisfied and moves to a new cell

Q: What is a clique in social networks?
A: A complete graph (everyone knows everyone else)

Q: What happens in terms of structural balance, when two nodes are both positively connected (i.e. friends) two a third node but negatively connected (i.e. enemies) to each other?
A: There is "psychological stress and instability" in the network, there would be an implicit force for the third node to get the others to become friend

Q: Are triangles with three + or three - balanced in social network theory?
A: + triangles are balances, - triangles are unbalanced

Q: How is structural balance in networks defined?
A: - a graph is balanced if every one of its triangles is balanced
- for every set of three nodes, if we consider the three edges connecting them, either all three of these edges are labeled +, or else exactly one of them is labeled +

Q: Are these networks balanced or unbalanced?
A: left: balanced, right, unbalanced

Q: Define the Cartwright-Harary Theorem
A: If a labeled complete graph is balanced, then either
all pairs of nodes are friends, or else the nodes can be divided into two groups, X
and Y, such that every pair of people in X like each other, every pair of people in Y
like each other, and everyone in X is the enemy of everyone in Y.

Q: What is human-based computation?
A: Human Computation is an idea of solving the difficult artificial intelligence (AI) problems through human power and interactions

Q: How can human computation system be classified according to Yuen et al?
A: - initiatory
- distributed
- social game-based

Q: What do initiatory human computation systems do?
A: complete tasks that are natural for humans, collect common-sennse knowledge from users

Q: What type of human computation do CAPTCHAs belong to?
A: initiatory

Q: What is the difference between CAPTCHA and reCAPTCHA?
A: - CAPTCHA distinguishes humans from computers
- reCAPTCHA also produces valuable common sense knowledge to improve OCR quality in digitizing books

Q: What is the objective of distributed human computation?
A: to encourage a huge population of Internet users to contribute to solve
the difficult AI problems

Q: Name 3 examples for distributed human computation
A: e.g. Razor, Proofreader, Wikipedia, Yahoo Answers, Amazon Mechanical Turk, LabelMe, ...

Q: What is the idea behind social game-based human computation?
A: make commonsense knowledge collection into games, then you don't have to pay people to do it (yay exploitation (: )

Q: Name 3 examples for social game-based computations
A: ESP game, Peekaboom, Verbosity, ...

Q: Which two aspects are important in social game-based human computation?
A: - quality of collected information
- enjoyment of players in the game

Q: What is the ESP game?
A: a game to get people to manually label image son the web

Q: How many people are needed to assign labels to all images indexed by Google in 31 days?
A: 3000

Q: How do you play the ESP game?
A: - partners are randomly assigned among all people playing the game
- goal: guess what partner is typing for image
- when both players have typed the same string, the move on to next image
- partners get points for agreeing

Q: 1) What are taboo words in the ESP game, 2) how are they obtained and 3) why are they necessary?
A: 1) words that players can't enter as a guess (commonly guessed words related to image)
2) obtained from the game itself
3) force play to make more specific guesses, guarantee that image will get many different labels

Q: What is the good label threshold in the ESP game?
A: - before a label is attached to the image and used as a taboo word, it must have
been agreed upon by at least
X number of pairs - X is the threshold

Q: When is an image done in the ESP game?
A: when pairs are unable too agree on new labels and consistently ask their partners to pass on the image

Q: Can images be re-inserted in the ESP game and if so, why?
A: Yes, fully labeled images are re-inserted into the game when several months have
passed because their meaning may have changed

Q: Name 3 anti-cheating mechanisms in the ESP game
A: - random assignment of players
- IP addresses are recorded
- massive agreement detection

Q: What is pre-recorded game play in the ESP game?
A: - does not require two people to be playing at the same time
- a single person can play with a pre-recorded set of actions as their partner
- these actions are recorded from earlier game sessions

Q: What is Galaxy Zoo?
A: a project to have users classify galaxies according to criteria because this task is hard for automated systems

Q: When was Galaxy Zoo launched?
A: in 2007

Q: How can unreliable data occur in Galaxy Zoo and how is it prevented (partly)?
A: - Unreliable data can occur if users have problems with their browser or somehow actively cheat
- If there are more than 5 classifications of the same user for one galaxy, those users are removed from the catalogue

Q: How are classifications weighted in Galaxy Zoo?
A: Users who agree with the majority are given more weight in their classification

Q: What is the Hawthorne effect?
A: users participating in a bias study may change their normal behavior

Q: What are social search engines?
A: Engines which don't find the right document but the right person for a user's information need

Q: Name 5 aspects of traditional search engines
A: - use the concept of a library to collect and organize information - Information is gathered and indexed
- It can be retrieved by using keywords and search operators
- An algorithm matches keywords with the most relevant documents
- Trust can be achieved by authority (i.e. content providers)

Q: Name 4 aspects of social search engines
A: - ... use a “village concept” [Horowitz D, Kamvar S.D]: In a village, information is present through the knowledge of all inhabitants
- It can be retrieved by using natural language queries
- An algorithm looks for the person who is likely to be good at answering the question (i.e. the query)
- Trust is based on intimacy

Q: What does Google PageRank do?
A: Weighs importance of a website based on the amount of
links pointing to the site

Q: What is tagging?
A: adding user defined keywords to content for better retrieval

Q: What does "lazyweb" mean?
A: Using social networks to ask questions which are then
answered by friends

Q: What is social bookmarking?
A: sharing interesting websites in a public directory, with the
ability for users to rank pages and add tags (e.g. Reddit)

Q: Does "Social Search" always imply a search engine?
A: No, “Social Search” itself is a broader term that does not necessarily mean a search
engine

Q: Name three of the first applications of social search
A: tagging, social bookmarking, Google PageRank

Q: What is Aardvark?
A: Aardvark is supposed to build a complete social search engine that allows users to
ask any question and answer questions that are routed to them

Q: Which two things does Aardvark need to know?
A: - the social graph of a user (i.e. his or her friends)
- the expertise of the user

Q: When was Aardvark built and acquired by Google?
A: - built in 2008
- acquired in 2010

Q: What do users need to do to register on Aardvark? (2 things)
A: - add social graph information (e.g. link Facebook account, manually add users)
- define keywords describing their expertise in a subject

Q: How is the probability that a user will successfully answer a question computed on Aardvark?
A: by combining
- the probability that a user has the necessary expertise
- the degree of social connectedness between asker and answerer

Q: How does Aardvark analyze the content of a question? (3 steps)
A: - sort out if answer is to trivial or not a question (e.g. "What time is it")
- questions containing location are treated differently by routing engine
- topics mapped to question by using keywords appearing in text and taxonomy of popular questions

Q: What is an advantage of Aardvark over traditional search engines?
A: questions have 3-4 times as much context on Aardvark

Q: What is a disadvantage of Aardvark compared to traditional search engines?
A: results are slower than traditional search engines (about 0-6 minutes on average)