Gemification Update from June '13 Partners

Why gemify?

  • to enable reuse of software

What does this mean?

  • make functions smaller to allow recomposition of heads 

How to do it?

  • extract: refactor
  • transform
  • reconnect: reincorporate / test st against orig. code base in orig environment...
  • implement elsewhere: has it been adopted / integrated by anyone else? (e.g., incorporated into new heads)
  • create test suite
  • create docs

Create columns on the table: 

  • Extracted?
  • Transformed?
  • Reconnected? 
  • Implemented Elsewhere?
  • Test suite? <y/n>
  • RCov testing (% coverage)

What happened in the last quarter? 

  • sufia genericModels
  • fcRepoAdmin
  • collectionBuilder (PSU taking from NU, but differences in modelling b/t MODS and RDF)
  • BL

Still need to: 

  • reincorporate sufia genericModels into ScholarSphere
  • need pro-tips, best practices, etc. on "how to gemify" --> especially for Rails newbies
  • add columns to the gemification table
  • create a "how to write good tests" course module 
    • Jeremy says he'll serve as testing quality concierge / oracle. Send him questions and he'll advise
    • testing for AF is particularly challenging
  • x-link with the list in the wiki for "Gems that Are Being Used"
  • keep table up to date. How?
    • modify one column to be "who wants this?"
    • modify one column to be "who can work on this?"
    • modify one column to be "who is working on this?"
  • be sure to announce that you're diving into a gem
  • be sure to review the list at Hydra Partner meetings
  • Rick will massage table further