Virginia Tech Demystifying the Summon 2.0 Interface

Earlier today, Proquest hosted a webinar with Godmar Back and Annette Bailey on the work they’ve been doing at Virginia Tech to customize some aspects of the Summon interface.  See their Code4Lib paper for the technical details.  Much of the webinar consisted of watching Godmar Back think aloud, navigating the code, to show how they “reverse-engineered” Summon code to identify components of the AngularJS framework they could augment.  They used a utility for deobfuscating the source code (Code Rascals W0rd of the Day: Grep) so that they could identify Summon developers’ custom directives that they could modify with their own JavaScript.  At least, I think that’s what they said they did.

According to a recent interview with Proquest, the original motivation for all of this was to be able to capture user click-throughs in Summon results for Virgina Tech’s libFX project.  Check out the “discipline ticker” for an example of what they were trying to do.  But, of course, it opened up the possibility for other customizations.

image of expanded facet in summon results
Example of a default expanded facet.

Examples included being able to improve labeling of links, or to have certain facets default to an open state on search results pages, and to retain that choice after page reloads.  Another example, demoed at the end of the webinar, was the insertion of local notices, such as simultaneous user limits, into certain result displays.

They acknowledged that considerable technical skills were necessary for sleuthing the Summon code.  They also acknowledged what they felt were the “moderate” risks associated with “writing code that directly interfaces with vendor code,” and expressed confidence that the risks were manageable.  A big takeaway from the webinar is that much is possible, even when dealing with seemingly inscrutable vendor interfaces.  It would seem that what it takes is a culture that supports experimentation, and a willingness to invest the necessary resources into creating the best possible user experience regardless of whether a system was developed in-house or purchased from a vendor.

Girl Develop It

While moving ahead with our Treehouse tutorials, Jenifer and Jackie each signed up for in-person workshops through Philly’s Girl Develop IT. Girl Develop It is a international organization with chapters in most major American cities that offers hands-on instruction for women who want to learn web and software development. Jackie attended an amazing day-long workshop on user experience back in the Spring and was excited to see workshops cropping up on the same coding skills we were working through in Treehouse.

photo of Jenifer at the GDIT's PSD to HTML day at the Impact Hub
GDIT’s PSD to HTML day at the Impact Hub

In May, Jenifer attended Girl Develop IT’s “PSD to HTML” project day at Philadelphia’s Impact Hub.  The workshop started with a Photoshop image of a web site design mocked up by a client.  This was a real world scenario – an actual small business website idea that was presented to the web developer for realization.  Attendees spent the afternoon using the Photoshop file, css, and html to code the site, learning along the way the many challenges of taking this approach.  PSD to HTML had apparently been a common workflow in the past – especially at the time when many image effects weren’t yet possible through CSS or across browsers- but has more recently faded from the forefront while mobile-first, responsive design approaches have taken prominence.  Treehouse.com takes that position, but reminds that detailed Photoshop mockups are still essential as a tool for working with clients and when working in large teams.  Jenifer’s experience at the workshop was that she was able to successfully realize far more of the site using my knowledge gained from a few weeks of tutorials than expected.  The support from the GDIT instructors was great but also revealed the challenge of keeping up with the latest and working across multiple areas of habit and specialization.  One instructor would advise on solving a problem in a way informed by her experience working with SASS (a css preprocessor) and another comes along and suggests a solution informed by her work with another framework or grid system like Bootstrap.  In that sense, it was a little like trying to learn a language from a group of teachers who each speak a different dialect.  But it was also a good illustration of the remarkable versatility of CSS.  Overall, it was a great experience and Jenifer intends to participate in more GDIT events in the future.

photo of class
JavaScript for Beginners

In July, Jackie attended a two-week JavaScript for Beginners class at Indy Hall to supplement the Treehouse track in front-end web development. The class was targeted at beginners who had a solid knowledge of HTML and CSS, but knew little about JavaScript. The instructor started by introducing the fundamentals of JavaScript and instructing students on how to create some very basic page interactions. Each session built on the previous and ended with a session on the JQuery library. This class was Jackie’s first real experience with any programming language (she’d incorporated scripts into websites before, but had never written any JavaScript on her own). It was challenging, and she was surprised at how little previous knowledge of HTML/CSS help with understanding the underlying principles of programming. At GDI, though, there was support throughout the sessions from the instructor as well as 3-4 helpers assisting attendees. Learning a programming language like JavaScript is an endeavor that will take time and practice. Working through the JavaScript tutorials in Codecademy after the class was a helpful refresher for the basics of the GDI class. All in all, taking a class with GDI is highly recommended (men are welcome too!).

Girl Develop It logo
And you even get a cool sticker to take home!