primom - a mobile interface for primo - igelu 2012
Post on 30-Jun-2015
156 Views
Preview:
DESCRIPTION
TRANSCRIPT
Bodleian Digital Library Systems and Services (BDLSS)Bodleian LibrariesUniversity of Oxford
April 14, 2023
Primom: A Mobile Interface for Primo
Masud KhokharApplications DeveloperBodleian LibrariesUniversity of Oxfordmasud.khokhar@bodleian.ox.ac.uk@mkhokhar
Andrew IsherwoodICT DevelopmentInformation ServicesAberystwyth Universityaai@aber.ac.uk@andrewish
April 14, 2023Primom: A Mobile Interface for PrimoPage 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.
Oxford’s 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
April 14, 2023Primom: A Mobile Interface for Primo
Page 3
April 14, 2023Primom: A Mobile Interface for Primo
Page 4
Why develop for mobile?
April 14, 2023Primom: A Mobile Interface for Primo
Page 5
More and more users are using their smart phones/tablets to 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 Don’t care about webapp vs native as long as the experience is fast
and responsive Not always true (we love our iPhones)
Primo’s mobile interface?
Out of the box ------------
CSS based ------------
Doesn’t play well with local customizations ------------
Network traffic issues ------------
Not tested enough -----------
April 14, 2023Primom: A Mobile Interface for Primo
Page 6
OOTB Ex Libris CSS
April 14, 2023Primom: A Mobile Interface for Primo
Page 7
For some customers, works quite nicely.
OOTB Ex Libris CSS
April 14, 2023Primom: A Mobile Interface for Primo
Page 8
For Oxford, not so nicely...
What about custom developments?
April 14, 2023Primom: A Mobile Interface for Primo
Page 9
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
April 14, 2023Primom: A Mobile Interface for Primo
Page 10
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?
April 14, 2023Primom: A Mobile Interface for Primo
Page 11
Common feelings..
We don’t 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, what’s next? How to develop it (responsive vs framework)? How to link it with Primo functionality? How to maintain it? (growth and requirement changes)
April 14, 2023Primom: A Mobile Interface for Primo
Page 12
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...
April 14, 2023Primom: A Mobile Interface for Primo
Page 13
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
April 14, 2023Primom: A Mobile Interface for Primo
Page 14
First attempt – jQuery Mobile
April 14, 2023Primom: A Mobile Interface for Primo
Page 15
First attempt – jQuery Mobile
April 14, 2023Primom: A Mobile Interface for Primo
Page 16
First attempt – jQuery Mobile
April 14, 2023Primom: A Mobile Interface for Primo
Page 17
First attempt – jQuery Mobile
April 14, 2023Primom: A Mobile Interface for Primo
Page 18
First attempt – jQuery Mobile
April 14, 2023Primom: A Mobile Interface for Primo
Page 19
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.
April 14, 2023Primom: A Mobile Interface for Primo
Page 20
Collaboration – Oxford and Aberystwyth
April 14, 2023Primom: A Mobile Interface for Primo
Page 21
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
April 14, 2023Primom: A Mobile Interface for Primo
Page 22
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)
April 14, 2023Primom: A Mobile Interface for Primo
Page 23
Oxford – Since the re-think
April 14, 2023Primom: A Mobile Interface for Primo
Page 24
Oxford – Since the re-think
April 14, 2023Primom: A Mobile Interface for Primo
Page 25
Oxford – Since the re-think
April 14, 2023Primom: A Mobile Interface for Primo
Page 26
Oxford – Since the re-think
April 14, 2023Primom: A Mobile Interface for Primo
Page 27
Oxford – Since the re-think
April 14, 2023Primom: A Mobile Interface for Primo
Page 28
What’s 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).
April 14, 2023Primom: A Mobile Interface for Primo
Page 29
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)
April 14, 2023Primom: A Mobile Interface for Primo
Page 30
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, Facebook’s biggest mistake was that “we burned two years not working on mobile”. (Forbes, 9/11/2012)
April 14, 2023Primom: A Mobile Interface for Primo
Page 31
Thank you
Questions?
April 14, 2023Primom: A Mobile Interface for Primo
Page 32
top related