Difference between revisions of "2011talks Submissions"
(→Beyond Sacrilege: A CouchApp Catalog)
(→Beyond Sacrilege: A CouchApp Catalog)
|Line 351:||Line 351:|
== Beyond Sacrilege: A CouchApp Catalog ==
== Beyond Sacrilege: A CouchApp Catalog ==
* Gabriel Farrell, Drexel University, email@example.com
* Gabriel Farrell, Drexel University, firstname.lastname@example.org
At Code4LibCon2008 Dan Scott gave us a taste of yummy CouchDB, a document-oriented database with a RESTful JSON API (http://couchdb.org/). Since then, CouchDB has passed the 1.0 mark and landed on desktops, the cloud, and mobile devices. With the advent of CouchApps (web apps served directly from CouchDB) applications can be built that are as easy to install as the replicating of databases (which is super easy!).
At Code4LibCon2008 Dan Scott gave us a taste of yummy CouchDB, a document-oriented database with a RESTful JSON API (http://couchdb.org/). Since then, CouchDB has passed the 1.0 mark and landed on desktops, the cloud, and mobile devices. With the advent of CouchApps (web apps served directly from CouchDB) applications can be built that are as easy to install as the replicating of databases (which is super easy!). discuss the advantages and challenges in designing a CouchApp to be used as a catalog, repository, or directory of resources. Some things are made fairly simple, such as site templating, the outputting of documents in different formats, and the attachment of binary objects to documents. Some things, like document versioning and the modeling of data, are a little trickier, but still straightforward. And some things, such as granular authentication and the integration of search, are tangled enough to produce some head-on-wall banging. But hey, take it easy. It’s time to relax.
Check out some code at http://github.com/gsf/catlg.
Check out some code at http://github.com/gsf/catlg.
Revision as of 19:54, 12 November 2010
See the Call for Submissions for guidelines on appropriate topic talks and the criteria on which submissions are evaluated.
Please follow the formatting guidelines:
== Talk Title: == * Speaker's name, affiliation, and email address * Second speaker's name, affiliation, email address, if second speaker Abstract of no more than 500 words.
- 1 How "great" are the Great Books?
- 2 UNR BookFinder: Leveraging Google Books to Move Beyond Catalog Search
- 3 Moving a large multi-tiered search architecture from dedicated hosts to the cloud
- 4 VuFind Beyond MARC: Discovering Everything Else
- 5 Linked data apps for medical professionals
- 6 fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival Records using Open Source Forensic Software
- 7 Why (Code4) Libraries Exist
- 8 The Story of TILE: Making Modular & Reusable Tools
- 9 We Don’t Server Their Kind : Managing E-resources with Flat-File Databases
- 10 Drupal 7 as a Rapid Application Development Tool
- 11 Helping Open Source Succeed
- 12 Letting in the light: using Solr as an external search component
- 13 Working with DuraCloud: How to preserve your data in the cloud
- 14 Visualizing Library Data
- 15 Kuali OLE: Architecture for Diverse and Linked Data
- 16 One Week | One Tool: ultra-rapid open source development among strangers
- 17 Improving the presentation of library data using FRBR and linked data
- 18 Touch and go: building a touch screen kiosk with software you already own
- 19 Next-L Enju, NDL Search and library geeks in Japan
- 20 A community based approach to developing a Digital Exhibit at Notre Dame using the Hydra Framework
- 21 Mendeley's API and University Libraries: 3 examples to create value
- 22 ArticlesPlus: Summon API Client Implementation and Integration with Drupal 6
- 23 Let's Get Small: A Microservices Approach to Library Websites
- 24 Sharing Between Data Repositories
- 25 Hey, Dilbert. Where’s my data?!
- 26 Open Data and the Biodiversity Heritage Library experience
- 27 The Road to SRFdom: OpenSRF as Curation Microservices Architecture
- 28 Enhancing the Performance and Extensibility of the XC’s MetadataServicesToolkit
- 29 Free my DSpace Data! How to get your data out of DSpace 1.7 and restore your content after a disaster.
- 30 Using cloud-based services to leverage open source software
- 31 VIVO: Enabling National Networking of Scientists
- 32 Mass Moves with Worldcat APIs
- 33 A Simple Algorithm for User Query Classification & Resource Recommendation
- 34 Beyond Sacrilege: A CouchApp Catalog
How "great" are the Great Books?
- Eric Lease Morgan, University of Notre Dame (emorgan at nd.edu)
In the 1960s a set of books called the Great Books of the Western World was published. It was supposed to represent the best of Western literature and enable the reader to further their liberal arts education. Sixty volumes in all, it included works by Plato, Aristotle, Shakespeare, Milton, Galileo, Kepler, Melville, Darwin, etc. These great books were selected based on the way they discussed a set of 102 "great ideas" such as art, astronomy, beauty, evil, evolution, mind, nature, poetry, revolution, science, will, wisdom, etc. How "great" are these books, and how "great" are the ideas expressed in them?
Given full text versions of these books it is almost trivial to use the "great ideas" as input and apply relevancy ranking algorithms against the texts thus creating a sort of score -- a "Great Ideas Coefficient". Term Frequency/Inverse Document Frequency (TFIDF) is a well-established algorithm for computing just this sort of thing:
relevancy = ( c / t ) * log( d / f ) where:
- c = number of times a given word appears in a document
- t = total number of words in a document
- d = total number of documents in a corpus
- f = total number of documents containing a given word
Thus, to calculate our Great Ideas Coefficient I sum the relevancy score for each "great idea" for each "great book". Plato's Republic might have a cumulative score of 525 while Aristotle's On The History Of Animals might have a cumulative score of 251. Books with a larger Coefficient could be considered greater. Given such a score a person could measure a book's "greatness". We could then compare the score to the scores of other books. Which book is the "greatest"? We could compare the score to other measurable things such as book's length or date to see if there were correlations. Are "great books" longer or shorter than others? Do longer books contain more "great ideas"? Are there other books that were not included in the set that maybe should have been included?
The first part of this talk describes the different steps involved in the text pre-processing to calculate an accurate TFIDF value for each item of the corpus. The results and statistical analysis are discussed in the second part. Finally I will outline the remaining work such as refining the analysis and extending the current quantitative process to a web implementation.
UNR BookFinder: Leveraging Google Books to Move Beyond Catalog Search
- Will Kurt, University of Nevada, Reno, (wkurt at unr.edu)
Google Books is a great tool, but it lacks an easy method allowing users to access the items they find through their library. The UNR BookFinder is a mashup of the Google Books and WorldCat APIs (and some ugly hacks) which allows users to search for items with the power of Google’s fulltext search while eliminating the need to search all of the library’s various resources to find an item. The UNR BookFinder automatically searches the catalog and consortial ILL for the item, if these fail an ILLiad request form as automatically filled out. The end result is that the user can explore an universe of books and access them as fast as possible through the university library. A video of the alpha version can be found here.
Moving a large multi-tiered search architecture from dedicated hosts to the cloud
- Peter Ciuffetti, Senior Software Engineer, Credo Reference Ltd. (pete at credoreference.com)
So you want to move a large production search service from dedicated hosts to the cloud? The flexibility is enticing, the costs are attractive, the geek cred is undeniable. Our cloud adventure came with many undocumented surprises ranging from mysterious server behavior to sales engineers suggesting that 'maybe the cloud isn't for you'. We eventually made it all work and our production service is now on the cloud. This talk will cover what the cloud product FAQs don't say, what their tech support doesn't know (or won't say) and mistakes you can avoid by talking to the guys with the arrows in their backs.
VuFind Beyond MARC: Discovering Everything Else
- Demian Katz, Library Technology Development Specialist, Villanova University (demian dot katz at villanova dot edu)
The VuFind discovery layer has been providing a user-friendly interface to MARC records for several years now. However, library data consists of more than just MARC records, and VuFind has grown to accommodate just about anything you can throw at it. This presentation will examine the new workflows and tools that enable discovery of non-MARC resources and some of the non-traditional applications of VuFind that they make possible. Technologies covered will include OAI-PMH, XSLT, Aperture, Solr and, of course, VuFind itself.
Linked data apps for medical professionals
- Rurik Thomas Greenall, NTNU Library, (rurik dot greenall at ub dot ntnu dot no)
The promise of linked data for libraries has yet to be realized, as a demonstration of the power of RDF, HTTP-URIs and SPARQL, NTNU Library together with the Norwegian Electronic Health Library produced a linked data representation of MeSH and created a small translation app that can be used to help health professionals identify the right term and apply it in their database searches. This talk presents the simple ways in which the core technologies and concepts in linked data provide a solid, time-saving way of developing usable applications.
fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival Records using Open Source Forensic Software
- Mark A. Matienzo, Manuscripts and Archives, Yale University Library (mark at matienzo dot org)
Many of the complications of born-digital records involve preparing them for transfer into a storage or preservation environment. Digital evidence of any kind is easily susceptible to unintentional and intentional modification. This presentation will describe the use of open source forensic software in pre-ingest workflows for digital archives. Digital archivists and other digital curation practitioners can develop emergent processes to prepare records for ingest and transfer using a combination of relatively simple tools. The granularity and simplicity of these tools and procedures provides the possibility for their smooth integration into a digital curation environment built on micro-services.
Why (Code4) Libraries Exist
- Eric Hellman, President, Gluejar, Inc. (eric at hellman dot net)
Libraries have historically delivered value to society by facilitating the sharing of books. The library "brand" is built around the building and exploitation of their collections. These collections have been acquired and owned. As ebook readers become the preferred consumption platform for books, libraries are beginning to come to terms with the fact that they don't own their digital collections, and can't share books as they'd like to. Yet libraries continue to be valuable in many ways. In this transitional period, only one thing can save libraries from irrelevance and dissipation: Code.
The Story of TILE: Making Modular & Reusable Tools
- Doug Reside, MITH, University of Maryland (dougreside at gmail dot com)
The Text Image Linking Environment (TILE) is a collaborative project between the Maryland Institute for Technology in the Humanities (MITH), the Digital Library Program at Indiana University, and the School of Library and Information Science at Indiana University Bloomington. Since May 2009, the TILE project team has been developing through NEH Research & Development funding a web-based, modular, image markup tool for both semi-automated linking between encoded text and image of text, and image annotation. The software will be complete and ready for release in June 2011.
Many members of the TILE development team are also members of the Open Annotation Collaboration (OAC), and have therefore attempted to develop TILE’s annotation features to be OAC compliant. Like OAC, TILE assumes that the text and the images to be linked may exist at separate and completely unconnected servers. When a user starts the TILE tool for the first time, she is prompted to supply a URI to a TILE compliant JSON file.
TILE’s JSON is simple and thoroughly documented, and we provide several translators to map common existing metadata formats to the format. We have already created a PHP script that will generate TILE JSON from a TEI P5 document and are currently working to do the same for the METS files used in the Indiana University’s METS navigator tool.
Additionally, TILE provides a modular exporting tool that allows users to run the work they’ve done in TILE through an external translator and then download the result to the client computer. For example, a user may import a set of images and transcripts from a METS file at the Library of Congress, use TILE to link images and text, and then export the result as a TEI file. The TEI file may then be reimported to TILE at a later data to further edit or convert the file.
At Code4Lib, we will demonstrate the functionality of TILE and display a poster and provide handouts that describe the thinking behind TILE, how it is intended to be used, and details on how TILE is built and functions.
We Don’t Server Their Kind : Managing E-resources with Flat-File Databases
- Junior Tidal, Multimedia and Web Services Librarian, New York City College of Technology, CUNY (jtidal at citytech dot cuny dot edu)
Managing E-resources can be a daunting challenge. URLs, database names, and even vendors can change, go down, or simply cease to exist. My proposal involves the use of a PHP-based, flat-file database driven web tool for database management. The design of this program was to fulfill two needs: ease of use for librarians with a lack of programming experience and to meet the security and technical restrictions placed by the college’s IT department. My presentation will explore the development of this tool, challenges within its development, and future improvements. PHP code and the flat-file database will also be explained and provided to attendees. For a working demonstration feel free to visit the New York City College of Technology’s A-Z database page or the subject database page.
Drupal 7 as a Rapid Application Development Tool
- Cary Gordon, President, The Cherry Hill Company & Board Member, The Drupal Association (cgordon at chillco dawt com)
Five years ago, I discovered that the Drupal CMS had a programming framework disguised as an API, and learned that I could use it to solve problems.
Drupal 7 builds on that to provide a powerful toolset for interfacing with, manipulating and presenting data. It empowers tool-builders by providing a minimal install option, along with a more powerful installation profile system makes it easier for developers to package and distribute their applications.
Helping Open Source Succeed
Deciding if open source is an option for your institution, or what open source software matches your institution’s needs and capabilities, is a complex decision. LYRASIS is developing a new area of focus to assist libraries with decision tools and an open source software registry. We want to learn from the creators of open source software what questions institutions have when considering the adoption of open source software and what information you would like to see in a registry that compares various open source tools. A summary of topics discussed in this session will be openly published as part of LYRASIS’ program development plans and decision support resources.
The mission of the new and emerging LYRASIS Technology Services area is to serve members and the broader library community as a provider of expertise and capacity in open source based technology solutions. We think that viable roles for an organization supporting open source software are to: a) Increase understanding of open source technology within the library community, including value, benefits, risks, and costs; b) Assist in decision-making by providing resources to help libraries evaluate open source technologies, institutional readiness, and capacity for adoption; c) Support adoption and use of open source technologies and systems within libraries and consortia; d) Foster integration of open source software tools to expand the ability of existing programs to meet a range of library user needs; e) Develop and test new open source software programs, and contribute to the development of existing programs; f) Support long-term sustainability of viable, library-based open source software and systems. We recognize that these roles exist to some extent on a continuum, with latter services related to development and sustainability building on the knowledge and experience gained through deployment of existing open source systems. In turn, effective adoption and use depends on understanding open source systems and having resources to assist in decision-making and implementation.
With open source software in the “innovator” and “early adopter” stages in the library community, we intend to focus its initial efforts on roles A-D in the above list: increased understanding, decision-support, and effective adoption and integration of existing library-focused open source systems. This session is focused on the decision-support services area of activity.
The impact of this session is expected to be far reaching, if initially subtle. With most of the session time devoted to discussion and interaction among peers on questions surrounding the adoption of open source software, participants will take away a deeper understanding of topics each institution should consider when looking at open source software. These findings, along with that of similar sessions around the country, will inform the creation and expansion of the free decision support tools being developed by LYRASIS.
Letting in the light: using Solr as an external search component
- Jay Luker, IT Specialist, ADS (jluker at cfa dot harvard dot edu)
- Benoit Thiell, software developer, ADS (bthiell at cfa dot harvard dot edu)
It’s well-established that Solr provides an excellent foundation for building a faceted search engine. But what if your application’s foundation has already been constructed? How do you add Solr as a federated, fulltext search component to an existing system that already provides a full set of well-crafted scoring and ranking mechanisms?
This talk will describe a work-in-progress project at the Smithsonian/NASA Astrophysics Data System to migrate its aging search platform to Invenio, an open-source institutional repository and digital library system originally developed at CERN, while at the same time incorporating Solr as an external component for both faceting and fulltext search.
In this presentation we'll start with a short introduction of Invenio and then move on to the good stuff: an in-depth exploration of our use of Solr. We'll explain the challenges that we faced, what we learned about some particular Solr internals, interesting paths we chose not to follow, and the solutions we finally developed, including the creation of custom Solr request handlers and query parser classes.
This presentation will be quite technical and will show a measure of horrible Java code. Benoit will probably run away during that part.
Working with DuraCloud: How to preserve your data in the cloud
- Bill Branan, DuraSpace, bbranan at duraspace dot org
- Andrew Woods, DuraSpace, awoods at duraspace dot org
Ever expanding digital collections have become the norm in academic libraries. As the size of collections grow, the need for simple-to-deploy yet powerful preservation strategies becomes increasingly important. The DuraCloud project, a cloud-hosted service for data management and preservation, is committed to bringing the availability and elasticity of the cloud to bear on the issue of digital preservation. This session will discuss the APIs and tools which can be used to communicate and integrate with the DuraCloud platform, providing an immediate connection to scalable storage available from multiple cloud storage providers, configurable services which can be run over your content out-of-the-box, and a development platform which can serve as the basis for ongoing data mining and analysis.
Visualizing Library Data
- Karen Coombs, OCLC, coombsk at oclc dot org
Visualizations can be powerful tools to give context to library users and to provide a clear picture for data-driven decision-making in libraries. Map mashups, tag clouds and timelines can be used to show information to users in new ways and help them locate materials to meet their needs. QR codes can help link users to materials that libraries have in their collections. Charts and graphs can be used to help analyze library collections (holdings) and compare them to other libraries. This session will show prototypes which combine tools like Google Chart API, Protovis and Simile Widgets with data from WorldCat, WorldCat Registry, Classify, Terminology Services, and Dewey.info to create vivid illustrations in library user interfaces and administration tools.
Kuali OLE: Architecture for Diverse and Linked Data
- Tim McGeary, Lehigh University, Kuali OLE Functional Council, tim dot mcgeary at lehigh dot edu
- Brad Skiles, Project Manager, Kuali OLE, Indiana University, bradskil at indiana dot edu
With programming scheduled to be begin in January 2011 on the Kuali Open Library Environment (OLE), the Kuali OLE Functional Council is developing the requirements for an architecture for diverse data sets and linked data. With no frontrunner for one bibliographic data standard, and local requirements on what data will be accompanying or linked to the main record store, Kuali OLE needs to build a flexible environment for records management and access.
We will present the concepts of our planned architecture, a multi-repository framework, using a document repository, a semantic repository, and a relational repository, brokered on top of the enterprise service bus of Kuali Rice. As a community source project, this is an opportunity for the Kuali OLE partners to present our plans for discussion with the community, and we look forward to feedback, questions, and comments.
One Week | One Tool: ultra-rapid open source development among strangers
- Scott Hanrath, University of Kansas Libraries, shanrath at ku dot edu
- Jason Casden, North Carolina State University Libraries, jason_casden at ncsu dot edu
In summer 2010, the Center for History and New Media at George Mason University, supported by an NEH Summer Institute grant, gathered 12 'digital humanists' for an intense week of collaboration they dubbed 'One Week | One Tool: a digital humanities barn raising.' The group -- several of whom hang their professional hats in libraries and most of whom were previously unacquainted -- was asked to spend one week together brainstorming, specifying, building, publicizing, and releasing an open source software tool of use to the digital humanities community. The result was Anthologize, a free, open-source, plugin that transforms WordPress into a platform for publishing electronic texts in formats including PDF, ePub, and TEI; in other words, a "blog-to-book" tool. This presentation will focus on how One Week | One Tool addressed the challenges of collaborative open source development. From the perspectives of two library coders on the team, we will describe and provide lessons learned from the One Week development process including: how the group structured itself without predefined roles; how the one week time frame and makeup of the group -- which included scholars, grad students, librarians, museum professionals, instructional technologists, and more -- influenced planning and development decisions; the roles of user experience and outreach efforts; the life of Anthologize since the end of the week; and thoughts on what a one week, one 'library' tool could look like.
- Anne-Lena Westrum, Oslo Public Library (annelena at deichman dot no)
- Asgeir Rekkavik, Oslo Public Library (asgeirr at deichman dot no)
The Pode project at Oslo Public Library has experimented on the automated FRBRizing of catalogue records, as well as expressing bibliographic descriptions as linked data to enrich catalogue browsing with information from external sources.
When a library enduser searches the online catalogue for works by a particular author, he will typically get a long list that contain all the different translations and editions of all the books by that author, sorted by title or date of issue. The Pode project applied a method of automated FRBRizing, based on the information contained in MARC records, RDF representation and SPARQL queries, to demonstrate how an author's complete production can be presented as a lucid list of unique works, that can easily be browsed by their different expressions and manifestations. Furthermore, by linking instances in the dataset to matching or corresponding instances in external sets, the presentation can be enriched with additional information about authors and works, as well as links to electronic full-text representations.
The talk will also present the work on making an RDF representation of the catalogue records for the whole collection of non-fiction documents at the Norwegian Multilingual library, linking subject headings and Dewey classes, and allowing endusers to browse the collection by the multilingual Dewey class labels published by OCLC at http://dewey.info.
The talk will focus on the challenges technological progresses such as these raise for cataloguers, to deliver consistent and standardized catalogue records. Many cataloguers have a local and pragmatic focus on the library's own and already existing services. Attitudes like this might represent a problem when emerging technologies find new applications for library catalogue data, as well as when the library wants to use data submitted by others to enrich their own services.
Touch and go: building a touch screen kiosk with software you already own
- Andreas K. Orphanides, North Carolina State University Libraries, akorphan at ncsu dot edu
Next-L Enju, NDL Search and library geeks in Japan
- Kosuke Tanabe, Keio University, tanabe at mwr dot mediacom dot keio dot ac dot jp
Next-L Enju is an open source integrated library system developed by Project Next-L, the library geek community in Japan launched on November 2006. It is built on open-source software (Ruby on Rails, PostgreSQL/MySQL and Solr) and supports modern ILS features (e.g. FRBR structure and RESTful WebAPI).
Enju has been inplemented by some libraries, which include National Diet Library (NDL), the largest library in Japan. NDL has chosen Enju to provide a new search engine, called "NDL Search" and added some extra features (e.g. automatic FRBRization and providing bibliographic data in a Linked Data format) . The development version is available at http://iss.ndl.go.jp/ .
I'm one of the authors of Next-L Enju. I'd like to talk about the overview and structure of Next-L Enju, NDL Search and the activities of our project.
A community based approach to developing a Digital Exhibit at Notre Dame using the Hydra Framework
- Rick Johnson, University of Notre Dame, (rick dot johnson at nd dot edu)
- Dan Brubaker Horst, University of Notre Dame (dbrubak1 at nd dot edu)
It was clear to us early on that the scope of managing, preserving, and interacting with digital content is too much for any one institution to conquer by itself. We realized that we need help.
We were already fairly convinced using Fedora, Solr, and ActiveFedora were solid choices because of their strong development community and flexible robust solutions. We were also exploring Blacklight for search and browse for the same reasons. The open questions were:
- What is the best way to put the pieces together?
- How do you tackle the heterogenous content types and workflows without getting bogged down in each individual solution?
After connecting with folks from the Hydra project at Code4Lib it was immediately clear that we had many things in common:
- The same architectural choices: Fedora, Solr, ActiveFedora, Blacklight
- Similar design philosophies
- A need to work together
- Too many shared use cases to ignore
So, we jumped on board and have adopted the Hydra Framework for all of our Digital Repository efforts.
In our presentation we will cover:
- Why we chose to adopt the Hydra Framework instead of creating our own solution
- Why the community based approach is so appealing
- How we were welcomed into the Hydra development community
- Why we chose to create something beyond basic Blacklight search and facet browse
- How to create your own Digital Exhibit using Hydra including
- Metadata management
- Custom Browse and Search
The Hydra Project is actively seeking partnerships with other institutions to extend its efforts. Will your institution be next?
More about the Hydra Project
Mendeley's API and University Libraries: 3 examples to create value
- Jan Reichelt, Co-Founder, Mendeley
Mendeley (http://www.mendeley.com) is a technology startup that is helping to revolutionize the way research is done. Used by more than 600,000 academics and industry researchers, Mendeley enables researchers to arrange collaborative projects, work and discuss in groups, as well as share data across its web platform. Launched in London in December 2008, Mendeley is already the world’s largest research collaboration platform. Through this platform, we anonymously pools users’ research paper collections, creating a crowd-sourced research database with a unique layer of social information - each research paper is connected with socio-demographic information about its audience.
Based on this platform and data, I will present three examples of how Mendeley is working to support university libraries and contribute to opening up academic research: 1) Mendeley’s integration as a workflow tool with institutional repositories with the aim of increasing IR deposit rates; 2) Application examples building on Mendeley’s API to showcase what is possible with the newly available type of usage data Mendeley is aggregating; 3) Preview of Mendeley’s library dashboard that will reveal content usage within an institution.
I would also hope that a subsequent discussion can address how you (the attendees) could envision Mendeley’s future in the library tech community.
ArticlesPlus: Summon API Client Implementation and Integration with Drupal 6
- Albert Bertram, University of Michigan (email@example.com)
On September 27, 2010, the University of Michigan launched ArticlesPlus, an application for web-scale article discovery using the Serials Solutions' Summon service as its search engine. Rather than providing a search box which sent our patrons to the interface provided by Serials Solutions, we used Summon's API to integrate the search as a feature of our library's website. In addition to Summon as the search engine, we used our Drupal instance for the interface engine.
I propose to talk about how we implemented the Summon API, the Drupal module we developed in to access the Summon API, problems with implementing an interface ourselves, benefits of implementing the interface ourselves, and plans for future expansion or improved integration in our website.
Let's Get Small: A Microservices Approach to Library Websites
- Sean Hannan, Johns Hopkins University, shannan at jhu dot edu
Most, if not all, library websites are housed and maintained in singular, monolithic content management systems. This is fantastic if the library website is the one place your users go for library information. But it isn't. Users are going to Facebook, checking mobile applications, browsing portals as well as checking the library website. Wouldn't it be great if you could update the information on all of these sites from a single source? Why maintain the library hours in five different places?
In this talk, I will show how breaking the construction of the library website into as-needed, swappable microservices can free your content to live where it needs to, as well as free you from the maintenance headaches usually involved. What kind of microservices, you ask? Well, basic templating and styling is a given, but how about a microservice that gracefully degrades your layouts for older browsers? Or enforces highfalutin typographic rules? Or optimizes your site assets to improve load times? All wonderful little black boxes that allow you to focus on the website and its content, and not the details.
I promise at least one diagram. That will burn your eyes.
Sharing Between Data Repositories
- Kevin S. Clarke, NESCent/Dryad Data Repository, ksclarke at nescent dot org
Dryad (http://datadryad.org) is a generic subject repository that shares author submitted data with other scientific repositories. In a part "how we done it" and part "things to consider" talk, I'll discuss 1) why we chose BagIt and OAI-ORE as mechanisms for sharing our data, 2) how we've integrated with TreeBASE (http://www.treebase.org/ -- a subject repository of phylogenetic information), and 3) the possibility of this method of data sharing being adopted by other repositories within the larger DataONE community.
There will be cake.
Hey, Dilbert. Where’s my data?!
- Tommy Barker, University of Pennsylvania, tbarker at pobox dot upenn dot edu
Libraries are notorious for maintaining data in massively disparate systems such as databases, flat files, xml and web services. The data is rich and valuable to assessment, but extracting value from multiple systems is complex and time consuming. Yes, there are open source and commercial solutions available, but libraries have unique requirements that can be difficult to integrate into these products. Commercial options also tend to be overly complex or the cool features require an expensive enterprise edition.
With funding from the Institute of Museum and Library Services, UPenn is developing MetriDoc to address data integration headaches within the library, and support reporting requirements from management. MetriDoc’s mission is to provide an open source API / tool set where users can specify dataflows and use library based services to solve integration problems while MetriDoc worries about scalability and performance. MetriDoc accomplishes this with no complex xml configuration or scary SOA middleware, but instead uses a simple DSL where possible. Eventually the project will also include dashboards to assist with complex job management and data flow monitoring.
The first half the presentation briefly discusses MetriDoc’s architecture while the remainder of the presentation will include code samples to illustrate problems it can solve. Information on how to contribute or download MetriDoc will be provided as well.
Open Data and the Biodiversity Heritage Library experience
- Trish Rose-Sandler, Missouri Botanical Gardens, trish dot rose dash sandler at mobot dot org
The Biodiversity Heritage Library (BHL) is an international consortium of the world’s leading natural history museum libraries, botanical libraries, and research institutions organized to digitize, serve, and preserve the legacy literature of biodiversity. From the beginning the BHL partners conceived of the BHL collection as being “open” – available to anyone regardless of geographic location or affiliation and a linked into a global Biodiversity Commons. This talk will discuss the basic principles of open data and use BHL as one example of how those principles have played out in a real world context.
What does it mean for data to be “open” and what tools or services can enable this? Our metadata is purposely “open” so that others can harvest it and repurpose it in different contexts. We make it available through both OAI-PMH and APIs.
If you “open” your data will they come? In some cases yes. BHL can give examples of scientists and science services, who have taken our data and exploited it for other purposes (e.g. BioStor, Earthcape, EOL, ZipcodeZoo) Yet, in a recent BHL survey we learned that of our frequent users, 42% were not aware that we provided APIs and 31% did not understand what APIs were. Clearly promotion of your open data is a key activity to making it truly useful.
What are some advantages to open data? Harvestable data allows that data which was created for a specific purpose and audience (e.g. historic texts, nomenclatural services, encyclopedias) to interact with other data and serve new, previously unimagined, roles. For BHL, opening our data it was a desire to do three things 1) make biodiversity data available to foster scientific research 2) support the public use of these data and 3) build a web of science.
The Road to SRFdom: OpenSRF as Curation Microservices Architecture
- Dan Coughlin, Digital Library Technologies, Penn State University ITS (firstname.lastname@example.org)
- Mike Giarlo, Digital Library Technologies, Penn State University ITS (email@example.com)
OpenSRF is the XMPP-based framework that underlies the Evergreen ILS, providing a service-oriented architecture with failover, load-balancing, and high availability. Curation microservices represent a new approach to digital curation in which typical repository functions such as storage, versioning, and fixity-checking are implemented as small, independent services. Put them together and what do you have?
The next phase of Penn State's institutional digital stewardship program will involve prototyping a suite of curation services to enable users to manage and enrich their digital content -- we’re just about to get started on this, at the time this proposal was written. The curation services will be implemented following the microservices philosophy, and they will be stitched together via OpenSRF. We will talk about why we chose the “road to SRFdom,” colliding the ILS world with the repository world, how we implemented the curation services & architecture, and how OpenSRF might be helpful to you. Code will be shown, beware.
Enhancing the Performance and Extensibility of the XC’s MetadataServicesToolkit
Learn how we increased the performance of the XC Metadata Services Toolkit (MST) by over 900%. The MST is an open-source Java application, that uses SOLR and MySQL to harvest (OAI-PMH) library metadata (MARC, DC), clean it up, convert and frbrize, and then make new metadata (RDA flavor, XC Schema) available for harvesting. Our first release performed too slowly with degrading performance with large record batches and we needed to enable the MST to process a library’s entire catalog in a reasonable amount of time on a common server. The MST was also intended to be extensible. Libraries will almost certainly want to customize this process in some way. Thus our second goal was to make it is as easy as possible for a developer to write a service which can be plugged into the MST.
In the spring of ‘10 we set out to accomplish our 2 goals. The first task was to establish how close the existing MST was to these goals. More concretely, our goal was to be able to process 1M MARC records/hr and have little to no degradation as the MST processed several million records. The first service in our chain of services, the normalization service, served as our initial metric. The normalization service was processing records at a speed of 125k/hr, much slower than we hoped for. On top of that, before processing 2M records, the MST essentially crawled to a halt. We were about an order of magnitude off and we needed to increase scalability in a substantial way as well. Also, examining the steps involved in writing a new service for the MST showed us that it was not easy to do so. Internals of the MST were exposed to the service developer and the developer was expected to re-implement much of this internal code with no instructions on how to do so. Much work needed to be done to abstract the implementation of the MST away from the service developer.
Working hard over the course of several months, we were able to accomplish both of our goals. The MST is now processing records at a speed of 1.2M records/hr with no degradation on a set of 6M records on a less than optimal server (1.5GHz cpu). In this talk, I will detail the specifics of the strategies we used to accomplish this major speed enhancement (such as a shift from Apache SOLR to a hybrid SOLR/MySQL approach). In regards to our second goal, third party developers can now download an MST development environment, write a few lines of code, and package their service for deployment into the MST. Third party developers need not concern themselves with the details of the internal MST implementation. In this talk, I will also walk through the steps required to write a service for the MST.
Free my DSpace Data! How to get your data out of DSpace 1.7 and restore your content after a disaster.
- Tim Donohue, DuraSpace, tdonohue at duraspace dot org
For a while, DSpace has provided many means to get content into the system (or create new content in the system), e.g. basic ingest packages, user interfaces, SWORD. However, getting your content out of DSpace, especially for backups or migrations has often been problematic. In the past, although individual Items could be exported in standard formats, entire Collections or Communities (and the relationships between them) could not be as easily exported.
DSpace 1.7.0 provides a new AIP Backup & Restore feature which allows DSpace to export all of its contents (Communities, Collections, Items, Groups, People, Permissions, and relationships between all objects) into a series of METS-based Archival Information Packages (AIPs). As these AIPs are just zip files, they can be backed up using your normal backup practices (e.g. to tape, hard-drive, or even to the cloud via a service like DuraCloud). As these AIPs also fully describe your DSpace contents, they can be used to restore your entire DSpace after a local server crash or larger disaster.
DSpace created AIPs use standard library metadata formats like MODS, PREMIS and METSRights (along with a few DSpace-specific ones where a "standard format" doesn't yet exist) to describe all the content housed in your DSpace installation. This comes in handy, should you ever decide to migrate some or all of your contents to another DSpace instance or another system altogether.
This talk will describe this new DSpace AIP Backup & Restore feature, provide hints/tips on how it can be used to backup/restore/migrate data. Time permitting, I can also touch on the DSpace Roadmap and other ideas/plans to "free your DSpace data".
Using cloud-based services to leverage open source software
- Erik Mitchell, Wake Forest University, mitcheet at wfu dot edu
Open source software and cloud computing systems are perceived as enticing technologies for both IT staff and IT/Academic administrators. The implementation of open source software or adoption of cloud services is often met with resistance however because of lack of technical expertise in smaller organizations or lack of perceived benefit in larger organizations. Although these technologies are not necessarily related when combined they offer easy deployment of services without significant organization investment or local expertise . This ability allows organizations to leverage open source systems without the overhead typically associated with "free as in a free kitten."
While there are some large national projects looking at using cloud platforms to deliver new services there is an opportunity for a grassroots effort to develop and support pre-configured application servers that are simple to deploy and maintain. These 'disposable' servers would serve the needs of both small and large libraries by enabling them to adopt open source software without taking on the requirement of local infrastructure, configuration, or detailed support.
This presentation will cover the technical details and lessons learned from efforts to create this type of service  on the Amazon EC2 platform and discuss the impact of this approach on open software adoption and its potential impact on IT support in libraries.
VIVO: Enabling National Networking of Scientists
- Brian Keese, Indiana University, bkeese at indiana dot edu
- Brian Lowe, Cornell University, bjl23 at cornell dot edu
VIVO is an open-source semantic Web application that enables the discovery of research and scholarship across disciplines at an institution. Originally developed from 2003-2009 by Cornell University, in September 2009 the National Institute of Health's National Center for Research Resources made a grant to the University of Florida , Cornell University , Indiana University Bloomington , and four implementation partners to use VIVO to create a national network for scientists. This network will allow researchers to discover potential collaborators with specific expertise, based on authoritative information on projects, grants, publications, affiliations, and research interests, essentially creating a social network for browsing, visualizing, and discovering scientists. This talk will give an overview of the technical underpinnings of VIVO, describe how it integrates with the larger semantic Web, sketch out the plans for enabling discovery across the national network of VIVO sites, and explore the role of libraries in implementing VIVO at all the partner sites. Additionally we will demonstrate some experiments in federated searching that have been undertaken by the VIVO network and the NIH funded Clinical and Translational Science Awards (CTSA) consortium network of networks.
Mass Moves with Worldcat APIs
- Sam Kome, Claremont Colleges Library, sam.kome at cuc dot claremont dot edu
Claremont needed to perform a mass evaluation of item level records to facilitate large scale collection moves and de-accession. Our de-accession criteria, for example, include that 3 or more copies of any book must be available in the 50+ libraries in our Link+ network. We addressed our requirements with the help of the OCLC Worldcat Search and xID APIs and a couple simple python scripts. The process was ultimately a success. We will present our approach, code, and the lessons learned as we discovered limits inherent in the APIs and in our own coding (in)experience. Bonus sub-topic: the use of OCLC Work ID to identify and coalesce alternative ISBNs.
A Simple Algorithm for User Query Classification & Resource Recommendation
- Josh Bishoff, University of Illinois, bishoff2 at illinois dot edu
One of the longstanding problems in library services is how we might automatically direct users to the most appropriate personnel, databases or facilities to meet their information need. Utilizing the faceted navigation features of various next-gen catalogs, we can efficiently & very accurately assign subject domains to user search queries.
For example: if a user searches “Gallium Arsenide” in the library discovery layer, we can first broadcast this query to a suitably large OPAC and receive the following subject distribution:
-Engineering & Technology: 45%
-Physical Sciences: 21%
…and so on.
By leveraging the cataloging efforts that have classified large collections, we can efficiently classify queries with a high rate of accuracy. By applying this approach to the library discovery layer, we can offer users tailored result sets from subject-specific A & I services. We can also recommend subject specialists & most appropriate campus libraries.
This presentation will discuss the technical challenges of implementing such a system and the trouble with mapping traditional subject classifications to non-book resources (databases, people, buildings, etc.). The dangers of incorrect automatic query classification will be discussed, along with strategies to combat this. A functional system will be demonstrated and code will be made available.
Beyond Sacrilege: A CouchApp Catalog
- Gabriel Farrell, Drexel University, firstname.lastname@example.org
At Code4LibCon2008 Dan Scott gave us a taste of yummy CouchDB, a document-oriented database with a RESTful JSON API (http://couchdb.org/). Since then, CouchDB has passed the 1.0 mark and landed on desktops, the cloud, and mobile devices. With the advent of CouchApps (web apps served directly from CouchDB) applications can be built that are as easy to install as the replicating of databases (which is super easy!). I'll discuss the advantages and challenges in designing a CouchApp to be used as a catalog, repository, or directory of resources. Some things are made fairly simple, such as site templating, the outputting of documents in different formats, and the attachment of binary objects to documents. Some things, like document versioning and the modeling of data, are a little trickier, but still straightforward. And some things, such as granular authentication and the integration of search, are tangled enough to produce some head-on-wall banging. But hey, take it easy. It’s time to relax.
Check out some code at http://github.com/gsf/catlg.