Part 3: Online Social Networks

Similar documents
Functionality, Challenges and Architecture of Social Networks

php Mr. Amit Patel Hypertext Preprocessor Dept. of I.T.

If you re a Facebook marketer, you re likely always looking for ways to

Lecture 2: Social Media

What is PHP? [1] Figure 1 [1]

1/13/2011. Using the Four C s of Social Networking. QR Code Handout Slides

Marketing & Back Office Management

ITP 342 Mobile App Development. APIs

History and Backgound: Internet & Web 2.0

Terms and Conditions

Azureus Plugin for Facebook Integration

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

Library 2.0 for Librarians

Module 1: Internet Basics for Web Development (II)

The Web: Concepts and Technology. January 15: Course Overview

Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs.

Database Driven Web 2.0 for the Enterprise

Dive Into Web 2.0 (In Chapter 3) Part One

20486-Developing ASP.NET MVC 4 Web Applications

Princess Nourah bint Abdulrahman University. Computer Sciences Department

SCU SEEDs Workshop Angela Musurlian

ITP 140 Mobile Technologies. Mobile Topics

Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (Swift, Apps, Javascript, PHP, Python, Sql, HTML) By Os Swift

Internet Basics. Basic Terms and Concepts. Connecting to the Internet

Building Facebook & OpenSocial Applications with Java Technology

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

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

Digital Marketing Proposal

CPET 581 E-Commerce & Business Technologies. Topics

Chapter 7:- PHP. Compiled By:- Sanjay Patel Assistant Professor, SVBIT.

Web 2.0: Is it a Whole New Internet?

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

TITLE SOCIAL MEDIA AND COLLABORATION POLICY

The Internet, the Web, and Electronic Commerce The McGraw-Hill Companies, Inc. All rights reserved.

Web 2.0. Agenda. What you will need to have handy for this class. Social Software Applications for Libraries. Day 1. Day 2

1 P a g e C o p y r i g h t S E O I n c. SEO Inc. Consulting Pinterest

Introduction to Kony Fabric

Firespring Analytics

Online Communication. Chat Rooms Instant Messaging Blogging Social Media

Full Stack Developer with Java

Overview. History of programming What are social network systems? Basic concepts of Social programming

Welcome to CS120 Fall 2012

Scalable Web Programming. CS193S - Jan Jannink - 2/16/10

Programming Fundamentals of Web Applications

Build Meeting Room Management Website Using BaaS Framework : Usergrid

Syllabus INFO-GB Design and Development of Web and Mobile Applications (Especially for Start Ups)

GRITS AJAX & GWT. Trey Roby. GRITS 5/14/09 Roby - 1

Like It Or Not Web Applications and Mashups Will Be Hot

welcome to BOILERCAMP HOW TO WEB DEV

Nick Terkay CSCI 7818 Web Services 11/16/2006

Website Report for facebook.com

Developing ASP.NET MVC 5 Web Applications

CS Final Exam Review Suggestions - Spring 2018

Facebook Fan Pages + Apps. And lots more Mike Richwalsky Allegheny College

Walk The Walk Social Media

Blogging using Wordpress

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS

Progressive Web App (PWA) Features

facebook a guide to social networking for massage therapists

What is Facebook? By

COPYRIGHTED MATERIAL. Social Network Programming

Getting Published in Apple News

Social Media 101 Uses of Social Media to Promote Your Toastmasters Club

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

Social Media and Web 2.0. The Social Media and Web 2.0 webinar will begin shortly.

INTERNET PROGRAMMING. Software Engineering Branch / 4 th Class Computer Engineering Department University of Technology

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

How To Guide. ADENION GmbH Merkatorstraße Grevenbroich Germany Fon: Fax:

P2_L12 Web Security Page 1

Introduction to Web Development

Computer Science Seminar. Whats the next big thing? Ruby? Python? Neither?

Go To Consulting LLC.

Best of SharePoint Sites and Communities

Web Engineering. Introduction. Husni

PHP by Pearson Education, Inc. All Rights Reserved.

Viewer 2.0. Shared Media one of the exciting improvements! 2010 Linden Lab 2

Join. Sign in You may use a Google account, UMich account, or have profiles at both addresses.

Ning Frequently Asked Questions

TABLE OF CONTENTS 1. INTRODUCTION DEFINITIONS Error! Bookmark not defined REASON FOR ISSUE 2 3. RELATED DOCUMENTS 2 4.

Socially Driven Web Sites for the Masses

Technology Brown Bag: Web 2.0

AD406: What s New in Digital Experience Development with IBM Web Experience Factory

Feature: Online App Builder Studio

Facebook mobile platform

ibreathesports Inc. Apurva Alok Bernardo Silva

Messaging App Forensics with Autopsy

PHP. MIT 6.470, IAP 2010 Yafim Landa

What s a module? Some modules. it s so simple to make your page unique

Drupal 8 THE VIDER ITY APPR OACH

SOCIAL MEDIA. Charles Murphy

CSC 443: Web Programming

EPHP a tool for learning the basics of PHP development. Nick Whitelegg School of Media Arts and Technology Southampton Solent University

How to Use Social Media Analytics

AJAX Programming Overview. Introduction. Overview

6 TIPS FOR IMPROVING YOUR WEB PRESENCE

Table of Contents Chapter 3. Creating Your Own Pages...

Communications Workshop Notes

BRAND BOOK. Best Practices

Website Report for test.com

A Virtual Smartphone

Transcription:

1 Part 3: Online Social Networks

Today's plan Project 2 Questions? 2

Social networking services Social communities Bebo, MySpace, Facebook, etc. Content sharing YouTube, Flickr, MSN Soapbox, etc. Corporate LinkedIn, Plaxo, etc. Portals MSN, Yahoo 360, etc. Recommendation engines Last.fm, StumbleUpon, Digg, Me.dium, etc. Bookmarking/Tagging Del.icio.us, CiteUlike, Furl, etc. Discussion groups Blogs, forums, chat, messaging, Live QnA, etc. Mobile social networks Vipera, Nokia MOSH, etc. Virtual worlds Second life 3

Social Network Sites: History [Boyd et al., 2007] SixDegrees.com the first recognizable OSN Profiles and lists of friends Combined existing features! Failed - Nothing to do after accepting friend requests. OSN wave after 2001 Friendster: Technical and social difficulties with scale! Fakesters diluted the community MySpace: Capitalized on Friendster s problems Bands and fans Allowed personalization of profiles Facebook: Growth: Harvard-only => University-only => high schools & professionals => everyone Introduced applications (provided APIs) 4

Social networking services Shift in online communities OSNs are organized around people Egocentric networks WEB: world composed of groups OSNs: world composed of networks Source: Bebo, Social Media getting your message across 5

What do social networks enable? Leveraging the community in traditional applications Content/information sharing Search Information management Recommendations Advertisements 6

What is social media marketing anyway? Growing out of search marketing, and public relations before that Social media marketing is any way you can get attention for your message using people connected to the Internet People + message + Internet = social media marketing 7

Content-based social media marketing Focuses on the content to be posted and passed around: blogs, videos, photos, news stories, podcasts Or bookmarks to the content Feeds viral marketing Content sites Bookmarking sites 8

Personality-based social media marketing Consumer companies create character profiles, but may not be the best marketing for IT companies IT consultants create professional profiles 9

Interest-based social media marketing Communities form around topics of interest, such as message boards and specialty search engines IT marketers must get into these conversations Maybe social bookmarking sites fit into this category, too 10

Fantasy-based social media marketing Virtual worlds, inhabited by avatars, allow fantasy lives that marketers wish to be part of Apple, IBM, and other companies already play Kids have their worlds, too, but IT marketers can safely ignore them 11

Social media marketing can be planned Choose interesting topics for your stories just like good old public relations Use good titles and descriptions just like search marketing Make it easy to bookmark, unless you think that s cheesy <title> 12

Even virtual worlds get marketing plans IBM has over 4,000 employees who participate in over 30 Virtual Worlds Orientation Area and Map of part of IBM s presence in Second Life IBM has more than 30 virtual islands in Second Life for developer support, client meetings, and more 13

Plan for next two weeks Today: Facebook platform overview PHP language Next Tuesday (Lecture) PHP (continued), Ziran Chen leading Next Thursday (Lab session) Project 2 presentations Facebook API, "hello world" Assignment 4: First Facebook App 14

What is Facebook Social Network More than 1Billion users worldwide Gallery, Profile Management, Collaboration, Notes, Ratings, Discussion Boards, Video all in one place You don t need to pay anything to access it 15

Benefits of developing on FB Platform User management is done by FB Harvest social relationships Viral marketing Easy to develop, promote and monetize Bring an existing app and brand into FB Support for different languages 16

Seriously, what can I develop? Imagination is the limit Games Dumb entertaining apps Content sharing apps Business apps Social network aggregator and mash-ups 17

Lets Start! 18

How an app works 19

Facebook Platform Allows third parties to develop web or desktop applications that leverage user data and Facebook s social graph e.g. name, networks, photos, friends, marketplace, etc deeply integrate into the Facebook ecosystem e.g. profile real estate, mini-feed, look and feel, etc Frontend Integration (UI) Reusing Facebook s controls and styles Backend Integration (Data) Access to user data and settings as well as scalable data store 20

Frontend Platform Markup (FBML) extension of HTML Stands for Facebook Markup Language Improves usability by allowing third-party applications to leverage existing Facebook UI controls dashboard, invite users, comments, forms, type-ahead, etc Adheres to each user s privacy settings automatically Scripting (FBJS) Stands for Facebook JavaScript Facilitates Javascript functionality in a safe context Includes native support for Ajax and Animation libraries 21

Backend Platform Query (FQL) Stands for Facebook Query Language Offers SQL-like interface to get/set user data Interface (API) Offers REST-like interface to get/set user data Client (wrapper) libraries exist in 17+ programming languages PHP, Ruby, C#, Java, Perl, Python, Lisp, etc Encapsulate common, mundane and generally difficult to get right tasks such as authentication, encryption, transformation, etc Data Store Facebook offers applications free (though capped) data store that is highly scalable (i.e. optimized distributed tables) 22

FB Platform Architecture Facebook returns requested page to User User makes request for an application hosted page Facebook sends request to application Facebook renders (parses) response from application Application renders and returns response to Facebook Your code processes form request using PHP and generates FBML pages 23

PHP Syntax <?php /* code */?> Example (http://dutch.mathcs.emory.edu/~eugene/lab9/hello.php ) <html> <body> <?php?> echo "Hello World"; </body> </html> 24

Intro to PHP PHP stands for PHP: Hypertext Preprocessor is a widely-used, open source scripting language scripts are executed on the server PHP files can contain text, HTML, JavaScript code, and PHP code code is executed on the server, and the result is returned to the browser as plain HTML PHP files have a default file extension of ".php" 25

What Can PHP Do? generate dynamic page content create, open, read, write, and close files on the server collect form data send and receive cookies add, delete, modify data in your database restrict users to access some pages on your website encrypt data 26

PHP Variables A variable is created the moment you first assign a value to it: $txt="hello world!"; <?php $x=5; $y=6; $z=$x+$y; echo $z;?> PHP automatically converts the variable to the correct data type, depending on its value. 27 27

Scope Four variable scopes: local global static parameter <?php $x=5; // global scope function mytest() { echo $x; // local scope } mytest();?> 28

Global Scope A variable that is defined outside of any function, has a global scope. Global variables can be accessed from any part of the script, EXCEPT from within a function. To access a global variable from within a function, use the global keyword: <?php $x=5; // global scope $y=10; // global scope function mytest() { global $x,$y; $y=$x+$y; } mytest(); echo $y; // outputs 15?> 29

PHP Strings Very similar to JavaScript http://www.w3schools.com/php/php_string.asp 30

Control Flow if statement - executes some code only if a specified condition is true if...else statement - executes some code if a condition is true and another code if the condition is false if...else if...else statement - selects one of several blocks of code to be executed switch statement - selects one of many blocks of code to be executed http://www.w3schools.com/php/php_if_else.asp 31

PHP Arrays <?php $cars=array("volvo","bmw","toyota"); echo "I like ". $cars[0]. ", ". $cars[1]. " and ". $cars[2]. ".";?> http://www.w3schools.com/php/php_arrays.asp 32 CS190: Web Science and Technology, 2010 32

PHP Loops <?php $cars=array("volvo","bmw","toyota"); $arrlength=count($cars); for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>"; }?> 33 CS190: Web Science and Technology, 2010 33

Associative Arrays Associative arrays are arrays that use named keys that you assign to them. $age['peter']="35"; $age['ben']="37"; $age['joe']="43"; 34

Loop through Associative Arrays $age=array("peter"=>"35","ben"=>"37","joe"=>"43"); foreach($age as $x => $x_value) { echo "Key=". $x. ", Value=". $x_value; echo "<br>"; }?> 35

PHP Functions http://www.w3schools.com/php/php_functions.asp 36

PHP Forms <html> <body> Welcome <?php echo $_POST["fname"];?>!<br> You are <?php echo $_POST["age"];?> years old. </body> </html> http://www.w3schools.com/php/php_forms.asp 37

Exercise Re-implement the JavaScript calculator app in PHP 38