Framework vs Application

Question: are we building a framework or an application?

Opening:

  • have always said intention is a framework that enables/accommodation of multiple types/implementations of hydra heads
  • problem that has arisen: where do you draw the line at what is in framework and what is beyond (& responsibility of different heads; code not in the framework). example: a tool that handles zooming of JP2K used in multiple heads but not in core hydra-head, so let that be something we use, but not included in the code.  lots of grey areas.
  • example: Drupal is a framework for building applications, Rails is also a framework for building applications.  
    • Rails: strong foundation for buiding an app from scratch, but make no assumptions about users, their data, or interfaces (left open ended).  
    • Drupal (contrast): has notions of UI, data, etc. provides basic tooling for achieving within their context; more of the stack handled by the framework & people get up to speed much quicker, but reduces flexibility for repurposing code/reimagining the space
    • there is no out of the box Rails app for kicking the tires, but there is for Drupal.  What would/should work for Hydra?

Discussion:

  • One flaw in Hydrangea: we knew it was for OA, people tried to make it something it wasn't; should we have a be all & end all hydra-head sample, or make a lot of little different examples.
  • Concerns with application development vs framework development: upgrade path problems, user support problems. Doesn't mean out of the box apps are bad, but is it setting unreasonable expectations? 
  • Concrete example of difference: Basecamp as Rails app - couldn't download Basecamp but could download Rails and build a clone.  Community fins solutions, and those solutions don't have to be part of maintained core.
  • Jonathan: always thought framework was the way we were going; others noted some confusions.  Applications exist as separate projects, even with their own communities? Then what is the relationship between core framework and the organization.
  • Hydra has always had definitions and models that are recommended, for the sake of interoperability.  Does/should a framework care about view-level stuff?
  • Raise the issue of introducing the "product" in the library/higher-ed/GLAM space...are most people expecting applications, and should we be focused on them or others (more tech-enabled)?
  • Remember the question of why Hydra vs Islandora (or Drupal); we don't want to be in competition
  • If we build a framework, then make a demo and one demo only  (discussion of using demo versions of existing production apps) 
  • People need to see things, but if we have a project-managed demo app, then we have Hydrangea again
  • Most institutions already want a sandbox of their own apps (dev to test to production is what most have now -- add a sandbox at the production level)

Answer: we still do want to focus on framework, not application. institutions can spin up sandbox instances of production applications. (UVa will do this with next Libra build: we will will get a sandbox in place that will be the production build, wiped of data each night)