Workshops at Samvera Connect 2017

Jump to: Morning SessionsAfternoon Sessions

Registration for workshops is at...  EventBrite Workshop Registration  (Note: You are first asked to register as a Workshop or Orientation Attendee.  On the next screen, you specify which workshop you want to attend.)

Full Day Session

Using Git and GitHub for managing metadata

Using Git and GitHub for managing metadata (no new data models, we promise). This session is proposed as a two-part workshop: The first will cover a modified version of the ‘Version Control with Git’ Software Carpentry lesson, tailored for a non-developer audience, with more focus on metadata. This is typically taught as a half-day (3 hour) workshop. The second part will focus on the use of Git and GitHub in the context of the metadata workflow. We will present examples and strategies, taken from recent work by UC Santa Barbara and UC San Diego, of version control, pull requests, and automated hooks and integrations as they relate to moving metadata through a workflow and into our repositories. In addition to these demonstrations, we hope to spend a good percentage of the time available in discussion with other interested institutions and how we might leverage our collective experience to make getting our metadata into our repositories easier, more consistent, and maybe even more fun!

Presenters: Matt Critchlow, Alex Dunn, and Chrissy Rissmeyer

Audience: Part 1 - Anyone new to Git/GitHub; Part 2 - All (Metadata focused)

Equipment: Please bring a laptop with Git installed, download the sample data and follow the setup instructions, and verify that you know your GitHub email address and password. If you don't have a GitHub account, please create one.

Morning Sessions (9:00 AM - 12:00 PM)

Extending Fedora: API-X and Import/Export

Fedora is the flexible, extensible, open source repository platform that commonly underlies Samvera implementations. Fedora provides a number of core services that Samvera already uses, such as CRUD operations, versioning, and fixity, and several new, potentially useful extended services have been introduced within the last year. The API Extension Framework provides a means of binding services to repository objects in order to extend the functionality of Fedora, while the Import/Export Utility makes it easier to get content into and out of Fedora in standardized formats and packages. This workshop will introduce both of these new services and discuss how they might be used in the context of Samvera. Participants will also have an opportunity to try them out via hands-on exercises in combination with a virtual machine.

Presenters: David Wilcox, Andrew Woods

Audience: Developers, Metadata

Equipment: Participants should bring a laptop with at least 4GB of RAM to run the virtual machine. Instructions will be provided in advance, and copies of the VM will also be available on USB drives at the workshop.

Hyrax as a Publishing Platform: An Update on Fulcrum

Following the acquisition of Digital Commons / bepress by Elsevier, there’s been a surge of interest in supporting campus publishing activity in Samvera. Fulcrum is in its third year of developing a publishing platform on Samvera (and is now running on Hyrax). While we’ll keep the structure of this workshop flexible to respond to the interests of the participants, we’ll work from this basic structure:

  1. Presentation of the service model that Fulcrum is being built to support.

  2. Presentation of the features and architecture of the platform, with an emphasis on Epub support and publishing workflows.

  3. A group discussion of the kinds of publishing-related service requests attendees are hearing from their communities, in particular from those who are concerned about the Elsevier acquisition of Digital Commons / BePress, and what interest is there in a coordinated community effort around support for publishing and fully-encoded texts.

Presenters: Jeremy Morse, Melissa Baker-Young, Jon McGlone

Audience: Managers

New Rails features and how to use them

Rails, the framework that Samvera is based on continues to march forward rapidly. Best practices and features change with each release continuing to make the platform better (or at least different 😉). This workshop will go through details of some of the latest changes in recent Rails versions including ActiveJob, creation of better parent objects, the attributes API and a slew of Javascript related changes including webpack integration and what it means for the future of Javascript in Rails applications. Along the way we'll discuss changes to best practices in the broader community and how they affect your existing and new apps. We'll do lots of live examples and get into implementation details. This workshop will be divided into 3 parts for participant convenience. Parts 2 and 3 are hands on, so please bring a laptop with Virtual Box installed. We'll distribute a VM to make sure that everyone is getting a uniform experience.

  • Part 1 - Feature Overview. We'll discuss the various features and what each might be used for in the context of a Samvera app. This short pre-section will be good for those staying for the rest of the workshop, but will also be accessible to non-technical folks interested in the kinds of changes the Rails core team are making. That's right, you can bring your manager and we won't even make fun of them if they leave early.
  • Part 2 - Backend features. Here we'll dive into some changes to inheritance and what they mean for our models, go over the details of ActiveJob and touch on Rails 5.1 System Tests.
  • Part 3 - Frontend features. We'll hit the highlights of React and how to use have React widgets in your Samvera apps. We'll look at issues around mixing React and jQuery and talk through strategies for dealing with themthat. We'll also talk about Turbolinks, when you want Turbolinks vs React Router, and how Turbolinks plays with other JS frameworks. Lastly we'll cover ActionCable: and how to and when to use websockets in your application and how to connect that to the other JS components we talked about.

Presenter: Rob Kaufman

Audience: Developers, ideally with at least some Samvera or Rails experience. Those without such experience are encouraged to come to Part 1 and should feel free to decide if staying for part 2 and 3 is the right optionthing for them.

Equipment:  Please bring a laptop with VirtualBox installed. We'll have a VM available via thumb drives for those attending the workshop which we'll use to bring everyone to the same system setup quickly.

Intro to Hyrax

In this workshop we will walk through a local installation of Hyrax 2.x, generate a work type, and get a local test suite running. This will be an abbreviated version of a module usually run at Samvera Camp. Because of the limited time, this will mostly be a demo with audience participation. However, we will offer some support if you want to bring your laptop and follow along.

Presenter: Bess Sadler

Audience: Developers

Equipment: Laptops

Afternoon Sessions (1:30 - 5:00 PM unless otherwise noted)

Introduction to RSpec

As in past Connects, this will be an updated workshop covering issues and strategies when testing Samvera-based applications using RSpec. The workshop will go over testing practices for each of the principle unit components of an application (models, controllers, views, jobs, services, etc.) and also contrast that with how feature tests and written. Takeaways will include some "boilerplate" examples for each kinds of test, test suite configuration, continuous integration, and if time permits, one-on-one help with individual questions or blockers that anyone might be currently having. Having a laptop and working Hydra application is a must, even if it's just the barebones. Ideally, this workshop is geared towards current Hydra adopters or people who have just started working on applications. Someone who has never used any of Samvera's principle applications such as Curation Concerns, Sufia, or Hyrax, might have difficulty.

Presenter: Adam Wead

Audience: Developers, new and old - geared towards current adopters or people who have just started working on an application.

Equipment: Laptops are optional, but encouraged.

Dive into Valkyrie Workshop

Workshop going over the interface, configuration, patterns, and interaction points for using Valkyrie, a library to enable persisting metadata and files into a variety of different backends with a common interface.

Presenter: Trey Pendragon

Audience: Developers

Equipment: Laptop

How to Write Module-Based JavaScript with RequireJS and the AMD (Asynchronous Module Definition) Pattern


Tired of worrying about load order for your script includes? Has global namespace pollution got you down? Have you ever accidentally clobbered existing variables or functions by redeclaring them in other files? Do you want to write more re-usable, maintainable JavaScript by structuring your code in discrete modules? If your answer to some/all of these questions is yes, then maybe RequireJS / the AMD pattern is right for you!


This workshop will go through the construction of a simple RequireJS-based JavaScript app with a few modules. Some experience with JavaScript is recommended, and a laptop is highly recommended because you will be writing code. Workshop materials (in the form of download links) will be supplied before the workshop begins.

Presenter: Eric O'Hanlon

Audience: Developers

Equipment: bring laptop

Samvera Community Orientation (1:30 - 3:15 PM)

This session will be a chance for you to ask all those non-technical questions that, as someone newish to Hydra, are running through your head. What would it mean to adopt Hydra at my institution, how many people will it take, what's the real cost of adoption. How do I get involved with the Hydra Community? What will they expect of me? What should I expect of them? No serious question will be deemed too silly, or too basic, to ask! Depending on what comes up, this may be followed up by one or more unconference sessions on Thursday.

Presenters: Robin Ruggaber, Bess Sadler

Audience: People new-ish to Hydra with lots of non-technical questions to ask!

Managing Samvera-based Projects and Services (3:30 - 5 PM)

This hands-on workshop will cover tools and techniques to help managers decide whether to spin up a new Samvera repository, manage the process of building that repository, and maintain the repository once it is in production. We’ll cover the project lifecycle for migrating to Hyrax, defining roles within your team, keeping in sync with community development efforts, managing documentation, and managing user expectations and needs.

Presenters: Nabeela Jaffer, Chris Diaz, Steve Van Tuyl, Julie Rudder

Audience: Managers