Code4Lib 2010 Schedule The schedule for the 2010 Code4Lib Conference in Asheville, NC.
Monday, February 22 -- Pre-Conferences
Pre-Conference day overview:
08:00-09:00 - Registration / coffee 09:00-12:00 - Morning Sessions 12:00-13:30 - Lunch (on your own) 13:30-16:30 - Afternoon Sessions Full Day Pre-Conferences:
OCLC Web Services and Lightning Talk Demos - Roy Tennant, Karen Coombs, and Alice Sneary Full day thorough coverage of a suite of APIs and the essentials about the underlying technologies (e.g., SRU, CQL, Atom, OpenSearch, etc.) to get you going right away. Handouts on each service covered will be distributed that outline the essential information about each service. There will also be time for you to show off what you've done to mashup library data in the past (not limited only to OCLC services), in a 5-10 minute presentation to help inspire ideas. Koha - Brendan Gallagher and Ian Walls Working on Koha bugs and enhancements, discussing best practices to solve common workflow and technical issues, developing helper scripts for data migration, connection to external systems, etc. Serials Solutions - Andrew Nagy and Harry Kaplanian Connecting Serials Solutions Fed Search, Link resolver or Summon to almost anything (such as OCLC, ILS systems, Drupal, whatever). Additionally, participants will have full access to the Summon API - providing search access to over 500 million academic documents. Serials Solutions staff will be on hand to answer questions and demonstrate various technologies. Morning Pre-Conferences (09:00 - 12:00):
Tuesday, February 23
08:00-09:00 - Breakfast 09:00-09:15 - Housekeeping, Intros 09:15-09:35 - Iterative Development Done Simply - Emily Lynema [Video] [Page] 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 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 seen, and the areas 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. 09:35-09:55 - Vampires vs. Werewolves: Ending the War Between Developers and Sysadmins with Puppet - Bess Sadler [Video] [Page] Developers need to be able to write software and deploy it, and often require cutting edge software tools and system libraries. Sysadmins are charged with maintaining stability in the production environment, and so are often resistant to rapid upgrade cycles. This has traditionally pitted us against each other, but it doesn't have to be that way. Using tools like puppet for maintaining and testing server configuration, nagios for monitoring, and hudson for continuous code integration, UVA has brokered a peace that has given us the ability to maintain stable production environment with a rapid upgrade cycle. I'll discuss both the individual tools, our server configuration, and the social engineering that got us here. 09:55-10:15 - I Am Not Your Mother: Write Your Test Code - Naomi Dushay, Willy Mene, and Jessie Keck [Video] [Page] How is it worth it to slow down your code development to write tests? Won't it take you a long time to learn how to write tests? Won't it take longer if you have to write tests AND develop new features, fix bugs? Isn't it hard to write test code? To maintain test code? We will address these questions as we talk about how test code is crucial for our software. By way of illustration, we 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. 10:15-10:35 - Break 10:35-10:55 - Media, Blacklight, and Viewers Like You (pdf, 2.61MB) - Chris Beer [Video] [Page] 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. In late 2009, we finally saw the (black)light, and after some initial experimentation, decided to build a new, public website to support our IMLS-funded /Vietnam: A Television History/ archive (as well as existing legacy content). In this session, we will share our experience of and challenges with customizing Blacklight as an archival interface, including work in rights management, how we integrated existing Ruby on Rails user-generated content plugins, and the development of media components to support a rich user experience. 10:55-11:15 - Becoming Truly Innovative: Migrating from Millennium to Koha - Ian Walls [Video] [Page] On Sept. 1st, 2009, the NYU Health Sciences Libraries made the unprecedented move from their Millennium ILS to Koha. The migration was done over the course of 3 months, without assistance from either Innovative Interfaces, Inc. or any Koha vendor. The in-house script, written in Perl and XSLT, can be used with any Millennium installation, regardless of which modules have been purchased, and can be adapted to work for migration to systems other than Koha. Helper scripts were also developed to capture the current circulation state (checkouts, holds and fines), and do minor data cleanup. This presentation will cover the planning and scheduling of the migration, as well as an overview of the code that was written for it. Opportunities for systems integration and development made newly available by having an open source platform are also discussed. 11:15-12:00 - Ask Anything! – Facilitated by Dan Chudnov [Video] [Page] a.k.a. "Human Search Engine". A chance for you to ask a roomful of code4libbers anything that's on your mind: questions seeking answers (short or long), requests for things (hardware, software, skills, or help), or offers of things. We'll keep the pace fast, and the answers faster. Come with questions and line up at the start of the session and we'll go through as many as we can; sometimes we'll stop at finding the right person or people to answer a query and it'll be up to you to find each other after the session. First time at code4libcon! (Thanks to Ka-Ping Yee for the inspiration/explanation, reused here in part.) 12:00-13:00 - Lunch (provided) 13:00-13:20 - A Better Advanced Search - Naomi Dushay and Jessie Keck [Video] [Page] Even though we'd love to get basic searches working so well that advanced search 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 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/advanced We'll share details of how we implemented Advanced Search in Blacklight. 13:20-13:40 - Drupal 7: A more powerful platform for building library applications - Cary Gordon, The Cherry Hill Company [Video] [Page] 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. Kill the Search Button - Michael Poltorak Nielsen and Jørn Thøgersen We demo three concepts that eliminate the search button: 1. Instant search. Why wait for tiresome page reloads when searching? Instant search updates the search result on every key-press. We will show how we integrated this feature into our own library search system with minimal changes to the existing setup. 2. Index lookup. Ever dreamed of your own inline instant index lookup? We demo an instant index lookup feature that requires no search button and no page refreshes - and without ever leaving the search field. 3. Slide your data. Sliders are an alternative way to fit search results to the user's search context. Examples are sliders that move search results priorities between title and subject and between books by an author and books about the author.
13:40-14:00 - Enhancing Discoverability With Virtual Shelf Browse (3.65 MB ppt) - Andreas Orphanides, Cory Lown, and Emily Lynema [Video] [Page] 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. We will provide an overview of the architecture of the front-end application, which uses Syndetics cover images to provide a "cover flow" view and allows the entire "shelf" to be browsed dynamically. We will describe what we learned while wrangling multiple jQuery plugins, manipulating an ever-growing (and ever-slower) DOM, and dealing with unpredictable response times of third-party services. The front-end application is supported by a web service that provides access to a shelf-ordered index of our catalog. We will discuss our strategy for extracting data from the catalog, processing it, and storing it to create a queryable shelf order index. 14:00-14:20 - How to Implement A Virtual Bookshelf With Solr - Naomi Dushay and Jessie Keck [Video] [Page] 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. 14:20-14:40 - Break 14:40-15:50 - Lightning Talks 2 15:50-17:00 - Breakout Sessions 2 - Sign up on the wiki 17:00-17:15 - Daily Wrap Up (include breakout reports?) Thursday, February 25
08:00-09:00 - Breakfast 09:00-09:15 - Housekeeping 09:15-10:00 - Keynote #2: catfish, cthulhu, code, clouds and Levenshtein distance - Paul Jones [Video] [Page] 10:00-10:15 - Break 10:15-11:00 - Lightning Talks 3 11:00-11:20 - You Either Surf or You Fight: Integrating Library Services With Google Wave - Sean Hannan [Page] 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. 11:20-11:40 - library/mobile: Developing a Mobile Catalog - Kim Griggs [Video] [Page] 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' 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. 11:40-12:00 - Mobile Web App Design: Getting Started (8.5 MB ppt) - Michael Doran [Video [Page] 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. 12:00-12:15 - Wrap-Up