Numerous comments from today's posts.

As to Jonathan on complexity, resources and "we've got it working". Indeed you 
have and it is a cool looking UI and functionality behind it. I did not mean to 
imply that you had not got a working system, or that anyone else could not do 
it (see Dan's comments on his available JavaScript). The important word in what 
I wrote was "scale". Many of the content providers, ILS vendors, and even 
enterprise software producers who have come to use Muse as a third party 
middleware platform have done so after they have started on this type of work. 
(I include federated search, known item enrichment, record harvesting, record 
conversion and the like as the same type of work here.) They got it written, 
running and started expanding. Then they came to see us once the number of 
Sources reached about 2 dozen. At this point they found that the work of 
maintenance (Karen's concern) was actually starting to take whole numbers of 
FTE programmers, and it was becoming costly. The projections to hu!
 ndreds of Sources were scary financially, yet there was/is demand for the 
capability. So they came to us to take advantages of economies of scale where 
we can build and fix...and fix...and fix... just once for all our partners. 
That way it works. It also works on a small scale with well known, well defined 
Sources. (More horror stories can wait for the pub.)

Integration with ILS's (we have our system integrated with two, two more were - 
but have gone their own way, and are developing with a fifth one, so some 
experience): Generally this is technically challenging because the ILS 
catalogue is display software which is built to handle results from a single 
source - the search engine of the catalogue. Thus integrating other results 
into the "data stream" is just not possible, without development. So you have 
to go about it some other way.
 
        First Possibility is to layer the extra functionality on top of the 
OPAC. Then this code becomes the OPAC and a lot of work has to be done to   
replicate the OPAC functions correctly down to the underlying ILS. And some of 
the ILS vendors have a hissy fit about this - just saying. 

        Second Possibility is to do what Dan has done and make the extra 
functionality a display level action. In other words create a Browser based    
client which does what you want in terms of aggregating records. Again, our 
experience has been that this does not make ILS vendors feel all warm       and 
cuddly, but there is not a lot they can do about it - they do not own the users 
browsers. A version of this approach is what Umlaut does (as        I 
understand it - which could be very wrong :-( ) where the additional 
functionality is sever based, but is an adjunct to the main OPAC.

        Third possibility is to go right to the backend and put the integration 
between the ILS and the search engine for the OPAC. Thus the OPAC talks         
to the federator, and it queries the OPAC database and any other Sources, 
presenting all the results as one stream, as if from the ILS database. 

Surprisingly (maybe - it was to me a long while ago) the easiest way to do this 
- with tech help - is the third. And it seems to be the one which gives the ILS 
vendors the least qualms. (Some caveats there - so see the reply to Karen's 
concerns below.) With most ILSs running as client-server architectures (as far 
as their DB/search engine are concerned), there is a natural break point to 
make use of. But this is not just a bit of universally applicable JavaScript - 
it is unique to each ILS, and only makes sense in a dedicated installation with 
the technical resources to implement and maintain it, or in a situation like 
ours, where we can make use of that one integration to add access to thousands 
of extra sources, consequently fitting all (so far) user requirements.

Karen's point about approaching Vendors and their concern about stability of 
Source(s). (Well, a lot of comment from others as well, but she started it.) 
This is a concern and, as I said above, one of the reasons why vendors work 
with us. We can guarantee a stable API for the vendor ILS whatever the vagaries 
of the actual Source. And I think that would be vital. The ILS vendors are not 
interested in crafting lots of API or parsing code and fixing it continuously. 
So OL would have to guarantee a stable API, which met minimum functionality 
requirements, and keep it running for at least a dozen years. We are still 
running the first API we produced some 10 years ago as there are deployed 
systems out there which use it and they are not going to be replaced any time 
soon. The users lose out on new functionality (a lot of it!), but cannot or 
will not pay for the upgraded ILS. A subsidiary advantage of this "stable third 
party supplier" scenario is that Karen's last query ("graceful!
  degradation?") is our problem, not the ILS's. We have to handle that and 
notify the ILS, and it just passes on (or quite often doesn't) the message to 
the user that there is no data from Source "X". And then we have to fix it!

This is long and probably boring to many (apologies), but the actual 
functionality is, I believe, exactly where the web is going. It is, after all, 
the real time use of linked data and all those relations across the web and 
between catalogues (even if they are implicit). As Jonathan, I see this as 
being as exciting now as when we first started it in '97, but we still have to 
evangelise about its benefits. Until you can show the user, in their own data, 
exactly what it can do for them, then they become excited.

Peter

p.s. Karen, If you want to, contact me off list to talk about talking to ILS 
vendors.

> -----Original Message-----
> From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Karen 
> Coyle
> Sent: Thursday, June 16, 2011 9:29 AM
> To: CODE4LIB@LISTSERV.ND.EDU
> Subject: Re: [CODE4LIB] JHU integration of PD works
> 
> Quoting Jonathan Rochkind <rochk...@jhu.edu>:
> 
> > I think the vast majority of libraries can make javascript-only
> > changes to their OPAC interfaces, which is all Dan's approach
> > requires. Even III libraries do that.
> 
> So maybe what is needed is a very clear, step-by-step set of
> instructions on how to do this? And, of course, how to un-do it.
> 
> Question: what happens when the script fails, e.g. when the OL API
> does not respond? How graceful is that failure?
> 
> kc
> 
> >
> > IF they have any programming staff at all with a bit of time and are
> > willing to do such hacks. That might be an 'if' that's not met. But
> > it's not a huge technical challenge.
> >
> > So that leaves the answers being:
> > a) get libraries to change their attitudes and realize that being a
> > library in the 21st century means having a bit of programming staff,
> > just like being a library in the 20th meant having a bit of
> > cataloging staff.
> >
> > OR
> >
> > b) Get vendors to include an IA/OL integration feature out of the
> > box. (Which only meets IA/OL and not the next thing you're going to
> > want to integrate too, of course).
> >
> >
> > Which of these is harder/less-likely to happen, left as a judgement
> > to the reader.
> >
> > If I were a vendor, I too would have that reluctance KAren mentions,
> > to rely on an external service that may not be stable (both in sense
> > of uptime and in sense of the API not changing without warning in
> > the future), from a third-party service I have no agreement with.
> > Perhaps if IA would sign service level contracts with vendors (with
> > or withotu payment from the vendor), that would make things
> > smoother. Where they promise not to change their API without X
> > amount of notice, and/or commit to certain uptime.  Not sure that's
> > really feasible for IA though.
> >
> > Jonathan
> >
> > On 6/16/2011 11:44 AM, Karen Coyle wrote:
> >> Yes, I know about this, and I think this is great ... for Evergreen
> >> users. My concern is how we get it out there to the majority of
> >> libraries who aren't on an OS platform and/or cannot make changes
> >> to their UI. As I think your post demonstrates, what we need is to
> >> get through to the system vendors and get them to implement this
> >> kind of linking. I intend to chat up vendors in the exhibits at ALA
> >> to find out what this means to them. I suspect they are reluctant
> >> to rely on a system or feature that may not be stable or persistent
> >> (a reasonable reluctance when you have thousands of installations),
> >> so then the question becomes: how can this be made to work?
> >>
> >> kc
> >>
> >> Quoting Dan Scott <dsc...@laurentian.ca>:
> >>
> >>> (Apologies in advance if this looks like crap, I hate trying to
> >>> reply in context in GroupWise)
> >>>
> >>>>>> On Wed, Jun 15, 2011 at 10:55 AM, Karen Coyle <li...@kcoyle.net> wrote:
> >>>> Quoting Eric Hellman <e...@hellman.net>:
> >>>>
> >>>>
> >>>>> What are the reasons that this sort of integration not more
> >>>>> widespread? Are they technical or institutional? What can be done by
> >>>>> producers of open access content to make this work better and
> >>>>> easier? Are "unified" approaches being touted by vendors delivering
> >>>>> something really different?
> >>>>
> >>>> I've been struggling with this around the Open Library digital texts:
> >>>> how can we make them available to libraries through their catalogs?
> >>>
> >>> You're aware of the recent addition of the OpenLibrary Read API,
> >>> which is meant to simplify exactly this problem, right?
> >>>
> >>> The official announcement was at
> >>> http://blog.openlibrary.org/2011/06/03/announcing-a-new-read-api/
> >>> ; http://ur1.ca/4g5bd describes how I integrated it into Evergreen
> >>> with a few hours' effort (mostly helping to debug the new
> >>> service); the official documentation is at
> >>> http://openlibrary.org/dev/docs/api/read and I augment those docs
> >>> in the latter half of the presentation I gave last week (available
> >>> in plain text, html, and epub formats at
> >>> http://bzr.coffeecode.net/2011_olita/ ).
> >>>
> >>>> When I look at the install documentation for Umlaut [1](I was actually
> >>>> hoping to find a "technical requirements" list), it's obvious that it
> >>>> takes developer chops. We're not going to find that in a small,
> >>>> medium, or often even a large public library. It seems to me that this
> >>>> kind of feature will not be widely available until it is included in
> >>>> ILS software, since that's what most libraries have.
> >>>
> >>> The OpenLibrary digital editions enhancement approach I took in
> >>> Evergreen was about 100 lines of JavaScript (around here:
> >>> http://ur1.ca/4g5cm ), most of which could probably be cloned
> >>> (under the GPL v2 or later) to any other library system from which
> >>> you can scrape ISBNs or other identifiers (LCCN, OCLC, or
> >>> OpenLibrary IDs).
> >>>
> >>> Note that the Evergreen-OpenLibrary integration hasn't been merged
> >>> yet, but the branch is there and will hopefully make its way into
> >>> core Evergreen soon.
> >>>
> >>
> >>
> >>
> >
> 
> 
> 
> --
> Karen Coyle
> kco...@kcoyle.net http://kcoyle.net
> ph: 1-510-540-7596
> m: 1-510-435-8234
> skype: kcoylenet

Reply via email to