TRY 2013: RULA Bookfinder: Getting People to Their Books Fast!

I’ve done a write up of the 5-minute version of this talk when I presented it at Code4lib 2013 National. This version at TRY 2013 is the full overview that I did with two coworkers. Continue reading “TRY 2013: RULA Bookfinder: Getting People to Their Books Fast!”

TRY 2013: Implementing WCAG by Making Your Website Accessible for Everyone

If you’ve read my previous posts on web accessibility, then most of this will be a rehash. This is the version that I did for the TRY 2013 conference, where I reorganized a few things and put in different examples. Continue reading “TRY 2013: Implementing WCAG by Making Your Website Accessible for Everyone”

TRY 2012: Drupal for Libraries at UTL

Just a warning that some of this gets fairly technical, especially with hardware setup, and without the related diagrams, it may be difficult to understand, but the basics are there.


  • Marc Lalond
  • Andrew McAlorum
  • Graham Stewart

Evolution of the UTL Website

  • recognized need for CMS back in 2003
  • 2005 – used Plone
  • 2008 – had to move frontpage out of CMS, which meant more maintenance
  • 2010 – took another look at new CMS since current CMS needed a lot of Python knowledge and decided on Drupal
  • 2011 – launched new site in Drupal


  • little coding work
  • modules (much like WordPress plugins) that are available
  • steep learning curve, but coding not necessary

Drupal Related Additions

  • Drupal Commons – community distribution, pre-configured package
  • Islandora – digital asset management, Fedora database backend
  • Solr – well integrated into Drupal, especially for faceted searching


  • multi-site drupal allows multiple instances
  • especially useful for simpler sites with little custom code and modules that are updated
  • built custom Drupal distribution for UTL with all modules, theme, settings
  • theme built on LayoutStudio starter theme
  • next: responsive version


  • regularly schedule training, about once a month
  • covers setup and config, users, content, etc.


  • 2000 visits per hour
  • single page load = 279 MySQL queries
  • initial loads for 2000 page loads = 558,000 MySQL queries
  • Drupal on one box: User <-> Apache Web Services <-> PHP <-> MySQL
  • problem occurs when there is a bottle neck with a single point of failure
  • Solution: horizontal scaling with multiple servers with Drupal functions split into smaller boxes
    • very flexible
    • less expensive
    • more adaptive
    • fully redundant


  • individual servers are virtual machines, buil using KVM virtualization with Ubuntu Linux
  • High availability with Keepalived
  • Load balancing with HAProxy
  • Caching using Varnish and XCache
  • Storage on shared high performance disk
  • MySQL query caching with Memcached and Keepalived
  • MySQL master/slave replication + Keepalived


  • 5 minute downtime (planned and unplanned) between Sept 2011 and April 2012
  • load time = < 2s on campus, 4.1 on simulated DSL in Virginia
  • 100% Open Source

As I posted on twitter, I’m quite glad we don’t take care of our own hardware, especially since we just don’t have the people and resources (including not having any server admin), but I was quite impressed with the setup of the UTL Drupal setup. Quite interesting to hear what they’re doing.

TRY 2012: Evolving Services with Technology

Angela Hamilton, U of T Scarborough, spoke about technologies that she has used particularly at a campus where many are commuter or distance education students.

Libguides: Customized tools

  • branding yourself for students to recognize you as their librarian: picture, meebo, contact info
  • info on what is an article, database, annotated bibliography, etc.
  • custom course guide
  • use the tools available to you
  • helps to build relationship with users

Online Meeting Software

  • e.g. Adobe Connect
  • for more advanced reference questions
  • share screen – the “show-er” needs to install a plugin, but viewer doesn’t need to
  • one-to-one, but also for teaching sessions

Screencapture Videos

  • check vendors for already made videos e.g. ISI for Web of Science
  • Jing (sp?) – free 5 min videos
  • answer longer questions
  • can also do it at the reference desk and e-mail it to them
  • esp useful for non-techsavvy and ESL students to review later
  • can also work for one-on-one session if have software for longer videos

I think some of the ideas presented here are great ways to give students further reference on how to do their research, especially on-the-spot screencasts for customized tutorials for them to review later.

TRY 2012: Digital Signage at the Robarts Library (UTL)

This presentation actually not only talks about digital signage itself, but also the work culture change that happened in the systems department at UTL.


  • Sian Meikle
  • Bilal Khalid
  • Graham Stewart

Good Signs Can Make a Difference

  • brief
  • consistent
  • easily read

Writing the Message

  • simple
    • reduce: punctuation, pictures, words
    • headline: 22 characters
    • body: 10-18 words
    • short URLs
  • brief
    • 5 seconds per slide
    • 8-10 seconds total
    • usually less is more
  • clear
    • call to action e.g. Chat with a librarian
    • photographs can be powerful
    • coherent design

I don’t know that I agree with all of these, but then it was clear that it depends on the size and distance of the sign as well as where it is.

Presenting the Message

  • Chunking
    • group things together
  • Coding
    • add headings
  • position
    • prime spots on a list: first and last get noticed the most

What Makes Digital Signage Different?

  • easy to update
  • can differentiate content by
    • time of day
    • audience
    • viewing time

What Users Say

  1. Help me make better decisions
    • chat with a librarian, workshops
  2. Save me time
    • maps: library, stacks, workstations
    • directories: by floor, service, name, library
  3. Show me something relevant to me
    • news, community content
  4. Tell me something new and interesting
    • exhibitis, events, news
  5. Give me ideas
    • collection highlights

This is not what their actual users were saying. These ideas were based on a talk done by someone outside of the library and the list here is how those ideas might be applied in a library setting.

Touchscreen Kiosks

  • PHP – CodeIgniter
  • jQuery
  • MySQL
  • Closed Environment – not open to the Internet
  • Javascript Keyboard


  • Most Frequent Pageviews
    • since May 2011
    • Libraries & Hours
    • Robarts Directory
    • Workstations
  • User Feedback
    • Let me find a book
    • Let me access this information from my phone

What’s Next

  • catalogue search
    • entire catalogue available
  • StackMap
    • map of physical item location, with directions
  • Responsible Design
    • designed to be used on any device

This is interesting, because we’re working on something similar at our library and we were considering how responsive to make the site. Obviously, we need to seriously consider designing from desktop down to mobile.

Overhead Signage

  • 4 vertical screens
  • PHP + AJAX
  • Media Commons
  • JavaScript video player
  • Fishers Rare Book
  • screensaver


  • auto refresh
  • detection of new content
  • remote control
  • ability to have different slideshows
  • control to switch between slideshows
  • control through phone

What’s Next

  • Scala software across all overhead screens
    • content regions e.g. time at bottom of screen
    • RSS Feeds to Drupal based on another content type
    • Scheduling e.g. times of day

Building Directories

  • one PHP + JavaScript page per vertical pylon (two vertical screens)
  • alternating event feed display (from Drupal, via AJAX)

Development – Devops Movement

  • focus on increase collaboration and cooperation
  • agile methodology applied to system administration
  • agile development and teams (self organizing, cross functional, quick daily meetings, open environments, face to face meetings, encourage input)

On System Administration

  • timeframes all shrink
  • web presence critical
  • software is developed much faster and changes are more frequent
  • massive growth in automation tools
  • growth in OSS: sharing and collaboration

Devops Goals

  1. Eliminate stereotypes
    • developers are careless, arrogant while sysadmins always say no and work all night
  2. Increase communicatin between developers, operations, and management
  3. Continuous systems improvement
  4. Break down barriers and silos
  5. Develop methods to encourage all team members to see the organization’s goals


  • all staff use all their skills
    • diversity
    • use knowledge outside defined roles
    • roles expand
    • cross pollination
    • creativity
    • “many minds”
  • enhanced mutual respect and communication
    • greater trust
    • shared responsibility
    • everyone feels a sense of ownership over the end product
    • greater commitment to the product
    • everyone focused on the organization’s end goal
  • happier, move productive staff

Implementing DevOps With Digital Signange

  • operations and development involved jointly from the start
  • weekly full meetings and as necessary (often daily) with quick interrupts/one-on-ones for specific issues
  • fast code releases: several times/week
  • “many minds”
  • two screen display: one browser? 2 PCs?
  • disabling right click
  • URL shortening
  • Planning and execution
    • browser choice
    • OS choice
    • development options
    • design decisions
  • New and experimental project
    • innovative methods required

I thought it was interesting that they spoke a lot about the more technical aspect as well as development methodology. I think it’s a good lesson for a lot of library IT departments that agile development with integrated back and front end staff can be very beneficial, particularly because it makes more development faster and more flexible.

One of the things that came up during the code4lib conference too is that developers should have a small amount of time to work on whatever seems interesting to develop new tools or services.