Camping out in the Big Apple

The library unconference is fast becoming a fixture in the assortment of library-related gatherings. Having been a facilitator of two previous Library Camps in Ann Arbor and Darien, it was a pleasure to let someone else do all the heavy lifting and simply enjoy the fruits of their labor! Many thanks to Stephen Francoeur, Linda Rath, Louise Klusek (the kind folks from Baruch), Rachel Watstein (IBM), and Steven Kaye (Accenture).

Attendance at Library Camp NYC was quite large (100+ people!) which certainly tested the open spaces concept. The 14th floor of Baruch’s vertical campus building was well equipped to handle the crowd, however, and a number of really great sessions were spawned. The only drawback of the unconference format, I’ve found, is that I always find myself wanting to be in two or three places at once. You can take a look at how the final program evolved on the event wiki.

During the first session, I attended ‘Library 2.0 show and tell‘ which focused a lot on wikis and some other specific technologies. The group also touched on topics such as how to get staff/patrons to buy-in to new services. I also attended a session led by OCLC’s Eric Hellman on their grid services concept (xISBN, etc). I think I enjoyed the final session the most, however, which was a discussion about cataloging and Weinberger’s Everything is Miscellaneous.

A great day, and I’m sure we’ll see more library camps in the future.

Risky Business

Guy Kawasaki keeps his ear to the ground and often picks up on some very interesting material. This week, he evaluates an article in Stanford Magazine, “Effort Effect.” Read the article first, then his take on it. Interesting.

For my part, this bit of the article popped out at me:

Students for whom performance is paramount want to look smart even if it means not learning a thing in the process. For them, each task is a challenge to their self-image, and each setback becomes a personal threat. So they pursue only activities at which they’re sure to shine—and avoid the sorts of experiences necessary to grow and flourish in any endeavor. Students with learning goals, on the other hand, take necessary risks and don’t worry about failure because each mistake becomes a chance to learn.

It was obvious to the researchers which students fell in which category. I wonder if some of the work we do is sometimes as transparently “safe” to our users. For instance, I can tell right away when a web site, web service, or even just a piece of software is crappy. And I’m not necessarily talking about quality, but the needs it addresses, its distinctiveness.

“Playing it safe” crops up everywhere, though. The ‘B’ movie, for instance, is a vintage plucked from the vine of mediocrity, except for when it’s not. In those cases, they are works of great imagination, draped in an ironic patina of ‘B-ness’.

We’re all guilty of playing it safe at one point or another. I certainly am, and even in some of the work I was doing in my last days at AADL felt like B-work: not by anyone’s behest, but simply because we all get into ruts.

So it’s within that striation of thought that I applaud the SirsiDynix decision to punt on Horizon. You’ve got to admit, that took a serious gut-check. I can’t, in good conscience, join the cacophony of hems and haws over this news after, myself, espousing the need for vendors to tear it down and build it back up. This is precisely the type of thing we ought to be expecting from our vendors every ten years or so. I wish them the best of luck with Rome.

eXtensible Catalog Partners Meeting

XC Partners MeetingI just got back from Rochester, New York, where it’s cold and snowy. But that fact didn’t do anything to put a chill on the impeccably hosted eXtensible Catalog partners meeting. The eXtensible Catalog (XC) is to be, potentially, an open-source product that arises from a grant given to the University of Rochester by the Andrew W. Mellon Foundation. The grant itself is up for renewal in April 2007.

From the XC blog:

The principal investigator for the project is Ronald F. Dow, the Andrew H. and Janet Dayton Neilly Dean of River Campus Libraries, with co-principal investigators David Lindahl, director of digital initiatives; Jennifer Bowen, head of cataloging; and Nancy Fried Foster, lead anthropologist for the libraries.

This first year of grant funding represents “Phase I” of the XC project, and one of the goals of that phase is to secure a number of partnerships for going forward. That’s where the partners meeting came in. In addition to getting a lot of valuable feedback from a group of about 30 people from a wide range of institutions, the XC project hopes to get a number of people to sign on to help the project itself with anything from consultation to actual development.

As a library geek, I had a hard time wrapping my mind around the scope and structure of the project until David Lindahl gave a technical overview of how the development process might work. XC is to be a highly modular project centered around a common framework. This will, hopefully, allow XC to be a ubiquitous product that works with any ILS. It would be up to the XC partners (and perhaps, ultimately its users) to create the “plug-ins” necessary to make it work with a previously unsupported system.

I have to say that I really like the proposed structure that Dave talked about, and as I mentioned at the meeting, there are a number of projects that are currently striving to do similar things, but none of them have really thought to harness the potential of the open source “community” like XC does. So I believe XC has a higher potential for success than some of the other projects like it.

That said, a number of very good issues were raised at the meeting. Foremost among them was the issue of governance. Who will ultimately be responsible or the project? Will it stay in Rochester? I think this issue, more than all others, is what made many of the other potential partners nervous. That, and the fact that the XC project is still very early on in the design phase. Justifying a commitment to the project is not easy for a lot of libraries. That, of course, makes my blood pressure rise. When I think about the fact that the prospect of working together with other libraries on a long-term project is a hard sell to library administrators, I get mightily frustrated. Librarians seem to always want the “sure thing” even if it means settling for mediocre. I’d much rather take a risk and go for the holy grail. After all, it’s just time and money, right?

Not that I’m saying that XC is the holy grail. Not at all, but, like I also mentioned at the meeting, XC is a lofty, idealistic vision for library catalogs. I like idealism. If we, as libraries, can get past our sanctimonious insistence that lofty goals are for careless upstarts, we might actually wind up with something we want, for a change.

So, who knows what the future has in store for XC. It’s one of those projects that will succeed beyond all our wildest dreams if it gets the support it needs. Or it could die on the vine due to lack of attention and care. Kind of like the rest of us.

Chatting with Jon Udell and Ed Vielmetti

I had a great chat with Jon Udell and Ed Vielmetti last week during a recorded podcast that Jon has made available on his new blog. Jon is a great podcaster–he has the ability to make a session feel like a conversation and less like an interview which makes for a very interesting and enjoyable experience as one of the participants.

Anyway, we talked about superlibrarians and superpatrons within the context of Eric Von Hippel’s notion of “lead users.” This is an area that should be of great interest to libraries–specifically, how do we identify those lead users, then enable them to mash-up, remix, and create services, tools, and content. We can learn a great deal more from our users than we are currently used to and Von Hippel shows us how in a series of online videos and papers.

I mostly talked about PatREST–its history, what it is, where it might lead, and my decision to build a patron-oriented API on top of our existing ILS. Ed shared some interesting insights into his perspective as a consumer of PatREST and other non-standard distribution channels made available on AADL’s system.

Dynamic item recommendations

So today, at AADL, we quietly rolled out dynamic item recommendations. That means that when you're looking at a catalog record, you'll be given Amazon-like recommendations ("Users who checked out this item also checked out these library items..").

This little feature uses data from our opt-in patron history system. Since we've been offering that system for about a year now, we've been able to accumulate over 300,000 data points. This is another great example of how to reuse your existing data to enrich use experience. Like I've said before, you need to use the data you have to its full potential--even if it's not the data's primary purpose.

Ok, so let's look at the nuts and bolts of this. I was able to cobble this together with two SQL queries. Actually, I was able to get the same results with a single nested query, but for some reason, non-cached results took upward of ten seconds, so splitting the query seemed like the right thing to do.

Anyway..

PHP:
  1. $bibinfo = $xmlopac->get_opac_data($bnum);
  2. $mattype = $bibinfo[mattype];
  3.  
  4. $rec_uids = db_query("SELECT DISTINCT(uid) AS uid FROM iii_hist_data WHERE bnum = '$bnum'");
  5. $subcrit = '';
  6. while ($rec_uid = db_fetch_array($rec_uids)) {
  7. if ($rec_uid[uid] != $user->uid) {
  8. $subcrit .= $rec_uid[uid] . ', ';
  9. }
  10. }
  11. $subcrit = substr($subcrit, 0, -2);
  12. $rec_bibs = db_query("SELECT DISTINCT(bnum), COUNT(bnum) AS total FROM iii_hist_data WHERE mattype = '$mattype' AND bnum != '$bnum' AND uid IN ($subcrit) GROUP BY bnum HAVING count(bnum)> 2 ORDER BY RAND() DESC LIMIT 5");
  13.  
  14. if (!db_num_rows($rec_bibs)) { return; }
  15. while ($rec = db_fetch_array($rec_bibs)) {
  16. // Do your business here
  17. }

So basically, you can see what's happening here. First I get an array of all the other users who have checked out this item. Then I get a list of items that three or more of those people have checked out and display it randomly (so it's not always the same list). Pretty easy, of course you need to grow that data before it becomes useful. 300,000 records makes the results pertinent, 300 does not.

If you're curious, head on over to AADL's catalog and test it out.. you might stumble on something new.

The next step, of course, in all this SOPAC business is to try to determine how check-out patterns are changing and whether it will have an impact on collection development.