54
edits
Changes
new formatting. now to fix the encoding gaffs.
== Talk Title: ==
Abstract of no more than 500 words.
== Mobile Web App Design: Getting Started ==
Creating or adapting library web applications for mobile devices such as the iPhone, Android, and Palm Pre is not hard, but it does require learning some new tools, new techniques, and new approaches. From the Tao of mobile web app design to using mobile device SDKs for their emulators, this presentation will give you a jump-start on mobile cross-platform design, development, and testing. And all illustrated with a real-world mobile library web application.
== Drupal 7: A more powerful platform for building library applications ==
The release of Drupal 7 brings with it a big increase in utility for this already very useful and well-accepted content management framework. Specifically, the addition of fields in core, the inclusion of RDFa, the use of the PHP_db abstraction layer, and the promotion of files to first class objects facilitate the development of richer applications directly in Drupal without the need to integrate external products.
== Fiwalk with Me: Using Automatic Forensics Tools and Python for Digital Curation Triage ==
Building on Simson Garfinkel's work in Automated Document and Media Exploitation (ADOMEX), this project investigates digital curation applications of open source tools used in digital forensics. Specifically, we will be using [http://afflib.org AFFLib]'s fiwalk ("file and inode walk") application and its corresponding Python library to develop a basic triage workflow for accessioned hard drives, removable media, or disk images. These tools will allow us to create a simple, Web-based "digital curation workbench" application to do preliminary analysis and processing of this data.
== Do it Yourself Cloud Computing with Apache and R ==
R is a powerful and extensible open source statistical analysis application. Rapache, software developed at Vanderbilt University, allows web developers to leverage the numeric processing and graphical capabilities of R in real-time through simple Apache server requests. This presentation will provide an overview of both R and rapache and will explore how these tools are relevant to the library community.
== Metadata editing - a truly extensible solution ==
We set out in the Trident project to create a metadata tool that scales. In doing so we have conceived of the metadata application profile, a profile which provides instructions for software on how to edit metadata. We have built a set of web services and some web-based tools for editing metadata. The metadata application profile allows these tools to extend across different metadata schemes, and allows for different rules to be established for editing items of different collections. Some features of the tools include integration with authority lists, auto-complete fields, validation and clean integration of batch editing with Excel. I know, I know, Excel, but in the right hands, this is a powerful tool for cleanup and batch editing.
== Flickr'ing the Switch ==
We started out with a simple dream – – to pilot a handful of images from our collection in Flickr. Since June 2009, we've grown that dream from its humble beginnings into something bigger: we now have a Flickr collection of over two thousand images. We added geocoding and tags, repurposed our awesome structured metadata, and screenscraped the rest. This talk will focus on the code, which made most of this possible.
This includes (and is certainly not limited to) using the Python Flickr API, various geocoding tools, crafting Flickr metadata by restructuring XML data from Luna Insight, screenscraping any descriptive text we could get our hands on, negotiating naming conventions for thousands of images, thinking cleverly in order to batch update images on Flickr at a later point (we had to do this more than once), using digital forensic tools to save malformed tifs (that were digitized in 1998!), and, finally, our efforts at scaling everything up so we can integrate our Flickr project into the regular workflow at technical services.
== library/mobile: Developing a Mobile Catalog ==
The increased use of mobile devices provides an untapped resource for delivering library resources to patrons. The mobile catalog is the next step for libraries in providing universal access to resources and information.
This talk will share Oregon State University (OSU) Libraries’ Libraries’ experience creating a custom mobile catalog. The discussion will first make the case for mobile catalogs, discuss the context of mobile search, and give an overview of vendor and custom mobile catalogs. The second half of the talk will look under the hood of OSU Libraries' custom mobile catalog to provide implementation strategies and discuss tools, techniques, requirements, and guidelines for creating an optimal mobile catalog experience that offers services that support time critical and location sensitive activities.
== Enhancing discoverability with virtual shelf browse ==
With collections turning digital, and libraries transforming into collaborative spaces, the physical shelf is disappearing. NCSU Libraries has implemented a virtual shelf browse tool, re-creating the benefits of physical browsing in an online environment and enabling users to explore digital and physical materials side by side. We hope that this is a first step towards enabling patrons familiar with Amazon and Netflix recommendations to "find more" in the library.
== Where do mobile apps go when they die? or, The app with a thousand faces. ==
New capabilities in both native and web-based mobile platforms are rapidly expanding the possibilities for mobile library services. In addition to developing small-screen versions of our current services, at NCSU Libraries we attempt to develop new services that take unique advantage of the mobile user context. Some of these ideas may require capabilities that are not exposed to the mobile browser. Smart technical planning can help to make sound development decisions when experimenting with mobile-enhanced development, while remaining agile when faced with constantly changing technical and non-technical restraints and opportunities.
== Using Google Voice for Library SMS ==
The LibraryH3lp Google Voice/SMS gateway (free, full AGPL source available at http://github.com/esessoms/gvgw, works with any XMPP server, LibraryH3lp subscription not required) enables libraries to easily integrate texting services into their normal IM workflow. This talk will review the challenges we faced, especially issues involved with interfacing to a Google service lacking a published API, and will outline the design of the software with particular emphasis on features that help the gateway to be more responsive to users. Because the gateway is written in the Clojure programming language, we'll close by highlighting which features of the language and available tools had the greatest positive and negative impacts on our development process.
== Building a discovery system with Meresco open source components ==
TU Delft Library uses Meresco, an open source component library for metadata management, to implement a custom integrated search solution called [http://discover.tudelft.nl/ Discover]).
In Discover, different Meresco components are configured to work together in an efficient observer pattern, defined in what is called Meresco DNA (written in Python). The process is as follows: metadata is harvested from different sources using the Meresco harvester. It is then cross-walked into (any format you like, but we chose) MODS, then normalized, stored and indexed in three distinct but integrated indexes: a full-text Lucene index, a facet index and N-gram index for suggestions and fixing spelling mistakes. The facet index supports multiple algoritmes: drilldown, Jaccard, Mutual Information (or Information Gain) and Χ²Î§Â². One of the facets is used to cluster the search results by subject by using the Jaccard and Mutual Information algorithms.<br/>
The query parser component automatically detects and supports Google-like, Boolean and field-specific queries. Different XML documents describing the same content item coalesce to provide the user interface with an easy way to access metadata from either the original or normalized metadata or from user generated metadata such as ratings or tags. Other Meresco components provide an SRU and a RSS interface.<br/>
Discover currently holds all catalogue records, the institutional repository metadata, an architecture bibliography and a test-set of Science Direct articles. In 2010, it is expected to grow to over 10 million records with content from Elsevier, IEEE and Springer (subject to negotiatons with these publishers) and various open access resources. We will also add the university’s university’s multimedia collection, ranging from digitized historical maps, drawing and photographs to recent (vod- and) podcasts.<br/>
In the proposed session, we would like to show you some examples of above mentioned functionality and explain how Meresco components work together to create this flexible system.
== Take control of library metadata and websites using the eXtensible Catalog ==
The eXtensible Catalog Project has developed four open-source software toolkits that enable libraries to build and share their own web- and metadata-focused applications on top of a service-oriented architecture that incorporates Solr in Drupal, a robust metadata management platform, and OAI-PMH and NCIP-compatible tools that interact with legacy library systems in real-time.
This presentation will showcase XC’s XC’s metadata processing services, the metadata “navigator†â€œnavigator†and the Drupal user interface platform. The presentation will also describe how libraries and their developers can get started using and contributing to the XC code.
== I Am Not Your Mother: Write Your Test Code ==
How is it worth it to slow down your code development to write tests? Won’t Won’t it take you a long time to learn how to write tests? Won’t Won’t it take longer if you have to write tests AND develop new features, fix bugs? Isn’t Isn’t it hard to write test code? To maintain test code? I will try to answer these questions as I talk about how test code is crucial for our software. By way of illustration, I will show how it has played a vital role in making Blacklight a true community collaboration, as well as how it has positively impacted coding projects in the Stanford Libraries.
== How To Implement A Virtual Bookshelf With Solr ==
Browsing bookshelves has long been a useful research technique as well as an activity many users enjoy. As larger and larger portions of our physical library materials migrate to offsite storage, having a browse-able virtual shelf organized by call number is a much-desired feature. I will talk about how we implemented nearby-on-shelf in Blacklight at Stanford, using Solr and SolrMarc:
== A Better Advanced Search? ==
Even though we’d we’d like to get basic searches working so well that advanced search wouldn’t wouldn’t be necessary, there will always be a small set of users that want it, and there will always be some library searching needs that basic searching can’t can’t serve. Our user interface designer was dissatisfied with many aspects of advanced search as currently available in most library discovery software; the form she designed was excellent but challenging to implement. See http://searchworks.stanford.edu/advancedWe’ll We’ll share details of how we implemented Advanced Search in Blacklight:
# thoughtfully designed html form for the user (NOT done by techies!)
# boolean syntax while using Solr dismax magic (dismax does not speak Boolean)
# checkbox facets (multiple facet value selection)
# fielded searching while using Solr dismax magic (dismax allows complex weighting formulae across multiple author/title/subject/… … fields, but does not allow “fielded†â€œfielded†searching in the way lucene does)
## easily configured in solrconfig.xml
# manipulating user entered queries before sending them to Solr
== Scholarly annotation services using AtomPub and Fedora ==
We are building a framework for doing granular annotations of objects housed in Brown’s Brown’s Digital Repository. Beginning with our TEI-encoded text collections, and eventually expanding to other media, these scholarly annotations are themselves objects stored and preserved in the repository. They are linked to other resources via URI references, and deployed using AtomPub services as part of Fedora’s Fedora’s Service/Dissemination model.
This effort stems from the recognition that standard web annotation techniques (e.g. tagging, Google Sidebar, page-level commenting, etc.) are not flexible or persistent enough to handle scholarly annotations as an organic part of natively digital research collections. We are developing solutions to several challenges that arise with this approach; particularly, how do we address highly granular portions of digital objects in a way that is applicable to different types of media (encoded texts, images, video, etc.). This presentation will provide an overview of the architecture, a discussion of the possibilities and problems we face in implementing this framework, and a demo of a live project using Atom annotations with a digital research collection.
== With Great Power... Managing an Open-Source ILS in a state-wide consortium. ==
Using agile software development methodology + project management to achieve a balance of support and expertise. Lessons learned after implementation that inform how the consortium should evolve so that you can utilize your new ILS for the benefit of all stakeholders.
== Data Modeling; Logical Versus Physical; Why Do I Care? ==
I am sure we have all been in the situation of having mountains of data stored in our database, needing a piece of information and yet being unable to determine how to get what we need. Computerized databases have been around for decades now and there are several architectures available; however, the ability of a database developer, regardless of the architecture, to store data in a format that is comprehensible to a businessperson yet readily accessible through software applications remains an impossible challenge.
== Media, Blacklight, and viewers like you. ==
There are many shared problems (and solutions) for libraries and archives in the interest of helping the user. There are also many "new" developments in the archives world that the library communities have been working on for ages, including item-level cataloging, metadata standards, and asset management. Even with these similarities, media archives have additional issues that are less relevant to libraries: the choice of video players, large file sizes, proprietary file formats, challenges of time-based media, etc. In developing a web presence, many archives, including the WGBH Media Library and Archives, have created custom digital library applications to expose material online. In 2008, we began a prototyping phase for developing scholarly interfaces by creating a custom-written PHP front-end to our Fedora repository.
== DAMS PAS - Digital Asset Management System, Public Access System ==
After years of describing our DAMS with Powerpoint, we finally have a public access system that we can show our mothers. And code4lib! The UCSD Libraries DAMS is an RDF based asset repository containing over 250,000 items and their derivatives. We describe the core system, the metadata and storage challenges involved in managing hundreds of thousands of items, and the interesting political aspects involved in releasing subsets to the public. We also describe the caching approach we used to ensure performance and access control.
== You Either Surf or You Fight: Integrating Library Services with Google Wave ==
So Google Wave is a new shiny web toy, but did you know that it's also a great platform for collaboration and research? (I bet you did.) ...And what platform for collaboration and research would not be complete without some library tools to aid and abet that process? I will talk about how to take your library web services and integrate them with Google Wave to create bots that users can interact with to get at your resources as part of their social and collaborative work.
== The Linked Library Data Cloud: Stop talking and start doing ==
A year later and how far has Linked Library Data come? Outside of the Swedish National Library's LIBRIS (which already existed), the return of lcsh.info as http://id.loc.gov/authorities/ and LC's Chronicling America, not much. But entry to the Linked Data cloud might be easier than you think. This presentation will describe various projects that are out in the wild that can bridge the gap between our legacy data and the semantic web, incremental steps we can take modeling our data, why linked data matters and a demonstration of how a small template changes can contribute to the Linked Data cloud.
== A code4lib Manifesto ==
code4lib started with a half dozen library hackers and a list and it ain't like that anymore. I come to code4lib with strong opinions about why it's a positive force in my professional and personal life, but they're probably different from your opinions. I will share these opinions rudely yet succinctly to challenge everyone to think and argue about why code4lib works and what we need to do to keep it working.
== Cloud4lib ==
Major library vendors are creating proprietary platforms for libraries. We will propose that the code4lib community pursue the cloud4lib, a open digital library platform based on open source software and open services. This platform would provide common service layers for libraries, not only via code, but also allow libraries to easily utilize tools and systems through cloud services. Instead of a variety of competing cloud services and proprietary platforms, cloud4lib will attempt to be a unifying force that will allow libraries to be consumer of the services built on top of it as well as allow developers / researchers / code4lib'ers to hack, extend, and enhance the platform as it matures.
== Iterative development done simply ==
With a small IT unit and a wide array of projects to support, requests for development from business stakeholders in the library can quickly spiral out of control. To help make sense of the chaos, increase the transparency of the IT “black “black box,†â€ and shorten time lag between requirements definition and functional releases, we have implemented a modified Agile/SCRUM methodology within the development group in the IT department at NCSU Libraries.
This presentation will provide a brief overview of the Agile methodology as an introduction to our simplified approach to iteratively handling multiple projects across a small team. This iterative approach allows us to regularly re-evaluate requested enhancements against institutional priorities and more accurately estimate timelines for specific units of functionality. The presentation will highlight how we approach each development cycle (from planning to estimating to re-aligning) as well as some of the actual tools and techniques we use to manage work (like JIRA and Greenhopper). It will identify some challenges faced in applying an established development methodology to a small team of multi-tasking developers, the outcomes we’ve we’ve seen, and the areas we’d we’d like to continue improving. These types of iterative planning/development techniques could be adapted by even a single developer to help manage a chaotic workplace.
== Public Datasets in the Cloud ==
When most people think about cloud computing (if they think about it at all), it usually takes one of two forms: Infrastructure Services, such as Amazon EC2 and GoGrid, which provide raw, elastic computing capacity in the form of virtual servers, and Platform Services, such as Google App Engine and Heroku, which provide preconfigured application stacks and specialized deployment tools.
== Codename Arctika ==
There's something missing in the state of Denmark. Most of our web based copyright deposit material is trapped in a dark archive. After a successful pilot; money and time has been allocated to open part of the data. We tried NutchWAX and it worked well, but we wanted more. Proper integrated search with existing library material, extraction of names etc. Therefore we propose the following recipe: Take a slice of a dark archive with copyright deposit material. Get permission to publish it (the tricky bit). Add an ARC reader to get the bits, Tika to get the text and Summa to get large-scale index and faceting. We mixed it up and we will show what happened.
== JeromeDL - an open source social semantic digital library ==
We will tell about the idea of binding together semantics coming from two sources: legacy, well-crafted annotations provided by librarians, and less organized/structured annotations provided by the community of library users. We will present <a href="http://www.jeromedl.org/">JeromeDL system</a> that enables users to provide and manage such annotations; it also implements a number of information discovery solutions that utilize these combined annotations, including collaborative browsing, natural language query templates and collaborative filtering. We will also talk about a vocabulary service used by JeromeDL that encourages users to provide more meaningful annotations than just tags. Finally, we will show how JeromeDL-based libraries contribute to the Web 3.0 linked data by utilizing standard vocabularies, such as SIOC, FOAF, and WordNet, and publishing RDF description of library content.
== Kill the search button ==
We demo three concepts that eliminate the search button.
== Controlling the flood: Re-plumbing fittings between a New Titles List and other services with Yahoo! Pipes. ==
About four years ago the University of Illinois decided to create a New Titles service (http://www.library.illinois.edu/newtitles/) that could provide RSS feeds. At the time a balance was struck between complexity of options and limited development time. Currently a feed is created by adding options, each option narrowing the scope of a feed. Selecting a date range, Unit Library and a call number range will retrieve material that match all three of the criteria. It was hoped that at some point a generic tool would be able to further manipulate and combine feeds produced by the simple options to customize very specific feed. Yahoo! Pipes has emerged to fill that niche.
== Vampires vs. Werewolves: Ending the War Between Developers and Sysadmins with Puppet ==
Developers need to be able to write software and deploy it, and often require cutting edge software tools and system libraries. Sysadmins are
== Building customizable themes for DSpace ==
The popularity of DSpace (should I say DuraSpace?) continues to grow!
Many universities and research institutions are using DSpace to create and provide access to digital content –including –including documents, images, audio, and video. With the variety of content, one of the challenges is “how “how to create customizable themes for different types of content?â€Ã¢â‚¬Â
In 2007, Manakin was developed as a user interface for DSpace based on themes. Now users have the ability to customize the web interface for DSpace collections by editing CSS, XML, and XSLT files. Best of all, a singular theme can be applied to individual communities, collections or items.
This talk will be based on my work creating themes for DSpace, as well as tips & tricks for customizing the look-and-feel for individual communities and collections.
Who knows, maybe someday a group of code4lib developers can create a whole library of themes for DuraSpace –similar –similar to the WordPress or Drupal theme idea!
== HIVE: a new tool for working with vocabularies ==
HIVE is a toolkit that assists users in selecting vocabulary and ontology terms to annotate digital content. The HIVE approach promises to combine the ease of folksonomies with the rigor of traditional vocabularies.