Speed & Simplicity: why Suffolk Libraries chose to build their own self-service app.
To the uninformed, public libraries might seem to be an anachronism from a pre-digital age, but the truth is that they are evolving rapidly and embracing cutting-edge technology to provide vital community services.
We recently worked with Suffolk Libraries to develop a Progressive Web App that used several new technologies (Service Workers & Serverless Architecture), that radically improve speed, security and the user experience.
Leon Paternoster is Digital Manager and Deputy Head of IT at Suffolk Libraries, which, in his own words, means that his remit is “anything running over the internet and on a screen.” We talked to Leon about his latest project, to design, build and deploy a new self-service system for libraries across the county.
DOOTRIX: Would you mind outlining the project and the rationale behind it?
LEON: What Dootrix did for us was to build a website which our customers could use to self-serve. So it is all the kind of transactional stuff that libraries do, which is just a fancy way of saying returning books, checking them out, and it tells customers what is on their account, and how much they do or don’t owe in a really simple way.
You can buy existing, all-in-one solutions from a bunch of current suppliers, but we felt what they offered was often too expensive and were too over-engineered for what we needed and weren’t particularly user-friendly.
We chose a website rather than an app, which I guess is the original or innovative aspect of this project. Most of this kind of software is normally a client; you would install on your Windows machine, and you would have that client to update and manage over time.
“We wanted a website, partly because it is easier to manage; all the updates are done centrally. Dootrix can push an update and all of the machines get it as soon as they refresh their browser. Which is much easier for us to manage. There is no client for us to manage at all. So all we have to do is just point a browser to that website.”
It also means it frees up what we can actually put the app on. As long as the device has got Chrome browser on it, we can put the kiosk app on it — anything really — in theory a phone, a tablet, or you could even put it on a PC with a touchscreen monitor.
From a personal point of view, I liked the idea of doing this because it is quite a new, original approach, and it kind of tied in with something that is happening in Web, which is my area, called Progressive Web Apps, which I was interested in and kind of just fits this project.
We did the procurement process with the Suffolk County Council commissioner, and he was great and really helpful, and it kept the whole procurement thing quite light actually, which is often quite a problematic thing for public sector organisations. We were able to do that because we are divested from Suffolk County Council, so they fund us, but we choose how we get to run the service — within the framework set by Suffolk County Council — and that includes IT and the website. So we have a fair amount of freedom to do interesting new things.
DOOTRIX: Tell me what a Progressive Web App is as opposed to a regular website.
LEON: Well, it is kind of a catchall phrase, but Progressive Web App is basically a website. It just needs to meet some conditions: they are that it is served over https, so it is secure, which a lot of websites are anyway; but the more interesting side of it is that it should work, in some way, offline, and it will do that using a technology called Service Workers, which, basically, stores stuff on the device for you. So, if you do lose your internet connection, there is something there that is still useable.
It is a really new technology and it is still pretty rare, so it just struck me as a really good use for this because we have traditionally had connectivity problems in some of our more rural locations.
In the case of this web-app, if the tablets go offline, they will still store all the transactions that are made by customers. Once the tablet comes back online, it will sync it back up to the server. That is, essentially, what a Progressive Web App is — a kind of a website with a few more security and, most importantly, offline features. Traditionally it is easier for a client to handle offline stuff, but now we have got this PWA technology, we can do that within the website as well, so you get the best of both worlds. So we have the website itself, but we also have some of the functionality that makes it behave more like an actual app.
DOOTRIX: How important was the UX and, as you said, the user friendly aspect of the app?
LEON: It is actually vital to it, as it is with anything like this, even self-service in a supermarket, it is a similar sort of thing. It is a transactional process, and although it is quite simple — you are checking a book in or you are checking it out — it has to be designed properly, and you have to think about the environment where the transaction takes place, otherwise it is really frustrating to use.
We felt that the existing providers are able to build these technical things that talk to the LMS (Library Management System) and do all that kind of thing, but, on the UX side of things, we didn’t think they were quite as good. So this was another aspect of the project is that we wanted to make sure that the UX side of it was really, really good.
We have 44 libraries across Suffolk, and there are different types. There are some that are very remote, and they may well be very affluent parts of the county. The users there tend, although not always, to be older, and they come into the library often to check books in and out, and you might call that a more traditional use of libraries. But we often find, especially during the summer holidays, lots of children using them with their parents or carers. Yes, there is a certain demographic, but you will see in any one hour, anyone from a six-year-old child using it to an 85-year-old person. So obviously we need to design for that.
What came out of (the design discovery phase) was what the users really want from it — which is to just get in and out as quickly as possible; return the books and get on with their day.
The design phase of the build was also to validate this idea of building a Progressive Web App as well, so there was a technical side to it, to see what exactly was possible on various devices in terms of barcodes, scanners, cameras and all that kind of stuff, just to see if it would actually work and how we might go about actually building it, because this is the first thing we did.
DOOTRIX: Was there a bit of hardware wrangling that needed consideration?
LEON: Yes, luckily, barcode scanners are very simple devices. They are, essentially, just keyboard devices. They don’t really need a driver or anything, so you can plug them into pretty much anything. But there are physical requirements you do need to think of.
We did want to be able to run it on any hardware we chose. The standard one was a tablet, and we just felt that this, in terms of cost and what our customers are used to and the size, the tablet was actually a really good general approach within libraries themselves. So we ended up choosing Windows tablets, purely because they were the only ones we could find that were cheap and had USB ports to plug the scanner into.
DOOTRIX: And I presume you are working to a pretty tight budget on that as well.
LEON: Yes, absolutely. Again, this is another reason for us doing the web app. In terms of the actual design of the software, plus our hardware costs, which we sourced ourselves, it was still a lot cheaper than actually just going out to a provider and ordering 70-odd off-the shelf kiosk units. So we did it for financial reasons as well.
We got exactly what we wanted and we got something that we think is better than what is out there at the moment.
We are always looking for all the stuff that is quicker and more secure for customers. That is our overreaching kind of aim. Actually, that was the main benefit of the self-serve kiosks.
I was in one of the libraries this morning, talking to people using them and they were commenting about the app, and they were saying, ‘The one thing you do really notice is it is so much quicker than the one that we had before.’ Although it doesn’t sound particularly exciting, that, in terms for our library-users, is probably the single most important thing when you are trying to check books in and out.
It is such a basic kind of function, some of the customers almost have muscle memory for using it. So they are used to pressing the buttons in a certain order and scanning the book or their cards. So we are constantly working on actually making it a bit more frictionless for more established customers.
Again, it can be an age thing, but I don’t want to generalise too much. We find our young customers look at it and go, ‘Ah,’ especially children; they love it because it is a tablet, so they see it almost like a game, and they deal with it really well.
We had a kind of beta release of this in four libraries, an early version, and I have done lots of observation and we know that often, older people are scared of breaking the website somehow. You can’t, but that is what their kind of fear is. It transfers to these whole service machines as well. So, yes, we wanted to be aware of that in design, but I still think we have a bit of work to do to make it more frictionless, especially for those sorts of customers.
“That is another major advantage of designing and building our own app. We can see these kind of issues or Dootrix can observe themselves as well, and say ‘This needs improving, can we improve it?’ and it just gets pushed out to the website and it is done. It is a lot quicker and easier kind of agile way to improve the software.”
A critical and innovative part of the project was the use of ‘Serverless’ Infrastructure, and our Technical Director Kevin Smith has written about why Serverless is a solution that more and more people are using to cut costs and improve efficiency. You can read that here.
James Robinson, one of our Software Engineers on the project, has also written a detailed technical walk-through of how you can build a similar Progressive Web App. ‘How to create a simple REST web-service with Node, AWS Lambda and the Serverless Framework’.
As Leon explained, the use of Service Workers was a really important component of the project, and in this short video, another of our Software Engineers, Neil Sweeney, talked our team through how they work.
Leon wrote on his personal blog about the lessons learned from developing their own self-service software: ‘ User testing isn’t as good as user using.’