Archive for the ‘librarything for libraries’ Category

Friday, January 11th, 2008

Crazy ideas for LibraryThing for Libraries

One big question around LibraryThing these days is “Where do we take LibraryThing for Libraries?” There is an obvious answer–direct user participation. Right now, LibraryThing for Libraries provides services that “arise from” user generated data without bringing that sort of interaction to the OPAC. So we provide tag-based searching based on LibraryThing’s almost 30 million tags, but patrons can’t tag books in their catalog. Nor can patrons assemble book lists, write reviews and so forth.

We’re clearly going this direction. We’re not sure that patron tagging is a big deal, but there are things to do here. And that’s all I’ll say about that!

But what else can we do? We have interesting data, an interesting technology, Casey Durfee, and the will to act on small, interesting ideas quickly. Direct us!

So here are four ideas I’ve been having. I wonder what the people—and particularly the 37 LTFL libraries—think of them:

Idea 1: Widgets. We could give libraries an easy way to let their patrons create library widgets for their blogs and Facebook pages. These would be little “what I’m reading” widgets–covers and titles–not unlike the popular LibraryThing widgets–but they would integrated with the library catalog. Clicking on a book would take you to the catalog, of course. The library could also add a “Add to my widget” buttons to their catalog pages.

I think widgets are a great missed opportunity for libraries. Although RSS is supposedly “Web 2.0,” there’s something backwards about libraryland’s embrace of this static, pushy technology. Although the vendors have all rushed to implement it, not that many people really want to turn an OPAC search into an RSS feed and insert a catalog search into their otherwise human and enjoyable feed reader. (And feed readers are still a cool fringe activity–a step above drinking absinth.) But people love to show off and tell their friends what they’re doing. As the saying goes, patrons don’t want “your” content, their want “their” content. Widgets would be perfect there, and the data and hooks LTFL has puts us in an excellent position to do this.

Idea 2: Super-simple catalog API. We could provide an extremely simple API to individual LTFL library catalogs–just checking whether a library has a book, and maybe returning the ISBN, title, author, the direct URL and maybe related editions in the library. That’s basically all we know, but it’s 95% of what API developers want and 900-times easier than trying to figure out Z39.50 and MARC.

I’m not sure libraries would do anything with this, but I think some patrons would. Lightweight, fast APIs are red meat to mashups. Also, it’s only a day or two of coding. I like projects like that.

Idea 3: Library Bookmarklets. Along similar lines, we could provide bookmarklets and Greasemonkey scripts that would help patrons link their library in with the rest of their online book experience. So, for example, a patron is on an Amazon page thinking about buying a book. They click their library bookmarklet and up pops a little box that says their library has the book, and links to the page.

Idea 4: Put libraries in LibraryThing itself. Right now, LibraryThing tells you if a book is available in a small number of independent bookstores and seven or eight swap sites. But it doesn’t tell you if a library has it. For most libraries, we can’t know. But we do know for LTFL libraries.

Five ideas is enough for now, I think.

As mentioned before, Abby and I are at ALA, boothless and fancy free.

tim@librarything.com
abby@librarything.com
Tim’s cell: 207 272-0553

PS: I left on—multiple tag searching and library tag clouds. We don’t need your feedback on those; we already think they’re good ideas.

Labels: librarything for libraries, ltfl

Wednesday, January 9th, 2008

LTFL at 33 34 36 / Abby and Tim at ALA

Casey has just updated our list of LibraryThing for Libraries customers. We’ve hit 33 libraries, which is wonderful. (See the full list.) With no sales force and only half a developer, that’s fantastic. LTFL is clearly starting to matter in the library world. We will be adding resources to it accordingly, and look forward to finding out more about what current and potential libraries want from it.

Not coincidentally, Abby and I are going to ALA Midwinter in Philadelphia. We didn’t buy a booth; they’ve expensive and tie you down a lot. Instead, we’ll be going to as many talks as we can, meeting with people and describing cheesesteaks as a “business expense.” If you’re at ALA and want to chat in passing or over a beer, let us know.

Contact details:
tim@librarything
abigail@librarything.com
cell: 207 272-0553 (note area code 207, not 208, as first posted!)

UPDATE: Thirty-FOUR. As Casey whooped: “I totally outsold Jesus” (source). Then Casey dropped dead.
UPDATE 2: Thirty six. Holy smokes.

Labels: ala, ALA midwinter, librarything for libraries, ltfl, ltfl libraries

Monday, December 3rd, 2007

MARCThing: A simple, self-contained MARC and Z39.50 application

Over the past couple of weeks, LibraryThing has been rolling out major improvements to our cataloging system—a new system for retrieving and parsing book information we’re calling “MARCThing.”

MARCThing is a major advance for LibraryThing. We’ve sunk months of development time into it, but we’re not going to keep it to ourselves. We will be releasing all the code for non-commercial use in libraries and elsewhere.

When the dust settles, LibraryThing members will be able to draw on nearly 700 data sources worldwide, with greatly improved foreign character support and better data manipulation behind the scenes. With MARCThing underneath we will be able to introduce many new features and to reach a truly global audience. But we are confident that developers outside of LibraryThing will find many other, equally compelling uses for MARCThing, and make useful changes and extensions.

What it is. When I was given the task of improving LibraryThing’s cataloging system and other involving library data, I immediately thought of Solr, one of the most influential pieces of software to come out in the past couple of years. The big idea behind Solr is that it provides a “magic box”—an easy, self-contained interface to some very powerful but complex technology, the Lucene search engine. Solr hides the messy details of Lucene from the developer and provides all sorts of extra goodies in a self-contained package. The net result is you can instantly stick an extremely powerful search engine into your project with almost no work. This combination of power and ease-of-use has quickly made it a developer favorite, and spawned all sorts of interesting projects that never would’ve come out without Solr.

I wanted my own magic box that would handle the two main protocols used by libraries to transfer cataloging data, MARC and Z39.50, without anyone having to go into the details of how they work. And since I didn’t want to have to find or build another magic box, ever, I wanted something that could be easily used from any programming language.

Writing it was pretty easy—I used Django for the web part, Pymarc for MARC, and PyZ3950 for the Z39.50 support. With a good software library, working with Z39.50 or MARC records isn’t hard. The hard (or at least time-consuming) part of MARCThing was tracking down servers and dealing with oddball cases. There are many lists of Z39.50 servers out there, but the data is often incomplete, incorrect, or out of date. When you do find a Z39.50 server, oftentimes it’s non-standard in some way, or only has limited functionality. So the process of connecting to libraries using Z39.50 is fraught with guesswork and manual fiddling. That’s bad. The whole point of a standard should be to free you from guesswork.

How to use it. Using MARCThing is simple. Either send it some MARC records or what Z39.50 server you want to search and what you want to search on, and get back XML (or a variety of other formats) that you can use in applications without having to know a lick about library cataloging. All the messy details (and there are a lot of them) are hidden from view. Everything just works. You don’t need to know what a nonfiling indicator or a use attribute is, or the difference between MARC8 and UTF-8. You just need to know how to make an HTTP request.

What I hope is that this inspires allows people not in the library world to do cool things with library data. It’s sad that working with library data is such a hassle — there are so many underused resources out there. I won’t go too much into the technical problems with Z39.50 and MARC, but I do have a recommendation for anybody involved in implementing a standard or protocol in the library world. Go down to your local bookstore and grab 3 random people browsing the programming books. If you can’t explain the basic idea in 10 minutes, or they can’t sit down and write some basic code to use it in an hour or two, you’ve failed. It doesn’t matter how perfect it is on paper — it’s not going to get used by anybody outside the library world, and even in the library world, it will only be implemented poorly.

Open source plans. LibraryThing was already the only major cataloging site that used any library data. (The rest use Amazon’s data exclusively, a severe hurdle to book lovers in the US and an absolute barrier to those in most other countries.) It took us a long time to develop, and we have limited resources. We are not eager to give our competitors such a valuable tool — they can get their own library geeks. At the same time, we are eager to encourage non-profit use and to license its non-competing commercial use for a token amount.

We’re thinking of releasing the code under the Creative Commons Attribution-Noncommercial-Share Alike license, but it will depend on what people want to do with it. If you were bitten by a radioactive librarian and suddenly gained the power to search 700 libraries worldwide, what would you do?

Stay tuned; code is coming soon!

Labels: django, librarything for libraries, marcthing

Tuesday, October 30th, 2007

LibraryThing for Libraries: October

October was another good month for LibraryThing for Libraries, with 7 new libraries coming on board.

First up on the list is the Los Gatos Public Library in California. Although a very small library, they show yet again that you don’t need to be big to innovate. They’ve promoted LibraryThing for Libraries extensively on their blog; they’ve even made a cool little video on YouTube of the widgets in action.

Library number two is the East Brunswick Public Library in New Jersey. Much more than most libraries, EBPL has really positioned themselves as a part of their community. You can see this in their offering of notary and passport renewal services at their libraries and their involvement with the community TV station, EBTV. I like seeing libraries that try to integrate themselves into their patrons’ daily lives like that. For an LTFL action shot, here’s “Treasure Island” in their catalog.

Next up is the Institute of Technology Tallaght, Dublin, our second library in Ireland. Along with our first one, the Waterford Institute of Technology, they’re a part of our nefarious plan to get every Irish engineering major hooked on LibraryThing.

Number four is the Kingston Information and Library Service in Melbourne, Australia. They have the honor of being our first Australian library, but we’ve got a bunch more on the way, starting with number five, the Australian Tax Office. The ATO’s running LibraryThing for Libraries on their intranet only, so I don’t have a demo URL for them. I’d like to thank them for coming up with a righteous javascript hack to make our widgets work with SirsiDynix’s new EPS/Rooms system.

Arlington Heights Memorial Library in Illinois is next up. I’ve already had a couple of other prospective customers ask to have their installation “look like Arlington Heights.” You can see why — they’ve done a great job blending LibraryThing for Libraries into their III catalog.

Finally, GMILCS is a consortium of academic and public libraries in New Hampshire. GMILCS runs SirsiDynix’s Horizon Information Portal catalog. It’s been cool to work with so many of the same people I knew when I used to support Horizon Information Portal for Dynix. Tim will be giving a talk about LibraryThing for Libraries at the CODI, the annual SirsiDynix user conference tomorrow along with Colleen Medling of the Salt Lake County Public Library. It should be a good one, so if you’re at CODI, check it out.

Along with picking up pencils, spatulas, and other stuff with vendor names on them, and talking to a lot of people in denim shirts, annual user conferences are always a good place to learn about new ways to make the software you’re stuck with do new things. That’s really valuable when change happens so slowly in the library software world; I remember helping GMILCS out when they first brought up their current catalog back in 2002. 5 years is a lifetime on the internet, and the gap between the speed that enterprise library software moves and the speed the web moves only seems to be getting bigger and bigger. So it’s vital for software vendors to make catalogs that can be modified, extended and customized both internally and externally. Customers shouldn’t have to wait for years for the shiny next generation product to get new features. It’s not just up to the vendors, though; customers need to keep finding ways to improve their out of the box systems (like David Pattern’s interesting new HIPPie project), library managers need to create a culture where change is embraced, and services like LibraryThing for Libraries need to keep adding more new functionality to existing systems. Legacy library software is inescapable — major upgrades will always be a gigantic chore, and even minor changes to the core of the system will often have huge repercussions on dozens of staff and thousands of patrons. That should not keep libraries from constantly making improvements to their public interfaces.

Labels: ahml, arlington heights, ato, australian tax office, codi, east brunswick, ebpl, gmilcs, iii, itt tallaght, kils, kingston, librarything for libraries, los gatos, ltfl, sirsidynix, slco

Tuesday, September 25th, 2007

LibraryThing for Libraries: Richland County, Cal State – Channel Islands and San Francisco State University

Richland County Public Library

San Francisco State University (source)

Cal State University – Channel Islands (source)

LibraryThing for Libraries just passed another milestone: we now have too many customers to keep track of in short-term memory.

Our first new library is the Richland County Public Library. We’re really excited to have them on board, since they’re the biggest public library we’ve worked with so far—at nearly three million checkouts a year. They’re doing a lot of simple yet innovative things, like offering reference via instant messaging and having a kid-friendly website. Of course, they have a blog too. I have a soft spot for large public libraries, having worked in one for several years and having lived in big cities with great library systems (Denver, Salt Lake City and Seattle) for most of my life. We hope to be adding many more large public libraries in the coming months.

Our second library is the San Francisco State University library. With around 30,000 students and four million items owned by their library, they’re a big one too. They’ve got one of the best- looking and easy-to-use library websites I’ve seen (and I look at a lot of them – occupational hazard). Their electronic resources librarian did an excellent presentation on LibraryThing for Libraries a few weeks back.

Our third library is Cal State University – Channel Islands, located in the beautiful area between Los Angeles and Santa Barbara. They’re our first Voyager customer, and we’d like to thank them for helping us work out how to make Voyager work with our widgets. They’ve also volunteered to be our latest data source for book searching.


Photo credits: (1) Courtesy Richland County Public Library. (2) CSUCI bell tower by Flickr:AIBakker (CC Attribution-NonCommercial-NoDerivs 2.0). (3) Library by Flickr:relic (CC Attribution-NonCommercial-NoDerivs 2.0)

Labels: csuci, librarything for libraries, rcpl, richland county, sfsu

Monday, September 17th, 2007

Evilness — Opposition — Policy and Procedure

Someone recently called LibraryThing for Libraries out over our terms and privacy policy. Guess what? They were right to do it!

The policy was vague. It didn’t describe what we actually use library data for and how we use it. It gave us potential room to do bad things.

Well, we don’t want the room. We’ve always treated our user and library data carefully, and we always will. So we’ve written it again, this time as a straight-jacket.

You can read the full text here, but the Cliff’s Notes version is this:

  • We don’t collect any data from or about library patrons;
  • We only use a library’s data to enrich their own catalog
  • We’re not allowed to change the policy suddenly

If anyone feels we’ve left anything out, let us know.

Labels: librarything for libraries

Tuesday, September 4th, 2007

LibraryThing for Libraries: Randolph County, Bowdoin and Clarement Colleges

Bowdoin College (source)

The Libraries of Claremont Colleges (Honnold/Mudd Library) (source)

Randolph County Public Library, Asheboro Public Library (source)

We just added three new and very different members to LibraryThing for Libraries—a public library system in North Carolina, a liberal arts college in Maine, and a collegiate consortium in California.

The first is the Randolph County Public Library, a system of seven libraries in the Asheboro, North Carolina area. On their blog, the library has described LibraryThing for Libraries as “stunning” and a “quantum leap.” We couldn’t agree more.

Randolph County is also our first public demonstration of LibraryThing for Libraries within what is probably the most widely-used online catalog, the Horizon Information Portal (HIP) from SirsiDynix. Up until now, our live libraries have all used WebPac and WebPac Pro from Innovative Interfaces. As we promised, LibraryThing for Libraries works with any library OPAC, and just great with HIP.

Check out Randolph County Public Library searches for regency fiction or the novel Eragon.

The second is Bowdoin College, located in Brunswick, Maine, just up the road from LibraryThing’s global HQ in Portland. Bowdoin is a small liberal arts college with about 1,700 students. For a small library, they are doing a lot of innovative things and have a good-looking, easy-to-use website. They’ve put in a neat little JavaScript tooltip to explain what tags are that we just might have to steal. Check out LTFL in action here and here.

Libraries of the Claremont Colleges serves Pomona, Harvey Mudd, Claremont McKenna, and several other colleges I couldn’t get into. They’re our largest collection to date, with LibraryThing providing data on over 173,000 of their titles! Reflecting the diversity of the colleges they serve, they have a wide collection of materials, from combinatorics to gender studies. The alternate editions widget is proving especially useful for academic libraries, as can be seen for this translation of the poetry of Catullus.

It’s extremely gratifying to watch how quickly LibraryThing’s data keeps growing. LibraryThing for Libraries was originally envisioned as a product for public libraries, but LibraryThing’s continued growth is making that distinction seem less relevant. We’re now up to three academic libraries, with several more in the pipeline, and we’ve even started working with a couple of corporate/special libraries.

In the three months since our first library started using LibraryThing for Libraries, we’ve gone from 17 million tags and 13 million items to 23 million tags and 18 million items. Every item and tag added to LibraryThing improves the reach and power of LTFL. It’s really cool to be involved with a product that gets better and more powerful every minute of the day.


Photo credits: (1) Bowdoin College photo by Flickr:cybertaur1 (CC Attribution). (2) Honnold Mudd Library by Jarod Hightower-Mills (Public Domain). (3) Asheboro Public Library photo by Flickr: Asheboro Public Library (CC Attribution-ShareAlike 2.0)

Labels: bowdoin, claremont colleges, librarything for libraries, randolph county public library

Thursday, July 12th, 2007

LibraryThing for Libraries: Waterford and Deschutes

Two more libraries have added LibraryThing for Libraries:

Waterford Institute of Technology (catalog) in Waterford in south east Ireland. WIT becomes our first academic library, and our first one outside the US. Apart from that, we were particularly happy to get the ball up and rolling. WIT’s David Kane and I have been corresponding for some time, and quite profitably. Long before LibraryThing for Libraries, he tried to bolt our recommendations onto the WIT catalog. His solution—functional but requred real-time scraping of the WIT catalog—threw the technical challenges of LibraryThing for Libraries in high relief. David was also intrumental in setting up my keynote at the Irish Innovative Users Group. David’s current passion is the WIT Institutional Repository, about which he gave a talk at the IIUG.

It’s good to see LibraryThing for Libraries operating in a different context. While something like romance comes up fairly light at WIT, their holdings in tags like engineering and programming dazzle, and really give our suggestion algorithms a work-out!

Deschutes Public Library of Deschutes County in Oregon. Our largest library so far! Deschutes has five branches serving 140,000 patrons, in the fastest growing area of Oregon. They have quite a broad collection, but my eye was drawn to Why cats paint : a theory of feline aesthetics, which suggests mostly cat books, of course.

Labels: librarything for libraries, ltfl libraries

Wednesday, June 27th, 2007

Bedford Public Library adds LibraryThing for Libraries

The Bedford Public Library in Bedford, TX (town, Wikipedia) has become the second library to put LibraryThing for Libraries in their online catalog.

Trying out LTFL fits with Bedford’s Public Libraries forward-looking stance, with free wifi, integration with Library ELF and other initiatives.

You can see LibraryThing for Libraries at work with books like:

Both show our “semi-FRBR” edition-combination at work—cross-linking to large-print and audio editons—and our “similar books” algorithm, for finding other books you might want to read.

We are now also able to link to tag pages:

Of course, tags aren’t the “answer,” but just another way to find things, with different strengths. If tags bring Bedford’s genre fiction holdings into high relief, it doesn’t do as good a job with Texas history as their LCSH headings.

Some technical details. Bedford Public Library is another Innovative Interfaces Web OPAC catalog, like the first, the Danbury Public Library. Our third library will be one too. So it bears reminding that LibraryThing for Libraries works with any OPAC, and no better with Innovative’s. We think it’s spreading through them because people like to have a tangible example. That or it’s the library equivalent of the Brazilian Internet Phenomenon.

Even though it was the same OPAC we took the time to make the CSS fit in perfectly with Bedford’s design–a very different green-based one. Our chief LTFL engineer, Altay, is becoming quite a faker!

Labels: librarything for libraries, ltfl libraries