Mashing It Up - PowerPoint PPT Presentation

1 / 80
About This Presentation
Title:

Mashing It Up

Description:

... NOAA Weather Service WeatherBug Yahoo Geocoding Yahoo Maps Yahoo Traffic ... Yahoo's Carousel Component. reflection.js ... – PowerPoint PPT presentation

Number of Views:122
Avg rating:3.0/5.0
Slides: 81
Provided by: tomzi
Category:
Tags: maps | mashing | yahoo

less

Transcript and Presenter's Notes

Title: Mashing It Up


1
Mashing It Up
by Tom Zillner
  • Annual WAAL Conference
  • April 18, 2007

2
Slides will be available after the conference
athttp//www.wils.wisc.edu/tzillner/waal07
3
A presentation somewhat in the telegraphic
schizophrenic manner of tales of the planet
Tralfamadore, where the flying saucers come from.
Kurt Vonnegut
4
As they step into the same rivers, different and
still different waters flow upon them.
Heraclitus (ca. 540 B.C. - ca. 475 B.C.)
5
(No Transcript)
6
What Ill Talk About
  • Definitions of mashups and APIs
  • A set of general mashup examples, including where
    to find them
  • Some library-related examples
  • A slightly deeper look at a few library-related
    mashups
  • A plug for exposure of library data
  • Making a mashup

7
Wikipedia Definition
  • A mashup is a website or web application that
    seamlessly combines content from more than one
    source into an integrated experience.

8
Top Mashup Tags at ProgrammableWeb.com
9
How Mashups Work(Actually, how one type of
mashup works. Sort of. Well, okay, not exactly,
but close enough for our purposes.)
Data
Data
Web Software or Service
Web Software or Service
Javascript Code
Web Page
10
APIs
http//lifeandhealth.guardian.co.uk/consumer/story
/0,,1965050,00.html?gusrcrssfeed1
11
API? Whats an API?
  • API stands for application programming interface.
    (Thats a big help.)
  • APIs provide a standardized way for programs (and
    web services) to communicate data to each other
    (speaking the same language).
  • APIs have been used historically to either
    encourage or discourage development of
    complementary hardware or software. (Thats still
    true today.)

12
The Two Types of API Conversation
1. I ask for some information, you send me what
I want.
2. I send you some information, you ___________.
  • Store it
  • Display it
  • Modify/transform it

13
Lets look at some examples
14
Map Mashups
15
Map Mashups
Geo Data
Data
Web Page
Web Software or Service (usually Google Maps)
Javascript Code
16
Top 50 US Medical Schools
http//www.mibazaar.com/education/medical_school.h
tml
17
http//coolmaps.7wonders.googlepages.com/
18
More Mashups
19
How Mashups Work (Redux)
Data
Data
Web Software or Service
Web Software or Service
Javascript Code
Web Page
20
http//www.truliaholic.com/
API Trulia
21
Weather Bonk
http//www.weatherbonk.com/
APIs Google AdWords Google Maps hostip.info
Microsoft Virtual Earth NASA NOAA Weather
Service WeatherBug Yahoo Geocoding Yahoo
Maps Yahoo Traffic
22
http//baebo.francisshanahan.com/
APIs Amazon A9 OpenSearch Amazon E-commerce
eBay Flickr Google Search Technorati
Yahoo Audio Search Yahoo Image Search Yahoo
Shopping YouTube
23
Why Mashups are Important
  • They free data from isolated silos through their
    use of APIs.
  • They bring together data from disparate sources
    to inform, entertain and enlighten.

24
Some Book and Library Related Mashups
25
Booksearch
http//kokogiak.com/booksearch/
APIs Amazon A9 Google Microsoft Live Search
26
E41st
http//www.amitgupta.info/E41ST/RIA/E41ST.html
API Amazon (Developed in Flash)
27
Amazon Light 4.0
http//www.kokogiak.com/amazon4/
APIs Amazon del.icio.us
28
More Details on Some Library Mashups
29
Wall of Books(New Fiction at Ann Arbor
District Library)
http//www.monkey.org/emv/superpatron/aadlnewfict
ion.html
API Syndetics
30
Ann Arbor District Library New Items List
http//www.aadl.org/feeds?typenewitemsampmata
ampsubfictionampdisp100
31
A Word On Terms
  • RSS Really Simple Syndication/Rich Site Summary
  • A format for content distribution over time
  • Often called a feed
  • Can be aggregated with other feeds and viewed
    using a computer program or web site (news
    readers or aggregators)

32
Locating Feeds
At the bottom of nytimes.com
http//www.nytimes.com/services/xml/rss/index.html

33
A Word On Terms
  • Screen Scraping
  • Programmatically capturing a stream of data that
    is meant to be displayed by an application and
    extracting selected content
  • Fragile

34
Wall of Books
  • Screen scrape the new books RSS feed from AADL
    to get ISBNs and links to library catalog
  • Dynamically create a web page of new books
  • For each new book
  • Construct image URL with ISBN and feed to
    Syndetics to get book cover thumbnails
  • e.g., http//syndetics.com/hw7.pl?isbn068987040X
    A/SC.gif
  • Make the image link to the library catalog record
  • e.g., http//www.aadl.org/cat/seek/record1257872
  • Display the page!

35
Mystery Carousel(New mysteries listing,
Cambridge, Ontario Libraries)
http//www2.cambridgelibraries.ca/newmat/carousel.
php
API Syndetics
36
Mystery Carousel
  • Uses
  • Yahoos Carousel Component
  • reflection.js
  • Both of these are pieces of Javascript that can
    be incorporated into scripts running in the web
    browser.

37
Tools for Mashup Writers
  • There are many Javascript presentation tools that
    are available for free.
  • Most are high-quality
  • Open Source
  • Some from big companies (e.g., Yahoo UI Library)
  • Others from independent developers
  • User communities report problems/bugs

38
http//www.wils.wisc.edu/searchMe/
APIs Amazon Google Screen Scraping
39
The Problem
  • Recall that screen scraping is fragile.
  • My program has broken on a number of occasions
    because of changes to MadCat web page design.
  • It would be more desirable to use an API.
  • I dont have access to an API for MadCat. (I
    dont think one exists.)

40
Amazon Light 4.0 Again
http//www.kokogiak.com/amazon4/
APIs Amazon del.icio.us
41
How About Library Light?
  • Clifford Lynch predicted that with the advent of
    Z39.50 a multiplicity of custom clients for the
    catalog would emerge.
  • That prediction can come true through APIs and
    mashups.

42
But wait, Tom
  • were academic librarians. All of your examples
    are from public libraries.
  • We dont need no stinking dust jackets.

43
Youd be surprised at what users actually want
  • or more likely you wouldnt.
  • There are as many ways of searching as there are
    library patrons (customers)
  • There is a paucity of examples of academic
    library mashups

44
(No Transcript)
45
(No Transcript)
46
(No Transcript)
47
Affordances
  • The word "affordance" was originally invented by
    the perceptual psychologist J. J. Gibson (1977,
    1979) to refer to the actionable properties
    betweenthe world and an actor (a person or
    animal).

Doorknobs
http//www.jnd.org/dn.mss/affordances_and.html
48
Catalog Affordances
  • The more and varied affordances to the catalog
    available to users the more chance there is that
    the user will succeed.
  • APIs are critical.

49
The Broader Problem for Libraries
  • There is a paucity of APIs available for ILSs and
    other library products.
  • This creates problems for the libraries
    themselves if they want to create novel
    services for their users.
  • It also interferes with other efforts at
    customization, internal and external.

50
The Broader Problem for Libraries (cont.)
  • Where APIs are available, they are almost never
    exposed to the public.
  • Non web-based APIs
  • Therefore, interested third-party developers
    cannot get easy access to library data.
  • May resort to screen scrapers, which are slower
    and break easily.

51
Public Access Through APIs
  • Where APIs are available from vendors, libraries
    must make a choice whether they want to expose
    their data in a way that can be
    sliced/diced/aggregated by others

52
Public Access via APIs
  • Many libraries already release some of their
    information via Z39.50 or SRU/SRW.
  • This is just one more way to expose data.

53
Why Is Lack of Public Access to Library APIs A
Problem?
  • It is in a librarys best interests to have its
    data exposed in a multiplicity of ways
  • Potential patrons inhabit a number of
    information spaces, e.g. Second Life, MySpace.
  • There will be more superpatrons.
  • More patrons will want data in a format matching
    their needs, rather than what the librarys ILS
    dictates.
  • Peer pressure if gadgets and mashups and web
    services work with other libraries data, patrons
    will ask why they dont work for their library.

54
Part of Library 2.0
Key Principles from Wikipedia definition of
Library 2.0
  • Browser Web 2.0 Applications Connectivity
    Full-featured OPAC
  • Harness the library user in both design and
    implementation of services
  • Library users should be able to craft and modify
    library provided services
  • Companies wanting to do business with public or
    academic libraries should not be creating
    proprietary software Library 2.0 is not a closed
    concept.
  • Constant change is replacing the older model of
    upgrade cycles

55
Perhaps Open Source Systems Are the Answer.
(Or at least one answer.)
56
Rolling Your Own?
57
Doing this stuff presupposes a technical
background
  • Librarians have a broad range of expertise in
    information technology.
  • Most users/patrons/customers are not technical
    experts in computers.

58
But, writing mashups and dealing with APIs
requires lots of computer savvy.
(Doesnt it?)
59
Maybe, Maybe Not
  • Yahoo Pipes
  • http//pipes.yahoo.com/

60
The Flow of a Program
Get Some Input
Do Something With It
Produce Some Output
61
Step 1 Set up a source
62
Step 2 Connect to output
63
Step 3 Save the pipe
64
Step 4 Preview the Pipe
65
The Flow of a Program
Get Some Input
Do Something With It
Produce Some Output
66
Step 5 Add Flickr as source
67
Step 6 Add the union operator
68
Step 7 Make the connections
69
Some of the Flickr Portion of the Output
70
The Flow of a Program
Get Some Input
Do Something With It
Produce Some Output
71
Step 8 Add user input
72
Step 9 Connect user input to Yahoo and Flickr
73
Step 10 Save, then try it out
74
New Easily Create Map Mashups
  • Google Maps now offers an easy way to put
    together map mashups
  • No Programming Required!!!
  • Can write descriptions and add links using HTML
    or Rich Text
  • Can add photos and videos
  • Google provides great examples

75
Oral Histories of Route 66
http//maps.google.com/maps/ms?ieUTF8hlenmsa0
msid103763259662194171141.000001119b4b42bf062c2
76
2004 Presidential Elections
http//maps.google.com/maps/ms?ieUTF8hlenz3l
l52.908902,-112.148437spn64.760765,142.03125om
1msid103763259662194171141.000001119b4ce1e8e0f7
6msa0
77
Mashup Makers I havent talked about
  • openkapow
  • Powerful
  • Requires a separate standalone program
  • Starts simply but difficulty ramps up very
    quickly
  • dapper
  • Powerful
  • Clear understanding of your data is required
  • Can do much fairly simply, but also has powerful
    options
  • Many possible output formats (RSS, xml, HTML,
    email, etc.)

78
A Few Pertinent References
  • Roy Tennant, If It Doesn't Have an API, It's Not
    Worth Having
  • Wikipedia Mashup (web application hybrid)
  • programmableweb.com
  • How to Create a Google Map

79
Slides will be available after the conference
athttp//www.wils.wisc.edu/tzillner/waal07
80
Fini
Tom Zillner tzillner_at_wils.wisc.edu
Write a Comment
User Comments (0)
About PowerShow.com