Facilitator's Outline - RepoCamp/ohsu2018 GitHub Wiki

Here's a cheat-sheet for Mark, Mike, & Tom 😀

The first two days of class are focused on guided experiences where participants get a chance to do hands-on exploration, but with whole group feedback. We should aim to keep segments to 25-40 minutes in length with some physical activity for 3-5 minutes between each segment. For many of the exercises, it's great to ask a volunteer to be secretary for the room and type up front while the room coaches them; then everyone breaks into pairs and re-constructs the exercises.

The third and fourth days are run as 3 or 4 person team mini-sprints. We'll break folks into these teams at the beginning of the day Wednesday.

MONDAY

  • 8:10 Gather in hotel lobby
  • 8:15-ish Leave as a group for class
  • 9am Welcome, Logistics, Introductions
    • Overview of camp - Mark
    • Logistics - Mark, Mike, or Tom (15 minutes)
      • Schedule and breaks
      • Meals & Coffee
      • Group dinner
      • Group photo & Tour
      • Sharing contact info
    • Goals for Monday - Mike or Tom (5 minutes)
      • Get connected to WiFi
      • Get things up and running, deposit some stuff
      • Get us your GitHub id (hand in a post-it)
      • Get on Samvera Slack - #repo-camp
      • Have systems ready to start lessons on Tuesday morning
      • Write down 1-2 learning goals on a post-it
  • 9:45-ish 3-minute stretch break
    • Introductions & Learning Goals - Tom or Mike (35 minutes)
      • Your name
      • Your institution
      • What you're hoping to learn
      • Something unique or interesting about you for us to remember
  • 10:20-ish
    • Overview of remaining Monday morning - Mark, Mike, or Tom (10 minutes)
      • Make sure you're on Slack
      • Distribute thumb-drives and get VM running - Initial Vagrant Setup
      • Work on Rails-for Zombies at your own pace until Lunch ~12:15
    • Rails for Zombies & VM setup
  • 12:15-ish to 1:45 (sharp) - LUNCH
    • Need to figure out if we can lock the room, or if folks need to take stuff with
    • Be back in class by 1:40pm
  • 1:45pm Hyrax Stack Walkthrough (30 minutes)
    • Get a volunteer typist
  • 2:15-ish Hyrax Walkthrough Redux (Pairs - 25 minutes)
    • Switch pairs
    • Go through Steps 1-3 in pairs
    • Work through exercises in pairs
  • 2:40-ish 3-minute stretch break
    • Get a volunteer typist
    • Review exercises as a group (20 minutes)
  • 3:00-ish Samvera's in the Wild - Mike, Mark, & Tom (40 minutes)
    • Examples
    • Q & A - probably interspersed with the demos
  • 3:40-ish 3-minute stretch break
    • Set up test suite (30 minutes)
      • Switch pairs
      • Get volunteer typist
      • Group run-through
      • Work through as pairs - everyone should have the test suite running by the end of the day
  • 4:20-ish Daily Wrap-up
    • Go over Common Tasks to shut down the VM
    • Group thoughts & questions so far
    • Preview of Tuesday
    • Camp announcements etc.
      • Office hours 8-9am Tuesday Morning

TUESDAY

  • 8:00am Office Hours
  • 9:00am Class starts
    • Group review of Day 1 - one thing you learned (repeats OK) (15 minutes)
    • Overview of Day 2 (10 minutes)
    • Review Common Tasks
  • 9:20am -- ???
    • Feature Spec for Adding a work
      • Switch pairs from day one; Get a volunteer driver.
      • Feature spec breakdown exercise as a group (10 minutes)
      • Failing feature spec. Why test-first? (10 minutes)
      • Add field to model and form---re-enforce test-first at unit level and add new property. (5-8 minutes)
      • Do exercise in pairs (15 minutes)
      • Group discussion (15 minutes)
  • Break
  • ???? -- 11:30am
    • Lesson 6. pt 1
  • 11:30 -- 1:00
    • Lunch
  • 1:00 -- 2:30
    • Tour
  • 2:30 -- 2:35
    • Housekeeping
      • Head count for group outing Wednesday evening
  • 2:35 -- ???
    • Lesson 6, pt 2.
  • Break
  • ??? -- 4:00
    • Lesson 7
  • 4:00 -- 4:20
    • 12 minutes group model exercise
    • 2*4 Report back
  • 4:20 -- End
    • Wrap-up
    • Team dev tomorrow.

WEDNESDAY

  • 8:00am Office Hours

  • 9:00am Class Starts

    • Housekeeping
      • Wednesday evening plans (5 minutes)
      • Thursday Lunch orders (3 minutes)
      • Too Fast / Too Slow / Just Right (3 minutes)
    • Insights from Wednesday (30 minutes)
  • 9:40-ish

    • Introduction to Collaborative Development (20 minutes)
    • PR Demo https://github.com/samvera/hyrax/pull/2958
    • Next three sprints (~2-3 hours each) (5 minutes)
      • Weds AM Release/Sprint Planning - build a backlog, prioritize work, divide & conquer
      • Webs PM Standup & keep developing + 5 minute teach outs
      • Thurs AM Production Overview, Standup, wrap up development
      • Thurs Noon - working lunch - demo prep
      • Thurs PM - demos (10 minutes each) + Q & A
  • 10:00-ish

    • Break into teams
    • Introductions & Sprint planning
    • Develop
  • 10:45-ish 15min Break

  • 11:00-ish Continue development

  • 12:20-ish Lunch

  • 1:30 Stand-up & Continue development

  • 3:00 15 min Break

  • 3:50 Teach-backs - Pull Requests, Contributing, Continous Integration, Code Reviews+Commit Messages

    • Teams prep (20 minutes)
    • Teams present (4x5 minutes each)
  • 4:30 Daily wrap-up (5 minutes)

  • Team Development Backlog

    • Change the banner image or logo
    • Change the application name
    • Add git-sha footer https://curationexperts.github.io/playbook/every_project/git_sha.html
    • Configure background jobs using sidekiq
    • Add another metadata field
    • Add date slider
    • Add LDAP authentication (big - follow recipe)
    • Add a badge presenter for items deposited in the last x days/hours
    • Add a controlled vocab for
    • Add cloud upload (browse everything)
    • Set up an Image work type
      • with pan & zoom viewer
    • Set up an Audio work type
    • Set up an ETD work type (see Mahonia, Laevigata, Alexandria models)
    • Add a simple CSV importer
    • Enable full text indexing
    • Add a new facet (browse) field
    • Customize which fields are searched
    • Customize notification messages
    • Configure two-step mediated deposit
    • Configure Hydra Role management to support admins
    • Use config/role_map.yml to set up an administrator
    • Set up Travis-CI for your test suite
    • Add an additional Resource Type

Wed PM - group dinner

THURSDAY

  • 9:00am Class Starts
    • Housekeeping
      • How many books did you buy at Powell's
      • Thursday order of operations (3 minutes)
    • Insights from Wednesday (30 minutes)
  • 9:40-ish Samveras in the Wild
  • 10:00-ish Team development
    • Group Standup
    • Rotate Pairs
    • RC1 upgrades
    • Take a break around 10:45-11:00
  • Noon - Lunch & Demo Prep
    • Demo
      • What features have you delivered - live demo (practice your presentation & outline)
      • What features are in-flight or do you plan on working on next
      • What insights did you have
      • Make sure you can connect to the big monitor during lunch (who's machine are you going to use)
  • 1:15 Demo!
  • 2:15 Samvera in production
  • 2:45 Q&A
  • 4:15-ish Wrap-up
    • Survey
    • Get on e-mail list - Ask questions - use the guidance you'd like as a librarian
    • Lurk on the tech call
    • Thank you