Archive for the ‘Uncategorized’ Category

Thursday, January 7th, 2016

ALAMW 2016 in Boston (and Free Passes)!

Abby and KJ will be at ALA Midwinter in Boston this weekend, showing off LibraryThing for Libraries. Since the conference is so close to LibraryThing headquarters, chances are good that a few other LT staff members may appear, as well!

Visit Us. Stop by booth #1717 to meet Abby & KJ (and potential mystery guests!), get a demo, and learn about all the new and fun things we’re up to with LibraryThing for Libraries, TinyCat, and LibraryThing.

Get in Free. Are you in the Boston area and want to go to ALAMW? We have free exhibit only passes. Click here to sign up and get one! Note: It will get you just into the exhibit hall, not the conference sessions themselves.

Labels: Uncategorized

Tuesday, January 20th, 2015

LibraryThing Recommends in BiblioCommons


Does your library use BiblioCommons as its catalog? LibraryThing and BiblioCommons now work together to give you high-quality reading recommendations in your BiblioCommons catalog.

You can see some examples here. Look for “LibraryThing Recommends” on the right side.

Quick facts:

  • As with all LibraryThing for Libraries products, LibraryThing Recommends only recommends other books within a library’s catalog.
  • LibraryThing Recommends stretches across media, providing recommendations not just for print titles, but also for ebooks, audiobooks, and other media.
  • LibraryThing Recommends shows up to two titles up front, with up to three displayed under “Show more.”
  • Recommendations come from LibraryThing’s recommendations system, which draws on hundreds of millions of data points in readership patterns, tags, series, popularity, and other data.

Not using BiblioCommons? Well, you can get LibraryThing recommendations—and much more—integrated in almost every catalog (OPAC and ILS) on earth, with all the same basic functionality, like recommending only books in your catalog, as well as other LibraryThing for Libraries feaures, like reviews, series and tags.

Check out some examples on different systems here.


BiblioCommons: email or visit See the full specifics here.
Other Systems: email or visit

Labels: Uncategorized

Thursday, May 29th, 2014

New Feature: Screenshots in Book Display Widgets

We’re continually improving our fast-growing product Book Display Widgets. The newest feature we added is Screenshots.

Screenshots will allow you to take a picture of your widget and use that image to share on your webpage, Facebook, Twitter, or blog. Help your patrons find your carefully curated displays by showing off your Book Display Widgets in places where sometimes embedding Javascript isn’t a possibility.
Screenshot 2014-05-29 14.48.42
Our screenshots feature allows for much flexibility. You can: refresh your widget until you have the books you want to show; choose your image size by percentage or exact dimensions; download the screenshot image or copy a link right to your screenshot. We even include the HTML to embed the image in your website.


Screenshots in BDW


How do I find Screenshots to use them?

Underneath the preview section of each widget there is a button that says “Take Screenshot.” This will open up a new window, where you can edit your screenshot to your liking before downloading it or copying a link to the image.

For more on the different possibilities for screenshots, check out our quick how-to video, here:



Interested in Book Display Widgets for your library? Email us at


Labels: Uncategorized

Tuesday, April 29th, 2014

Book Display Widget Improvements

You have asked, and we have answered! We recently added a few improvements to our popular LibraryThing for Libraries product, Book Display Widgets: easier sizing options, a new drop-down menu for multi-widgets, and showing Book Details when you hover on an item.

Easier Sizing Options

White-space got your webpage looking a little empty? Before, re-sizing a widget on your page involved some fancy CSS footwork. But, at the request of several libraries, we have made it easy for you to change the height and width of your widget. You can see instructions here.

Before and After resizing

Drop-Down Switcher for Multi-Widgets

We have added another display option for your Multi-widgets, which allows you to choose either tabs or a drop-down switcher to change between widgets.
Try the new drop-down here:

Show Book Details When Hovering

We added an option to show our new Book Details when hovering over a book (you can also stick with clicking). One click closer to your catalog!

We will be rolling out other improvements to Book Display Widgets in the coming month. Stay tuned!

Labels: Book Display Widgets, librarything for libraries, ltfl, Uncategorized

Wednesday, March 13th, 2013

New “Check Library” button for LTFL libraries

We’ve just introduced an exciting new LibraryThing for Libraries product, called the “Check Library” button.

In brief, the “Check Library” button is a “bookmarklet” that libraries can give to their patrons. It allows patrons to check if your library has a book while on another website, like or anywhere.

We think it’s nifty and useful—a great way to boost circulation and patron happiness. We really want it out there, however, so every current LibraryThing for Libraries customer gets it for free!

60-Second Video

Here’s a 60-second video about it. It’s really all you need. The video is general, but we use the High Plains Library District’s button as an example.

Other examples:

Not Using LTFL?

The “Check Library” bookmarklet comes with LibraryThing for Libraries. If you don’t use LibraryThing for Libraries but want your own “Check Library” feature, email We’d love to give it to you, and won’t charge an arm and a leg.

Details for the Detail-Oriented

What is it? The button is a “bookmarklet,” a little button people can drag to their “bookmarks” bar.

Once you have it, you can use it anytime you’re on a page about books—Amazon, Barnes & Noble, IndieBound, and more. The bookmarklet pops up a little mini-window on the page. This tells you if your library has the book, and links directly to all the editions your library has.

Behind the scenes it’s finding the ISBNs on the page, checking them against LibraryThing’s huge editions database, checking those against your holdings, and returning a list of those holdings with links. Although geared to books, it will work with anything that has an ISBN. It works even if LibraryThing has never seen the ISBN, so long as there’s an exact match in your holdings.

How to Get It. Every LTFL library gets its own bookmarklet that’s set up just for it. To get your library’s, LTFL customers should log in and go to and click “Your bookmarklet page.” That will take you to the “get it” page for patrons.

Once you have your page, promote it to your patrons. For example, so far, Port Phillips has put it on their home page and Burdekin Library have it on their Facebook page.

Customize It. Like other enhancements, the bookmarklet is highly customizeable. Go to

Update Your Holdings. Because the bookmarklet, like most LTFL enhancements, works off your holdings, it’s imperative you keep your holdings up to date. (If it doesn’t find something it suggests the user perform a catalog search, but how many users will do that?) You can upload holdings and review your recent uploads here.

If You Don’t Want It. If you don’t want the bookmarklet, do nothing. The page you get it from has an unguessable URL. If you want to make sure it’s turned off, go to

Let Us Know. As a new feature, we’re eager to get your feedback. And if you post about it on Facebook, Twitter, or your blog, we’d love to know.

Labels: Uncategorized

Wednesday, April 11th, 2012

LTFL Library Tag Clouds

LibraryThing for Libraries has added a new feature to our Tag Browser, showing tag clouds for an entire library. Available in different “resolutions” (up to 1,000 tags), they give a nice overview of “what’s out there” in a library’s collection, and provide quick entry points to the lists for each tag.

Update: Here’s an example at the Spokane County Library System

LTFL libraries can turn the feature on and off in the Tag Configuration page. Libraries can jump right to the tag cloud with a link like:

<a href="#" onclick="LibraryThingConnector.widgets.tags.showTagCloud(); return false;">asd</a>

Labels: Uncategorized

Friday, September 9th, 2011

Sample LibraryThing data files

In addition to the 300-odd libraries using LibraryThing data through LibraryThing for Libraries, a number of major bookstores, publishers and other bookish sites use LibraryThing data, including Angus and Robertson (Australia), Whitcoulls (New Zealand), Abebooks, BookMooch and Random House. They use data including tags and reviews, and pull it from us in feed form, so they can serve it up faster than one-by-one API requests would be.

We’ve just posted the “small” versions of these files, so you can check them out. If you’re interested in using LibraryThing data—which is not expensive and can, in some circumstances, be traded for other interesting data—you will want to check these files out.

The files are here:

Here’s a description of the files, and how they work together. If you’re interested in playing with the full files, send us an email ( and we’ll get you access to them!

Frequency. We aim to refresh the files every two weeks, by the 1st and the 15th.

Small versions. Each feed a “_small” version. Open it in Firefox and you’ll see the structure clearly.

works_to_isbn_small.xml This is a catalog of our “work” ids, and of all the ISBNs that fall underneath them. The ISBNs are ordered by “count”–how many users have the ISBN.

Occasionally, an ISBN is marked as “uncertain”:

<isbn count="2" uncertain="true">0807282073</isbn>

This happen when an ISBN is “split” across two works. Often that’s because of user error. Most feed users should skip them entirely; they’re dubious and unlikely to matter. 

LT always gives ISBNs in their shortest form. That is, a 13-digit 978- ISBN will be expressed as a 10-digit. A 979 will be 13 digits, of course.

worktotags_small.xml This is a catalog of works and the tags applied to them. Take this example:

<work workcode="2">
<tag id="302312" count="14">college football</tag>
<tag id="931452" count="1">nebraska football</tag>
<tag id="1599" count="1">history</tag>
<tag id="624418" count="1">civil law</tag>
<tag id="3373" count="1">europe</tag>
<tag id="1042723" count="1" aliasedtoid="18587">Reader</tag

This means six tags have been applied to this work. One–college football–was used 14 times. The rest are all singletons. Each tag has an id. The id is unique, so Fiction, fiction, FICTION have separate tag ids.

Notice the last tag, “Reader.” This tag has the attribute aliasedtoid=”18587″. This means that although the user applied “Reader” the tag has been aliased to a more common tag, in this case id 18587,  which is, in fact, “reader” (lower case).

Tag aliasing on LibraryThing extends past case. Members “combine” tags, such that “wwii,” “world war 2,” “ww2” and so forth are lumped together. In this file, all would be “aliasedto” one id.

I recomment that feed users show only the final, aliased form, but use both the final and intermediate forms in searching.

taginfo_small.xml This is a catalog of all tag ids. It lists each id, together with the id  and text of the tag to which it has been aliased, if any. It also lists the total count for that tag and whether or not the tag has been “approved” for LibraryThing’s library-data project.

For example:

<tag id="1">
<aliasedto id="5280">fantasy</aliasedto>

The tag has the id of 1. The text of the tag is “Fantasy.” The tag is aliased to id number 5280, which is “fantasy.” “fantasy” and all it’s aliases are used 567,707 times in LibraryThing. The tag is approved for use in libraries.

We recommend most feed users display only “approved” tags. Approval was designed for our LibraryThing for Libraries product, and indicates the tag is probably useful and safe for display. It can be useful to use non-approved tags for search–in case, for example you want to catch variants like “ww2” and “world war two.”

reviews_small.xml This should be fairly straightforward. They represent all *approved* reviews that can be used outside of I don’t have a count, it should be around 300,000 now. We’re approving a backlog of reviews and should hit 300,000 in the next few weeks.

userid: The LibraryThing userid

restricted: There are two possible values—”libraries only” and “unrestricted.” They determine which reviews you can use.

stars: .5-5; some books don’t have stars. There are no zero-stars.

recommendations_small.xml This is a very straightforward work-to-recommended works format. 

worktoratings_small.xml This is a very straightforward work-to-rating stars format.

Labels: Uncategorized

Thursday, July 28th, 2011

The LibraryThing programming quiz!

Want to apply for one of the technical jobs at LibraryThing? Take the test below. If you can do it in under five minutes, let’s talk!

Background. I’ve been spending a lot of my time going through (read: “drowning in”) applications for our 2-3 open technical jobs. And I’ve been conducting a few interviews. The latter has demonstrated to me again the value of asking applicants to write code, especially simple code, during the interviews.

That interviews should involve simple code is now common wisdom in programming circles. The story is that a high percentage of programmers, even people with impressive resumes, “just can’t code.” Asked to do the simplest things—problems a good coders could solve as fast they could write—some spend ten or twenty minutes before they get an answer, or fail entirely. (See discussion by Jeff Attwood and Joel Spolsky.) I don’t go as far as others here. I think a lot of “slow coders” are probably excellent employees, making up for it in other areas. Some projects don’t need speed. Some people just need to spend more time programming; everyone was a slow programmer some time. But I know from experience that slow coders don’t work at LibraryThing. They don’t fit the LibraryThing development culture.

“Simple code” is critical. When I first started interviewing I’d ask people to solve hard problems. This didn’t work. As Spolsky’s famous “The Guerrilla Guide to Interviewing” argues, however, simple problems are just as good, or better. Simple problems test simple skills, and simple skills are the basis of complex ones. A programmer who struggles to loop through a bunch of words will be at sea performing far more complex tasks. If you can’t boil water your Toad in the Hole is likely to come out wrong.

Coding tests irritate a minority of people. One applicant said his resume should speak for itself. I have no time for that attitude—though I’m happy for the weeding help. Good programmers should welcome the opportunity to demonstrate they’re good at what they do. Heck, most programmers I know enjoy brain teasers anyway. They test themselves when no one’s looking.

The rules.

  • Time yourself.
  • Write this code in any language you want. Use your best language. If you can do many, PHP, Python and Javascript are preferred.
  • Write it out longhand or in a simple text editor.
  • I don’t care much about syntax. You can fix whether it’s isArray or is_Array later. If it has some obvious bug you’d fix in a second, fine.
  • This is not a trick question.
  • I’m not asking for some imaginary “best answer” that does everything in one line of self-writing code, or whatever.

The problem.

Input is a string—a paragraph of text. One of the paragraphs above would be fine.

Output is a report listing how many words there are with X letters, like:

10 words with 1 letter
20 words with 2 letters
7 words with 3 letters
15 words with 4 letters, etc.

How’d you do? Programmers employed by LibraryThing can do this in between 45 seconds and four minutes. We expect you to be in that range. If you’re applying for the sysadmin position you can be slower. (We think good sysadmins need to be able to program, but you don’t need to be a crackerjack programmer.)

If you’re in that ballpark in any language, go ahead and and apply!

UPDATE: We are NOT approving comments with the solution. We don’t want people to be exposed to it when they read this—it would defeat the purpose. We’ll approve them after the job is filled.

Labels: Uncategorized

Monday, August 16th, 2010

Publishers: Another way to upload your books

Since last week, participating in LibraryThing for Publishers has exploded, with 800% more titles and 21 new publishers.

To help more publishers join we’ve added a handy second format for publishers to upload their titles to LibraryThing for Publishers, which skips over the need to have an ISBN-based URL to every book. We used this format to upload from RAND Corporation and Mercer University Press, who would not otherwise have been able to participate.

The format is CSV (Comma-Separated Values) which can be exported by most programs including Excel and Google Docs, and conforms to spreadsheets produced by title-management applications. So long as every row contains both an ISBN—ISBN10 or ISBN13, with separators or not—and a URL, we’ll spot it and make the link. Other columns can be present or absent, as wanted.

The option is available in the “Upload Catalog Titles” section of each publisher or imprint.

Labels: LibraryThing for Publishers, Uncategorized

Friday, August 6th, 2010

People who read series, read series

From the recommendations for The Devil’s Right Hand by Lilith Saintcrow (Orbit Books).

Series readers read series, and LibraryThing picks up on this. (And notice the series are all by different authors.) I suppose this is common knowledge, but I’m surprised at how strong the effect is. LibraryThing already has recommendations on series page—for example, the series here, Dante Valentine, but maybe we need a series-to-series recommender.

Labels: Uncategorized