Islandora Past, Present, and Future Past... · 2014-01-15 · Islandora Past, Present, and Future...

Preview:

Citation preview

Islandora Past, Present, and FutureNigel Banks - discoverygarden Inc.

Melissa Anez - Islandora Foundation

Islandora Camp New York, Nov 2013

Brief HistoryIslandora started as an in house project as a front-end for Drupal 5 and Fedora 2.

Drupal was to be one of many frontends for Fedora, we talked about using Moodle, OCS, OJS and other open source PHP applications.

Early on ● Limited Drupal

specific code in favour of pure PHP

● Mapped callbacks in ISLANDORACM xml stream.

Drupal 7As time went on we realized we could not realistically support more than one frontend and Drupal was the only one we were really using.● So we leveraged as much Drupal Code and as

many Drupal principles as made sense (hooks, alters, menus etc.)

Drupal 8Fairly extensive rewrite of Drupal.Includes:● Integration with Symfony2● Use of Twig for templating (by the creators of Symfony)● Using YAML for configs (instead of the database)● More RESTful● HTML5● Views in core

Drupal 8 - Symfony2Symfony is a PHP web application framework

The move to Symfony will require some changes to modules.● Hooks will mostly wrap Symfony concepts (like events)● Modern OOP approach● hook_menu will use Symfony routing● PSR (coding standards and conventions, namespaces

etc.)● Composer (Dependency Manager)

Drupal 8 - ThemesNew Template engine called Twig● Twig is fast● Twig has good IDE support● Twig is more secure● Twig is easy to useNew layout system● Site builders define layout (instead of

themers)

Drupal 8 - configuration● Info file is now YAML● Module configuration can now be stored in

YAML files (much better for developing, testing, deploying)

● YAML is human readable and machine parsable (allows comments as well)

● Standard (not Drupal specific)

Drupal 8 - REST● No longer assumes every request is for a complete page.● Easier to expose content in different formats (json, xml

or something else)● Easier/better communications between systems● Easier to make custom mobile apps

More info

Drupal 8 - IslandoraSimilar to the move to Drupal 7 we will probably wait for the dust to settle a little before we spend too much time on Drupal 8. We’ll have to wait for required modules to be released etc.

Islandora on Drupal 8 most likely will only support Fedora 4.

Drupal 8 Release Cycle

Fedora and IslandoraFedora had some changes between version 2 and 3, but they were not that significant.● Changes in package names required the Drupal filter to

be updated

● Fedora 3 brought in the CMA (content model architecture) but we were already simulating a lot of that with our ISLANDORACM stream in Fedora 2.

Fedora 4Fedora 4 is basically a rewrite that allows Fedora to leverage Modeshape and it’s underlying dependencies like Infinispan.

Modeshape has several rest apis include JSR-283 and it’s own Modeshape api.

Goals for Fedora 4According to the wiki link above the main goals for Fedora 4 are:

● improved performance, enhanced vertical and horizontal scalability

● more flexible storage options● features to accommodate research data management● better capabilities for participating in the world of

linked open data ● an improved platform for developers—one that is easier

to work with and which will attract a larger core of developers.

Islandora and Fedora 4● DiscoveryGarden has a developer working

part time with the Fedora Futures project.● UPEI was involved with some early sprints● We hope to have a beta Islandora release

soon after the Fedora 4 beta release.● Duraspace wiki

Challenges for Islandora● Security

○ Drupal servlet filter (currently extends Fedora3.x code)

○ XACML (will it exist? will the vocabulary be the same?)

● Discovery○ Islandora uses ITQL and SPARQL for generating collection views of

objects. These will all have to be converted to using SPARQL.

Triplestore will probably live outside of Fedora 4

○ Indexing in Solr (no gsearch for Fedora 4)

● Transactions (add support in islandora)

see the wiki for more details

Fedora 4 Current StatusNotes on Wiki

You can help! There is much to be tested and documented and although Fedora 4 is solidifying, there is still room for new use cases.

Project Direction

History● Developed at UPEI in 2006

● Core team at discoverygarden/UPEI Library

● Need to meet the diverse needs of digital asset management in all areas

● Key requirements: ○ Change all or some components

over time○ Integrate with other systems

HistoryAtlantic Innovation Fund grant from 2010- 2013 funded development and staff for the project, ending in Summer 2013.

Present DayIslandora FoundationA soliciting non-profit found in July, 2013 to steward the Islandora project and future development of both the software and the community.

Member supported:● Partners - $10,000● Collaborators - $4000● Members - $2000

Islandora FoundationPartners:

discoverygarden and UPEI

Islandora FoundationCollaborators:

University of Connecticut, York University, LYRASIS

Islandora FoundationMembers:

University of ManitobaUniversity of Saskatchewan

American Philosophical SocietyUniversity of South Carolina

DigiBESS (CNR-Ceris)

Islandora Community● Foundation Board

○ Staff

● User groups○ Google Groups

■ Users■ Devs

○ Camps

● Committees○ Committers○ Roadmap

● Volunteers○ Code Reviewers○ Testers○ Developers

Foundation Board● Board:

○ Mark Leggott (Chair), University Librarian, UPEI○ John Eden (Treasurer), discoverygarden Inc.○ Jonathan Green (Secretary), discoverygarden Inc.

● Staff:○ Melissa Anez - Project & Community Manager○ 2014/2015 hire - Programmer/Release Manager

User Groups● Google Groups

○ Users - 471 members○ Devs - 172 members

● Camps○ 2014: Berkeley, London, Toronto, Denver

■ 20 - 40 attendees■ Community presenters

Committees● Committers

○ A dozen developers with “push” access to GitHub○ 27 regular Committers Call attendees

■ Every other Thursday at 2:00 EST via Skype

● Roadmap Committee○ 10 members - from UPEI, dgi, IF, York, U of

Connecticut, LYRASIS, and U of Toronto

Volunteers● Code Reviewers

○ Release Manager○ Component Manager○ Reviewer

● Testers○ Any user who wants to download

RC code/VMs to try out. Aimed at end users.

● Developers○ Anyone who contributes modules,

tools, forms, or any other code back to the community.

○ New CLA to accept contributions under a GNU license.

○ New Software Acceptance Procedure to define the steps.

The old way...

The new way...

http://xkcd.com/1195

Questions?

Recommended