Socially Driven Web Sites for the Masses

Similar documents
GrassRoots: Socially-Driven Web Sites for the Masses

Part 3: Online Social Networks

Database Driven Web 2.0 for the Enterprise

Backend Web Frameworks

PHP & PHP++ Curriculum

WordPress & Web Development. Student Curriculum

Get in Touch Module 1 - Core PHP XHTML

PHP. MIT 6.470, IAP 2010 Yafim Landa

Introduction to PHP. Handling Html Form With Php. Decisions and loop. Function. String. Array

<Insert Picture Here> Introduction to MySQL

Functionality, Challenges and Architecture of Social Networks

Informa(on Retrieval

Utilizing Folksonomy: Similarity Metadata from the Del.icio.us System CS6125 Project

Semantic Web and Web2.0. Dr Nicholas Gibbins

HTML 5 and CSS 3, Illustrated Complete. Unit M: Integrating Social Media Tools

Ning Frequently Asked Questions

PHP TABLE OF CONTENTS. For Young Aspirants KARMICK. Introduction. The ABCs of PHP. Why Choose PHP As A Career?

Digital Marketing Proposal

DP Project Development Pvt. Ltd.

1) WordPress, Live project, This will taught by trainer. 2) Assignment project in WordPress: This is done by student while giving training.

Developer Internship Opportunity at I-CC

Exploring the Benefits of Using WordPress for Learning. John Polaschek & B.J. Schone, Qualcomm

Website Designing Training

Static Webpage Development

Getting Started with Memcached. Ahmed Soliman

CSense: A Stream- Processing Toolkit for Robust and High- Rate of Mobile Sensing ApplicaDons

Overview

Research. Niche research. Market research

Digital Marketing. Introduction of Marketing. Introductions

Whirlwind Tour of Web Mashups. Sophia Liu November 19, 2008

Upload to your web space (e.g., UCSC) Due this Thursday 4/8 in class Deliverable: Send me an with the URL Grading:

Prototyping Data Intensive Apps: TrendingTopics.org

Web Programming Paper Solution (Chapter wise)

Blogger Frequently Asked Questions

All India Council For Research & Training

Full version is >>> HERE <<<

A Guide to Using WordPress + RAVEN5. v 1.4 Updated May 25, 2018

Read & Download (PDF Kindle) PHP Ajax Cookbook

PROFESSIONAL TRAINING

Module 1: Internet Basics for Web Development (II)

Before you start proceeding with this tutorial, we are assuming that you are already aware about the basics of Web development.

SEVENMENTOR TRAINING PVT.LTD

COMP284 Scripting Languages Lecture 9: PHP (Part 1) Handouts

Classroom Blogging. Training wiki:

IEEE Wordpress Theme Documentation

Basics of Web. First published on 3 July 2012 This is the 7 h Revised edition

The Ultimate Digital Marketing Glossary (A-Z) what does it all mean? A-Z of Digital Marketing Translation

Passwords. Twitter UN: IDANRV Twitter PW: idanrv1. Thank You

How To Install Modules Joomla 2.5 On Wamp Server Pdf

Social Media Tools. March 13, 2010 Presented by: Noble Studios, Inc.

Thursday, 26 January, 12. Web Site Design

Distributed Systems. 29. Distributed Caching Paul Krzyzanowski. Rutgers University. Fall 2014

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Drupal

Web development using PHP & MySQL with HTML5, CSS, JavaScript

ELEC6910Q Analytics and Systems for Social Media and Big Data Applications Lecture 4. Prof. James She

Page Title is one of the most important ranking factor. Every page on our site should have unique title preferably relevant to keyword.

Make your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010

Index A Access data formats, 215 exporting data from, to SharePoint, forms and reports changing table used by form, 213 creating, cont

Open Research Online The Open University s repository of research publications and other research outputs

Qiufeng Zhu Advanced User Interface Spring 2017

Building a website. Should you build your own website?

SEO is one of three types of three main web marketing tools: PPC, SEO and Affiliate/Socail.

Web Development. With PHP. Web Development With PHP

Welcome to the quick start guide for Leadin. We also have tutorial video s located in the members area for more of a in depth look at the software.

Internet Applications. Q. What is Internet Explorer? Explain features of Internet Explorer.

Marketing & Back Office Management

Advertising Network Affiliate Marketing Algorithm Analytics Auto responder autoresponder Backlinks Blog

Working with WebNode

KS Blogs Tutorial Wikipedia definition of a blog : Some KS Blog definitions: Recommendation:

THE TOP 10 THINGS YOU NEED TO KNOW ABOUT THE ADMINISTRATION OF YOUR CHURCH

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

Study before beginning these instructions.

Introduction to Adobe CQ5

How-To Guide: My Participant Center.

AURA ACADEMY Training With Expertised Faculty Call us on for Free Demo

Contents. Acknowledgments

Making a wiki is as easy as making a peanut butter sandwich!

[DIGITAL MARKETING PROPOSAL TO WEBSITE NAME]

MARKETING STRATEGY SEO SUPPORT

Software Development & Education Center PHP 5

Course Syllabus. Course Title. Who should attend? Course Description. PHP ( Level 1 (

Search Language - Beginner Mitch Fleischman

ibreathesports Inc. Apurva Alok Bernardo Silva

Full Stack Web Developer

Ignite Visibility Consulting. How to Blog. Prepared by John Lincoln. Copyright 2013 Ignite Visibility Page 1

MULTIPARTY ACCESS CONTROL FOR ONLINE SOCIAL NETWORKS: MODEL AND MECHANISMS

web development BUILDING, MANAGING, AND GROWING YOUR ONLINE PRESENCE

WEBSITE INSTRUCTIONS

11 Database Management

Wordpress 101. Christy Costello & Becca Sayre

In this third unit about jobs in the Information Technology field we will speak about software development

WEB DESIGNING COURSE SYLLABUS

DonorDrive Fundraising Guide: Getting Started with Online Fundraising

SEO is one of three types of three main web marketing tools: PPC, SEO and Affiliate/Socail.

Combining Images and Commentary with VoiceThread. by Sharon Scinicariello

SEO is one of three types of three main web marketing tools: PPC, SEO and Affiliate/Socail.

Urgent Training What Google Wants Now In What Google Wants Now In 2016

Microsoft SharePoint 2010 The business collaboration platform for the Enterprise and the Web. We have a new pie!

FILIPINO VIRTUAL ASSISTANCE-CHINA Action Item

CIS 086 : Week 1. Web Development with PHP and MySQL

Transcription:

Socially Driven Web Sites for the Masses Frank Uyeda Diwaker Gupta, Amin Vahdat, George Varghese University of California, San Diego

Grass roots communides wish to have websites that allow them to submit and flexibly search for data. These communides require tools that are simpler than those currently available (e.g. Apache, PHP, MySQL). To build such tools we need models for: data objects, page layout, and, most importantly, search. We have instandated these model in an easy to use language called GrassRoots, and compiler called GR.

Web ApplicaDon Pre packaged Custom GrassRoots ConfiguraDon Wikis, Blogs, CMS (WordPress, Joomla) PresentaDon (Dreamweaver) ApplicaDon Logic (PHP, Ruby, Python) Web Frameworks (Zend, Rails, Django) PresentaDon ApplicaDon Model ApplicaDon Logic (Auto Generated) Database ConfiguraDon (Pre specified) Database ConfiguraDon Database (MySQL) Database ConfiguraDon (Auto Generated)

MoDvaDon Modeling Results

Big social networks internadonal phenomenon. North America: Facebook (250M) South America / India: Orkut (67M users) Not just social networks YouTube (video sharing), Digg (social bookmarking) Growing interest in smaller sites specialized by industry, enterprise and communides. Wellpoint (insurance) Cisco (company specific)

Lots of people! Example: Physics Researchers Want to share data sets, tag interesdng features Example: Digital ArDsts Want to share data visualizadon programs & collaborate Example: Local Parents & Baby sigers Want job posdngs, referral network Require database & applicadon logic. These communides lack resources and experdse. Need cheap, easy to use tools!

Difficult to prototype new ideas Not clear which web development framework will work best Require knowledge of database schemas, web programming languages, design techniques Significant Dme and experdse needed to develop an operadonal site Large, complex code base IntegraDon with user management, access control and web API s Engineer for security and privacy General techniques to scale are unknown Performance tuning is black magic Hire a consultant Addressed in this talk

Site Objects Search Flickr Images Keyword, Tags, Comparison (geo tags) YouTube Video Keyword, Tags Last.fm Audio Tags, Structural Del.icio.us URLs Tags Digg URLs Taxonomy, Keyword Craigslist LisDngs (Image + Text) Taxonomy, Keyword, Comparison Wikipedia ArDcles (Text) Keyword, Structural Facebook User Profile (Image + Text) Structural, Tags

Users create and upload content Content organized/ranked based user input Search based on: Associated keywords (e.g., Del.icio.us tags) Structural reladonships (e.g., friends in Facebook) Taxonomy / Hierarchy (e.g., categories in Digg) Comparison / Proximity (e.g., geo tagging in Flickr)

Model: Create an abstract model for community driven web sites. Specify: Allow developers to express an abstract site model in the GrassRoots language. Compile: The GrassRoots compiler generates web code and configures storage.

MoDvaDon Modeling Results

Insight 1 (Layout): Pages are composed of panes that are populated by search results. Insight 2 (NavigaDon): All navigadon is search. Insight 3 (Search): Graph based search with agribute filtering covers exisdng social search mechanisms.

GrassRoots objects: High level types (e.g., video, image, text), Composite types like C structs Built in agributes: taggable, commentable RelaDonships as Graphs General Graph (e.g. friends in Facebook) Directed Graph (e.g. YouTube Subscribers) Hierarchy / Tree (e.g. Craigslist categories)

What is? Community photo sharing website Users associate with each other Images organized using: Keyword tags User photo sets Group pools

StaDc Pane Search Pane Picture Summary Pane Set Summary Pane

A page is composed of one or more panes Panes are populated by embedded searches Pane A region within the Page Handles the input and output of a pardcular data collecdon, or displays stadc content Defined once, and reused across many pages Pane aesthedcs customized with CSS

User specified Search Pre specified Search

NavigaDon associates clicking on a data object to a page and search parameters. Pages embed searches. the linkto keyword provides parameters to searches. Syntax: [object in pane] > linkto [page]( [params] ); Example: Clicking on a user s name displays all pictures owned by that user. user > linkto all_users_pictures( user );

Hierarchy Agribute Filter Ordering

SELECT <collecdon> [FROM <structural reladon>] [WHERE <filter condidon> ] [ORDER BY <ranking funcdon> ] Structural reladons: Graphs: neighbor, Tree: subtree, parent, children Filter condidons: matches, contains, greater than, between, within distance, tagged by Ranking: CombinaDon of agributes or graph properdes (e.g. node degree)

MoDvaDon Modeling Results

Claim: Small changes to the specificadon provide important features at low cost. Example: Flickr tags photos with keywords Facebook tags photos with Users How do we change our Flickr specificadon to incorporate User tagging?

COMPOSITE Picture { IMAGE pic; TEXT pic_dtle; TEXT pic_descripdon; } (taggable, taggable by USER, commentable); PAGE pic_detail( Picture p ) { Detail(Picture) main : LOOKUP Picture p; } Detail Pane : Picture{ _owner > linkto user_profile( _owner ); _tag > linkto tag_result( _tag ); _tag.user > linkto user_profile( _tag.user ); "add tag" > linkto add_tag( this ); "add to set" > linkto add_to_set( this ); "add to group" > linkto add_to_group( this ); }

User Tags

SpecificaDon Parser Abstract Model Compiler Database Planner Server Scripts Page Generator Database Schema HTML Pages Web Server Implemented in Java (~15K lines of code) Page generadon in various languages. Currently supports PHP Database

Implemented Flickr like site using Rails plug ins & GR Code Complexity 50 lines of code across 19 files (vs. 180 lines in 1 file) Picture retrieval throughput: Grassroots gives 2x max throughput. Grassroots only generates necessary code Ruby has large call tree. Tag search throughput 20 most recent 500:1 performance difference, favoring GrassRoots. Suspect poor SQL queries & failure to parallelize.

Need beger tools for construcdng social sites. Leverage the commonalides among sites. We provide abstracdons to ease development. Pages are composed of panes All navigadon is search Graph based search with agribute filtering AbstracDons provide flexibility & opportunity for opdmizadon.