Topic: Who? What? Why? When? - Answering some of the niggly development questions
Topic type:
Walter has just done a post about the software that will be required to get a Kete instance up and going. What I want to do now is answer some of the other questions around the Kete development, starting with
Why? Why are you building another digital library/repository/archive? What about Greenstone and dSpace?
Chief amongst all our there requirements is that Kete be a community built archive. Our original plan was to make the most out of our current experience and build a system based on Koha and Greenstone. We had a good look at this and very early on we could see that this was going to be difficult. This approach would work for a more traditional type collection, where one organisation publishes the collection website, but more difficult for a community built collection. Weighing up the time it would take for us to build an add on for an existing digital library or starting from scratch, we thought that building a system based on a Web Framework might be a better idea. This is where Ruby on Rails comes in.
Why Ruby on Rails? What about the other frameworks?Because all the cool kids are using it! Seriously though, we had a look around. Compared to the likes of Catalyst (Perl based framework) and the PHP based frameworks, Ruby on Rails (RoR) appears to have the most effort being put in and the most dynamic community around it. We are attracted to the idea of using a framework, rather than building everything from scratch. In particular the MVC (Model View Controller) concept, separating scripts and logic from look and feel.
What is Zebra? What are you using it for? Zebra is a full text indexing engine built by IndexData. It facilitates very fast and very powerful searching over a text based database. We want to use it for 3 reasons:
- Speed. Zebra is text based and uses indexes, so searches are much faster than over a RDBMS like MySQL
- Scalability. The Koha project has tested the Zebra engine with databases of up to 10 million records. When we go live with the Kete for Horowhenua, we will have over 10,000 images records just for starters. There are already plans for this to grow to upwards of 20,000 images in the first 6 months post launch, and this is just one item type. There will be 5 item types in Kete (Image, Audio, Video, Document and Web link)
- Compatibility with Koha. Koha 2.4 is the first version to include Zebra support via a plugin, in Koha 3.0 it will be supported natively. This means it should be easier to do a powerful federated search across Koha and Kete.