Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due....

26
Scalable Web Programming CS193S - Jan Jannink - 3/02/10

Transcript of Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due....

Page 1: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Scalable Web Programming

CS193S - Jan Jannink - 3/02/10

Page 2: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Weekly Syllabus1. Scalability: (Jan.)

2. Agile Practices

3. Ecology/Mashups

4. Browser/Client

5. Data/Server: (Feb.)

6. Security/Privacy

7. Analytics

8. Cloud/Map-Reduce

9. Personalization & Published APIs: (Mar.)*

10. Future

* assignment due

Page 3: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Administrative Stuff

Grades to be sent out today

Final assignments due on Friday

Demo lunch details firmed

several more guests added

Page 4: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Must Dos for Friday

Push your code frequently

good comments important

discipline for coding incrementally

Testing demonstrates APIs & functionality

enables quicker fixes

Page 5: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Topics

Why personalization?

Identity

Self expression

Marking territory

Games and play

Page 6: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Personalizaton & Scaling

Significant user activity now requires

ability to customize

iGoogle, est. 40,000,000 users

Blogging as an identity building exercise

customization is self expression

marking territory extends identity

Page 7: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Real World Examples

Graffiti, custom plates

Custom bikes and cars

Clothing, make up, luxury items

Landscaping

School / company swag, affiliation symbols

Page 8: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Custom FeaturesBackground color, design, image

Font, line styles

Widget placement

Style sheet, template, theme

Embedding, drag and drop editing

Avatar

Page 9: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Post Anonymous Web

Historically voluntary identity disclosure

professional IDs often leaked

Facebook, LinkedIn, Google Buzz

first global systematic ID establishment

Page 10: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Very Diverse PeopleLast person who should lecture about this

Unimaginably different mental models

observation of computer/browser operation

academic apprenticeship of the web

Humbling rule of thumb

everyone is irreconcilably different

Page 11: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Second Life Example

2003 launch (1999 founding), after There.com

Second mover advantage?

Customization and market economy

programmer API + currency = trade

end user ownership of goods

Page 12: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Game DynamicsGame economy

user interaction is a reason to stay

the more direct the communication the better

(Repetitive) entertaining activity

online activity is real world entertainment

critical to business monetization

Page 13: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

User ProfilesBecoming an online proxy for the user

Enable people to be found

Define automated activity to support user

RSS subscriptions, Twitter feeds

Alerts to new web content, email, etc.

Support self expression

Page 14: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Targeting

Potential drawback of personalization

AdWords validates targeting

Spyware, malware

VCs have praised spyware targeted ads

Can free web accounts be spyware?

Page 15: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Wiki Editable ContentSelf expression enabled

many rich text toolkits for in app editing

In place editing vs. separate edit page

pop ups also user friendly

Counter example

Twitter

Page 16: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Geotagging

GPS / cell tower coordinate metadata

On line expression of territory

FourSquare simplifies this dramatically

RunThere makes it easy to track exercise

EveryTrail records trips, photos, video

Page 17: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Augmenting Real Lifeflickr - photo blogging

meetup - connecting online and in the

yelp - rating places, food

foursquare - squatting places

loopt - locating friends

plentyoffish - dating

Page 18: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Magnetic ContentHoly grail

never search for anything

the info you want is already waiting for you

State of the art

news aggregators, RSS readers, feeds, Buzz

search alerts, email monitoring

Page 19: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Back to SoftwareProfile clustering

object ownership

Spatial indexes

interleaved coordinates

Information alerts

Feeds

Page 20: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Global Databasegit highlights shared data management issues

local repo is owner of your content

push synchronizes rest of world

pull synchronizes local repo

Manual prior resolution vs. undo conflict

Google Docs model

Page 21: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Z-ordered Curve

Page 22: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Rule Engines

Set trigger conditions to get information

inserts, updates, searches, deletions

Powerful functionality

in general difficult to guarantee performance

simple (non-cascading) triggers sufficient

Page 23: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

FeedsRSS readers easily overwhelm users with info

Social media sites often provide these

Top 10 ...

Recent

Commented

Headlines

Page 24: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Worth Checking Out

Web 2.0 exercising

http://runthere.com/

Virtual worlds

http://secondlife.com/

http://www.there.com/

Page 25: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Q & A Topics

Future of personalization

Personas, avatars

Agents

Page 26: Scalable Web Programming · Personalization & Published APIs: (Mar.)* 10. Future * assignment due. Administrative Stuff Grades to be sent out today Final assignments due on Friday

Scalable Web Programming

CS193S - Jan Jannink - 3/02/10