![Page 1: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/1.jpg)
Doing More with Less:Mash your Way to
Productivity
Kevin ReissUniversity Systems Librarian
Office of Library ServicesCity University of New York
SLA-NY Panel 1-21-2010
![Page 2: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/2.jpg)
Mashups are more than just:
![Page 3: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/3.jpg)
Why Mashups?
Low-cost/low-risk development
Rapid development cycle Do something fresh quickly Typically do not require a huge amount of staff time
Utilize someone else’s computing power, i.e. “the cloud”
More and more information service providers are enabling their content to be “mashable” Subscription content vendors “Free” Internet services
![Page 4: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/4.jpg)
What is a Mashup?
A web application that combine data and code from content sources out on the web to produce: Modest improvements to an existing web services (ex: embedded a list
of relevant links from a third party service in an existing websites) An entirely new web application
Mashups are typically made up of both: Local Content Remote Content
A mashup is composite web application Can be thought of as “Remixing the web” Presents the user with a new view or service built on top of existing data
and services
Executed with lightweight web programming techniques Web services Application Programming Interfaces (APIs)
![Page 5: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/5.jpg)
What do you need to know (technically speaking)?
Basic HTML Widgets “<embed>” a service or data
RSS Collating and parsing feed data is an integral part of many
mashups Many “web services” return data as feeds
Basic javascript Work with simple APIs and XML as a data format
Server side scripting languages Allows you to fully interface with APIs in your application Integrate local and remote content on a complex scale
![Page 6: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/6.jpg)
Who’s Doing It?
Just about everyone
Yahoo Many services
Google Book/MAPS
Amazon
Libraries and library content vendors
Federated search providers/designers (these maybe the original library mashup)
Even the Library of Congress - http://id.loc.gov/authorities/
![Page 7: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/7.jpg)
Web Services at Yahoo
![Page 8: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/8.jpg)
Web Services at OCLC
![Page 9: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/9.jpg)
App Services at flickr
![Page 10: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/10.jpg)
What Does one Look Like? – A Google Maps Mashup
![Page 11: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/11.jpg)
Or This? A Twitter Mashup
![Page 12: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/12.jpg)
Which is possible because:
Which brings you to RSS:
Which is the basis for everything on the last slide
![Page 13: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/13.jpg)
Mashup Building Blocks
Data that lives somewhere on the web and a good idea on what to do with it
Feeds (RSS, Atom, RDF) are often the key ingredient
Websites as a service provide content in: XML JSON
Code that lives on the web Application Programming Interfaces
![Page 14: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/14.jpg)
Mashup Levels
Basic Widget Based Mashups
Intermediate Working with feeds Working with a mashup aware editor (ex: Yahoo
Pipes)
Advanced Working with Web Services Working with Application Programming Interfaces
(APIs) Building your own web application
![Page 15: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/15.jpg)
Widgets
The Simplest Mashups
![Page 16: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/16.jpg)
The Simplest Mashups
Widgets
No coding required
Copy and paste
May need security clearance to run remote javascript hosted on the widget providers web server
![Page 17: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/17.jpg)
Explore Widgets at delicious
![Page 18: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/18.jpg)
Widgetize Your Content
![Page 19: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/19.jpg)
Copy and Paste
<script type="text/javascript" src="http://feeds.delicious.com/v2/js/my.delicious.account?title=My%20Delicious%20Bookmarks&icon=m&count=5&sort=date&tags&extended&name&showadd"></script>
Into the webpage of your choice
![Page 20: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/20.jpg)
Embedded Delicious
![Page 21: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/21.jpg)
Librarything Widgets
Select Your Options Get Your Widget
![Page 22: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/22.jpg)
Slideshare
![Page 23: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/23.jpg)
Which Can Give You:
The Widget Embeddable Code
This strategy works for youtube, google video, flickr, and most of the “social” web
![Page 24: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/24.jpg)
Feed Based MashupsRepackaging and Repurposing Data
![Page 25: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/25.jpg)
Feed-based Mashups
General strategy: Identify a bunch of feeds you want to keep track
of Organize them or mine them for useful data Process them regularly Keep track of when they fail Present the results back to your users
![Page 26: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/26.jpg)
Basic Feed Content
JSON - http://feeds.delicious.com/v2/json/ols.inside?count=15
RSS - http://feeds.delicious.com/v2/rss/ols.inside?count=15
![Page 27: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/27.jpg)
Basic Example - Community Planet or the Feed of Feeds
![Page 28: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/28.jpg)
Experiment with Feeds and Yahoo Pipes (http://pipes.yahoo.com)
No coding required
A good place to experiment with and identify a mashup strategy with little risk or effort
Clone the pipes of other users to get started
When you are done with your pipe you send the ouput to:
![Page 29: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/29.jpg)
Pipes Interface – Sorting Pubmed Query Feeds
Drag and Drop Programming
![Page 30: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/30.jpg)
Pipe Results
![Page 31: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/31.jpg)
Using Feeds in the Library
Use feeds to aggregate search results from commonly used queries Create a bundle of search results important to
your organizations
Use feeds to show new publications/titles Combine with Amazon or Google Book search to
add new content
Use feeds to aggregate organizational content Pull together bookmarking services of employees Pull together blogging content from employees
![Page 32: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/32.jpg)
Pipes works with more than just Feeds: Data and Services
![Page 33: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/33.jpg)
Web Services and APIs
Programming the Web
![Page 34: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/34.jpg)
The API Building Block: A Restful Web Transaction
Find a data source?
Ask it a question in the form of a URL? http://myservice.com/?idrequest=myrequestcontent You also have to answer: Am I eligible to get this data? Many APIs/Web Services require a developer or account ID to use hence: http://myservice.com/?id=mydevid&request=myrequestcontent
Get data back in XML – often using Asychronous Jasvascript and XML (AJAX)
Parse data with your own local code or the api in question
Present parsed data in your application
Resources with unique IDs work great in these sorts of transactions http://myservice.com/ISBN http://myarticleservice.com/pubmedid
![Page 35: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/35.jpg)
Example: the Yahoo! SPELL Checking Web Service
The Question:
The Answer:
![Page 36: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/36.jpg)
Home for this Service
![Page 37: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/37.jpg)
Where it might live? – Example Deployment
Response from Yahoo!
![Page 38: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/38.jpg)
A fresher setting
![Page 39: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/39.jpg)
Programming with APIs
Typically simple
The key is to fail gracefully
Make sure what the terms of usage are
Many Vendors now Provide APIs
Including: Most major social web services (flickr, LibraryThing) Most major web sources of “book” data (OCLC, Google
Books, Amazon, Open Library) Many library software vendors (Examples - Ex Libris,
Serials Solutions)
![Page 40: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/40.jpg)
![Page 41: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/41.jpg)
Query Worldcat via API
![Page 42: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/42.jpg)
Using the Google Map API: Digital Murray Hill
http://murrayhill.gc.cuny.edu
Wordpress powered architectural history website Open Source Content Management System (CMS) PHP/MYSQL Driven web application
Combines a number of content sources Descriptive architectural metadata Geocoding for local addresses Google maps content flickr content
![Page 43: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/43.jpg)
Map Example
![Page 44: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/44.jpg)
Coding with the Google Map API
Setting the Map Canvas
Setting a Map Icon
![Page 45: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/45.jpg)
Flickr Integration
![Page 46: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/46.jpg)
Community Photos
![Page 47: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/47.jpg)
Mashup Wrap-UpThings to Remember about Mashups
![Page 48: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/48.jpg)
Mashups and Content Management Systems?
Is your current web content management system (CMS) mashup friendly?
Open source CMS systems are ideal vehicles from which to explore mashups at a substantive level
Wordpress, Drupal, Joomla, etc.
All of the above have extensions that support many of the most popular mashup data formats, data providers, and apis
![Page 49: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/49.jpg)
A Good Place to Start
![Page 50: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/50.jpg)
Wordpress Dashboard
Wordpress Delicious Widget
![Page 51: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/51.jpg)
Mashup Issues
Dependence on data or code that in some part you do not control Security Policies can change Access policies can change Usage limits on key-based apis
Legal Implications Make sure to read the terms of service for any
service you expect to make public Most non-commercial issues are fine
![Page 52: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/52.jpg)
What can I do? See if your major information service providers:
Provides feeds Try aggregating them in some useful fashion
Experiment with <embed> options from services like Youtube or Slideshare in order to expand and highlight interesting organizational content
Experiment with the major social web services: Identify a “social” aspect in your organization that
already exists See if you can aggregate it and produce a useful
new view of the data
Code your own mashup using apis
![Page 53: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/53.jpg)
Check out Library Mashups
Visit the Programmable Web http://programmableweb.com/
Library Related APIs http://techessence.info/apis
Pro Web 2.0 Mashups by Raymond Yee http://blog.mashupguide.net
Library Mashups by Nicole Engard http://mashups.web2learning.net/ In particular visit the link compilation at:
http://mashups.web2learning.net/links
![Page 54: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/54.jpg)
Are my services and data mashable?
Does my own website provide feeds?
Can my users <embed> content from our major services?
Have we selected services and software that play well with mashups?
![Page 55: Doing More with Less: Mash Your Way to Productivity](https://reader036.vdocument.in/reader036/viewer/2022070313/55492412b4c90547498babee/html5/thumbnails/55.jpg)
Conclusions
Choose web resources that are mashable when you can Support for this is growing among web content
providers
Mashups can: Cost little beyond staff time Be fun and easy to create Be throwaway work that achieve substantial
results Add value in unexpected ways Develop into essential services