Primom - A first attempt at a mobile interface for Primo. Prototype developed for Bodleian Libraries and presented at IGeLU 2012.
1 of 32
Download to read offline
More Related Content
Primom - A mobile interface for Primo - IGeLU 2012
1. Bodleian Digital Library Systems and Services (BDLSS)
Bodleian Libraries
University of Oxford
Primom: A Mobile Interface for
Primo
Masud Khokhar
Applications Developer
Bodleian Libraries
University of Oxford
masud.khokhar@bodleian.ox.ac.uk
@mkhokhar
October 4, 2014
Andrew Isherwood
ICT Development
Information Services
Aberystwyth University
aai@aber.ac.uk
@andrewish
2. Primom: A Mobile Interface for Primo October 4, 2014
Page 2
University of Oxford Libraries
University of Oxford
More than 100 libraries
Hold collectively approx. 11.1 million catalogued book stock
470000+ ebooks
50000+ electronic journals
460+ databases
66591 patrons (University and Library)
The Bodleian group is the second largest library in the UK after
the British Library
Ex Libris products in Oxford
Primo, Primo Central, Aleph, MetaLib, bX, ARC and SFX.
3. Oxfords Primo (SOLO)
Two environments (Production and Test with plan to have a
Dev soon)
Primo topology
One BE server, two load balanced FE servers, two SE servers, one
NFS server, and one DB server.
All virtualized except for the DB server
Approx. 8M records.
Multiple sources
Aleph, MetaLib, Fedora and more in future
Primom: A Mobile Interface for Primo October 4, 2014
Page 3
5. Why develop for mobile?
More and more users are using their smart phones/tablets to
Primom: A Mobile Interface for Primo October 4, 2014
Page 5
access library resources
Exponential growth in the users
Approximately 20% growth every 2 years in the UK for the last 4
years.
Attitude towards web based resources
People expect a mobile/tablet ready version
Disappointed when everything looks the same as desktop version
Dont care about webapp vs native as long as the experience is fast
and responsive
Not always true (we love our iPhones)
6. Primos mobile interface?
Out of the box ------------
CSS based ------------
Doesnt play well with local customizations ------------
Network traffic issues ------------
Not tested enough -----------
Primom: A Mobile Interface for Primo October 4, 2014
Page 6
7. OOTB Ex Libris CSS
Primom: A Mobile Interface for Primo October 4, 2014
Page 7
For some customers, works quite nicely.
8. OOTB Ex Libris CSS
Primom: A Mobile Interface for Primo October 4, 2014
Page 8
For Oxford, not so nicely...
9. What about custom developments?
Primom: A Mobile Interface for Primo October 4, 2014
Page 9
10. Network Traffic
Surely interfaces can be improved, you just need to work on
your CSS
What about network traffic though?
A quick analysis on Firebug reveals:
Opening http://solo.bodleian.ox.ac.uk takes 57 requests
Doing a search for oxford takes a further 66 requests
Network latency can be a major issue
Almost all instances of Primo launch 25+ network requests for
home page and 35+ network requests for brief search
Primom: A Mobile Interface for Primo October 4, 2014
Page 10
11. Network based issues
Asynchronous vs synchronous calls?
Your mobile search interface should not hang/die if:
Your PDS is down (SSO check)
Google or Amazon images is down
Some third party tool you use is down
etc, etc
Similarly, not everything is required to be loaded after a search.
Load only what is required.
What about caching?
Primom: A Mobile Interface for Primo October 4, 2014
Page 11
12. Common feelings..
We dont have enough resources to invest in mobile even
though we would like to have a mobile webapp, an iPhone/iPad
app, and an Android app.
And then after 10 days, you face an angry reader using Kindle Fire.
How will we ever maintain so many developments, probably
best to develop just a webapp.
Or if you can afford it, ask an external company to develop native
apps (which has unfortunately its own set of problems)
We want to develop a webapp, whats next?
How to develop it (responsive vs framework)?
How to link it with Primo functionality?
How to maintain it? (growth and requirement changes)
Primom: A Mobile Interface for Primo October 4, 2014
Page 12
13. Blockers
Responsive layouts vs frameworks
HTML5/CSS3 (e.g.Twitter bootstrap)
Frameworks (50+, we will talk about jQuery mobile and Sencha
Touch 2)
Primo/LMS API Documentation
Almost non-existent till developers showed keen interest
Still quite poor
Confusing X-services, Web services, RESTful APIs, Plug-ins, what
to use when and how?
Some good work being done by Barak Hecht but more is needed
a lot more...
Primom: A Mobile Interface for Primo October 4, 2014
Page 13
14. Primo mobile development in Oxford
Oxford started working on this informally about a year ago
We face similar issues, not enough resources, not enough time
We tried looking into iOS development but stopped
Steep learning curve
Only impacts Apple users
Selected jQuery mobile to experiment with
Low learning curve as we work with jQuery anyway
Fairly stable framework
Does quite a lot of things nicely
Primom: A Mobile Interface for Primo October 4, 2014
Page 14
15. First attempt jQuery Mobile
Primom: A Mobile Interface for Primo October 4, 2014
Page 15
16. First attempt jQuery Mobile
Primom: A Mobile Interface for Primo October 4, 2014
Page 16
17. First attempt jQuery Mobile
Primom: A Mobile Interface for Primo October 4, 2014
Page 17
18. First attempt jQuery Mobile
Primom: A Mobile Interface for Primo October 4, 2014
Page 18
19. First attempt jQuery Mobile
Primom: A Mobile Interface for Primo October 4, 2014
Page 19
20. Collaboration Oxford and Aberystwyth
Primo-Discussion-List questions about APIs lead to a
collaborative effort
Quick to start on collaborative working
Some issues persisted
Lack of quality API documentation
Busy schedules
New issues emerged
Multi-lingual needs
Complexity of Oxford against Simplicity of Aberystwyth
The idea to develop a webapp that all Ex Libris customers can
use everything controlled by setting files, etc.
Primom: A Mobile Interface for Primo October 4, 2014
Page 20
21. Collaboration Oxford and Aberystwyth
Primom: A Mobile Interface for Primo October 4, 2014
Page 21
22. Collaboration Oxford and Aberystwyth
Did anything change?
A lot in the background
Extreme control over every parameter
We soon realised that there are limits to what we can do with
limited screen space
Facets?
Page numbers?
Search details?
Number of results per page?
Resulted in a re-think of the whole idea
Primom: A Mobile Interface for Primo October 4, 2014
Page 22
23. Oxford Since the re-think
Change in framework
From jQuery mobile to Sencha Touch 2
Pure MVC, far more responsive, the possibility of generating native
apps (with native device APIs), ease of using HTML5 local storage,
etc
And it looks nicer (full support for theming with Sass and
Compass)
Considering Ex Libris was asked a lot of CSS based questions, may
be its time to look at Sass or Less (reduced CSS size)?
Change in development methodology
Agile (Functionality based sprints)
Primom: A Mobile Interface for Primo October 4, 2014
Page 23
24. Oxford Since the re-think
Primom: A Mobile Interface for Primo October 4, 2014
Page 24
25. Oxford Since the re-think
Primom: A Mobile Interface for Primo October 4, 2014
Page 25
26. Oxford Since the re-think
Primom: A Mobile Interface for Primo October 4, 2014
Page 26
27. Oxford Since the re-think
Primom: A Mobile Interface for Primo October 4, 2014
Page 27
28. Oxford Since the re-think
Primom: A Mobile Interface for Primo October 4, 2014
Page 28
29. Whats missing?
My Account (Loans, Holds, Requests, Fines, etc)
E-Shelf
Facets (Can we afford them in a mobile app?)
Modern browser and platform detection
Feature detection
Modernizr.js
Balancing act (between functionality, screen sizes, processing
power, network traffic, memory, etc).
Primom: A Mobile Interface for Primo October 4, 2014
Page 29
30. Does it stack up?
Reminder: Primo OOTB for SOLO:
Opening http://solo.bodleian.ox.ac.uk takes 57 requests
Doing a search for oxford takes a further 66 requests
With our jQuery mobile prototype, opening up the main page
takes 13 requests and 76KB of data.
A search for oxford takes a further 2-10 requests (depending
on how many different icons are being loaded)
Primom: A Mobile Interface for Primo October 4, 2014
Page 30
31. Does it stack up?
With our ST2 prototype, opening up the main page takes 11
requests for 223KB of data
A search for oxford takes a further 2-7 requests (depending
on how many different icons are being loaded)
All further requests take 1-2 network requests
Because of aggressive local storage based caching
You do the math
And if it matters, Facebooks biggest mistake was that we
burned two years not working on mobile. (Forbes, 9/11/2012)
Primom: A Mobile Interface for Primo October 4, 2014
Page 31
32. Thank you
Questions?
Primom: A Mobile Interface for Primo October 4, 2014
Page 32