1 / 35

Corinna Baksik , Systems Librarian Bobbi Fox , Digital Library Software Engineer

Adventures in Mobile Development. Corinna Baksik , Systems Librarian Bobbi Fox , Digital Library Software Engineer Library Technology Services Harvard University Information Technology   (HUIT). Agenda. Corinna Project Background and Overview Phase I: Harvard Libraries Mobile Bobbi

duyen
Download Presentation

Corinna Baksik , Systems Librarian Bobbi Fox , Digital Library Software Engineer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adventures in Mobile Development Corinna Baksik, Systems Librarian Bobbi Fox, Digital Library Software Engineer Library Technology Services Harvard University Information Technology  (HUIT)

  2. Agenda Corinna • Project Background and Overview • Phase I: Harvard Libraries Mobile Bobbi • Phase II: Services for new Mobile Site/App hosted by 3rd party vendor (Modo) • Web Services API overview

  3. A Tale of Two Mobile Projects Spring / Summer ‘10 Fall 2010 Winter 2010/2011 Harvard University builds a mobile site/app, developed by Modo Labs Harvard Libraries build a mobile site, developed by the library systems office • Harvard U. mobile site/app is released with a new library component, driven off of web services developed by the library systems office (The Harvard Libraries stand-alone site is discontinued)

  4. It started with a class project*… * Janet Taylor’s presentation to the Digital Humanities Fair in partial fulfillment of her work for CSCI E-12 Introduction to Website Development, Harvard Ext. School

  5. Initial Releases • In July, we received a charge to implement a mobile site by September for Fall Term • We leveraged work from Janet’s project • 1st Release, Sept. 2010 • (on schedule!) • Scope: • Library/Archives hours and directions (~85 libs) • Mobile research links • Link for Questions • 2nd Release, Nov. 2010 • Added: • HOLLIS searching • HOLLIS record presentation • HOLLIS availability display

  6. Library Info/Hours For the standard library portal, a MySQL database stores library info and hours, and a perl script runs nightly to generate static HTML pages

  7. Library Info/Hours Fall 2010 Winter 2010/2011 Perl script does a parallel output of Mobile-friendly XHTML Script generates a static XML file, read by library web services, queried by Modo Labs for the Harvard U. mobile site/app

  8. Mobile Research (Articles / Databases) • Most services are not mobile-friendly (e.g. federated search tools such as Metalib) • We created a picklist of those e-resources that have mobile interfaces, and linked to those only

  9. The hard part: adding catalog searching HOLLIS is based on Aquabrowser, 3rd party software, with no native mobile-friendly interface

  10. Solution: retrieve XML output from HOLLIS and use XSLT to create HTML for mobile site A parameter can be added to Aquabrowser URLs to retrieve XML output for search results, records, and item availability

  11. How do you present availability information in a mobile-friendly way?

  12. Answer: simplify and remove info • A new XSL file was added to Aquabrowser to provide availability information exclusively for mobile use • This allows the System Librarian to develop and update the logic, rather than defining for the developer MARC holding/item status complexities

  13. All of the preceding was new development… Enter Bobbi, Secret Master of Repurposing Image created by Chris Traganos

  14. Adding “Questions and Feedback” We already had a configurable Feedback page: http://nrs.harvard.edu/urn-3:hul.ois:harvlibmobilehelp Using a combination of CSS classing, and Javascript, that page can take on the “Mobile” appearance, depending on the width of the “screen”. Ref: van den Dobbelsteen, Marc. (2006,December 19). An Adaptive Layout Technique. A List Apart. Retrieved March 30, 2011, from http://www.alistapart.com/articles/switchymclayout/ Using “SwitchyMcLayout”

  15. In a normal browser On a mobile device

  16. Meanwhile, unbeknownst to our heroes… … Harvard Public Affairs & Communications had been working with an outside vendor, MODO Labs, to create a mobile web and mobile app for Harvard University.

  17. PHASE II – feed to MODO PRESTO Library Tools Data Lookup Web Service We already were providing RESTful bibliographic data lookup in both XML and JSON formats … http://hul.harvard.edu/ois/systems/webservices/datalookup-userguide.html .. so we just extended our services.

  18. Phase II – HOLLIS feed to MODO We had been taking shortcuts by using an Aquabrowser “skin” to produce XHTML Rather than Yet Another Skin for AB, we decided to refactor our code, providing an intermediate XML: • Modified the XSL for result, record, availability • Created new methods to render straight to XML

  19. Search Leveraging the XML produced by the original code, we performed one more XSL transform: • to eliminate the extraneous data; and • to add links to availability http://webservices.lib.harvard.edu/rest/hollis/search/dc/?q=organizational+dysfunction

  20. We also provide information for visual items

  21. “Availability” means different things to a librarian than to a mobile device developer…

  22. “Availability” means different things to a librarian than to a mobile device developer… They wanted simple answers to: • “Can I take out the book?” • “Is the book checked out?” • “If the book is checked out, can I request it?” • “Can I request an electronic copy of chapters of a book?”

  23. Availability Corinna modified the Aquabrowser “skin” to get a “Yes/No” for whether something was available. http://webservices.lib.harvard.edu/rest/hollis/avail/008035521

  24. Availability: Initial Screen

  25. Availability: With Library Info

  26. Availability: Scan & Deliver

  27. Availability: A More Complex Example

  28. Availability: More Complex: Requestability

  29. Availability: More Complex: Requesting

  30. Complex Example: Possible Availability

  31. Architecture We reused 95% (ok:90%) of the code written for Harvard Library Mobile -- far from a wasted effort!)

  32. Lessons learned: • We don’t always know the destination when we start • “The perfect is the enemy of the good” -- iterative releases save time in the long run • Getting feedback from people who aren’t as close to the project is crucial • Coding with an eye to reuse possibilities leads to less re-factoring

  33. Lessons learned (part deux) Working with an outside vendor: • Many things are no longer in our control • There have been no enhancements in the past year: • Our new “Borrow Direct” service is not reflected • We can’t add new mobile e-resources • Make sure librarians who know the data are part of the development team

  34. Thanks! • Corinna Baksik corinna_baksik@harvard.edu • Bobbi Fox bobbi_fox@harvard.edu • Janet Taylor – UI • CorinnaBaksik – HOLLIS/Aquabrowser • Victoria Lin – Library Info/Hours DB • Michael Vandermillen – HOLLIS Mobile Developer • Bobbi Fox – PRESTO Web Services Developer • Wendy Gogel, Randy Stern – Project Managers Harvard Libraries mobile team:

More Related