Open Source Academic Library Search Software
My Role
UX Designer, Lead Full Stack Developer
Related Skills
Figma, Maze, Digital Ocean, Ruby on Rails, Vite, Vue, Apache Solr
The Brief
The Canadiana collections are one of the largest collections of digitized Canadian documentary heritage in the world. The website used to make the collection available to the public was initially developed as a monolithic application using the Perl-based Catalyst framework. Over time the codebase had become unwieldy to the extent that the team was afraid to touch the application to provide much requested features to users, lest they break something. After serving the collection well for a number of years, the interface was beginning to show its age and lag behind the times. Since the development team (me included) for Canadiana is small, and our organization is a non profit, we really wanted to adopt an open source solution so that we could work with other developers and provide more features to end users. After a landscape analysis, and interviewing our librarian staff, I chose an open source system highly configurable Rails project called Blacklight to replace the old search interface. To see how our end users would respond to the default configuration Blacklight software, I spun up an instance of Blacklight with minimal Canadiana theming. This would allow us to determine what, if anything, we should focus our attention on as developers before making the transition. this approach also meant the results would be impactful for all of the libraries across the globe who have rolled out Blacklight based websites.
The Solution
So, what did I do?

Recruit test users
Part of the reason I was selected to join the project was my experience in Design Thinking and user centred design from IBM. The Canadiana collection has been accessible via their website for ten years, but they had no idea who was accessing the collection or why. There were assumptions, such as historians and genealogists, but they had no way of knowing the percentage make up of their user base. To solve this problem I recommended a pop up survey to collect some stats on who was using the website and why. I also recommended we ask for people to enter their emails if they would be willing to participate in UX testing. Many end users ended up filling out the survey, and we received over 100 emails for our test user pool.
Design the usability test
Having set up the test environment of Blacklight on the Digital Ocean Cloud platform, I was ready to design the usability test. I focused the tasks on the basic search functionality such as the facets and sorting options.


Run the test sessions
I use a software called Maze to run unmoderated user tests. Users sequentially perform the tasks while the software screen records and voice records. It also tracks completion through expected paths that I set up for each task, and gives me a heat map of user activity. I also opted to enable voice recording, and instructed the users to speak their thoughts aloud as they performed the tasks.
Analyze the test data
After the test sessions were finished, I used the data gathered by Maze, along with my analysis of the user comments and screen recordings to create insights. For each task I reported interesting findings that I could draw conclusions from.


Create recommendations
Based on the insights I gathered, I systematically categorized them by interface component. For each category, I proposed targeted enhancements to the interface aimed at addressing the specific issues highlighted by the insights.
Share with open source community
Since Blacklight is an open source project, I shared the full usability test report (available here) on the community forum.


Implement the recommendations
I created GitHub issues for the recommendations made in the report. Working with others, I developed changes to the Rails application, implementing the recommendations in the source code.