Subject guides on web 2.0 startup pages – 12 widgets

In the past few years, libraries have become increasingly innovative in the different ways they display their subject guide. Practically everything under the sun has being tried.

Libraries have tried wikis (here), paid for Libguides (here), used Delicious linkrolls (
here) and Squidoo (here). I haven’t heard of a library using Google Knol, but I won’t be surprised. Libraries have also tried opensource software such as Subjects Plus (here) , LibData (here), Research Guide, Pirate Source (here) , Library √† la Carte (here)

I have being exploring two related ideas, but the one I will discuss here involves using web 2.0 startup service pages like Igoogle, Netvibes, Pageflakes, others

Many libraries have used Netvibes in particular. Though the use seems to be mainly as generic library portals + subject guides, rather than outright subject guide, but the principle is similar

What do such services do? They are dynamic personalized pages where you can choose to aggregate material from different sites. Typically you install widgets such as calenders, web-mail etc together with RSS feeds to put all your most commonly used material on one page.

Of course there is nothing to stop libraries from creating pages made up of different widgets/modules and RSS feeds and opening access to the world. Such pages will function as normal pages for users who don’t use such services, while other users who do use such services can grab whatever modules/widgets they need to mix and match on their own pages.

It’s unclear how many users use such services, so the question is why use this over static pages?

Basically such services provide a lot of flexibility. Staff can easily create tabs, arrange the layout of each section by drag and drop, grab different sections or pages etc. In comparison, wikis or static pages are harder to customize this way.

A good example is Central Medical Library, University Medical Center Groningen‘s Netvibes page.

Looking at what libraries have done, you can see there is a lot of room for creativity out there, but let me describe some ideas I like. I basically looked at my own static subject guide and thought how I could convert it to something more dynamic.

Let’s take it as given that the OPAC search box, FAQs, instructions etc are already available and focus on subject specific material.

Examples will be drawn from Central Medical Library, University Medical Center Groningen , Shrewsbury and Telford Health Libraries , Dublin City Public Library . My own institution also offers Nexus, which is similar (will blog more about it in another post).

Add RSS feeds of journal or database searches

Why offer lists of high impact journals when you can list table of contents of the latest issues of those journals?

This is a pretty obvious idea, get the RSS feed of the table of contents of the latest issue of the top journals in a given field and then feed it into a widget/module to display the results. Most journals offer the RSS feed on their homepages or you can try ticToOCS Journal Service. To ensure that the link works to handle the ezproxy properly you should convert the RSS feed using the Yahoo pipes method I described previously.

The most basic way would be to offer each RSS feed individually.

But a more advanced idea would be to offer a widget that combines RSS feeds of several journals/search engines, filter out results that don’t meet a certain specified keyword , dedupe (and rank?) and display results.

Or how about a widget/module that tracks citation alerts/mentions from Scopus/web of science and Google scholar, and dedupes results? I’m sure that will come in handy for people tracking citations of their papers. A widget linking to citeulike, various web-based citation managers?

Add searchboxes of databases

Why offer a boring static link to the recommended say Economics databases, when you can offer dynamic search widgets?

Using the method I described here on now to Creating custom search boxes for library use , one can also offer search widgets to be placed on the startup page. If you are a truly progresive library offering opensearch plugins, you can also provide a link to it too.

As the image above shows, the user can grab the whole widget to put on their startup page (click on wrench icon), or they can click on “add search to browser” link next to the title to add the opensearch plugin version to their browser’s search box!

Topcited articles in given area

Use Scopus topcited to list top cited article in an area of interest.

Add book related widgets

You can create a RSS feed from your OPAC showing a list of new books in a certain subject, or popular books.

Shrewsbury and Telford Health Libraries , Dublin City Public Library

Or better yet embed a Librarything Widget!

Central Medical Library, University Medical Center Groningen

Add Delicious, social bookmarking widgets

Your library uses Delicious to tag internet links? Insert a blog roll as a widget!

Dublin City Public Library

Add instructional tips

If you have being linking to powerpoints of your subject specific tutorials, convert them into slideshare (or similar alternatives) and then put in the widget. It’s a bit clunky to have one slideshare widget for one presentation, so package them all in one using slideshare presentation pack to combine several in one (see below). Have screencasts of tutorials? Even better!

Most popular blog posts in given area

My subject area is Economics so I can use palgrave’s Econolog which tracks and ranks most popular (based on comments) Economics blog posts.

But what if you want to add blogs on other topics? What you should do is to combine the top 20 or so blogs in your area, aggregate and rank them using Postrank and grab only the top posts.

If you are not sure what the top blogs are in a given area, you can use delicious to search for most popular blogs (e.g. Geography+blog), grab and combine the posts from these feeds and then pass then through Postrank , a service which checks for duplicates and ranks or just displays top blog posts based on popularity (number of comments, number of clicks, number of blog trackbacks, links from social media sites like Twitter, Friendfeed, Digg, delicious, see details etc).

Excellent resources on this topic include

Add other library widgets

If you have created subject specific library widgets like conduit toolbars, bookmarklets etc , why not offer them here?

Central Medical Library, University Medical Center Groningen

Add calender widget

Use various calender 2.0 services like Google calender, 30boxes, upcoming etc to list events. E.g upcoming talks of interest (e.g. database talk, tutorials etc).

Dublin City Public Library

Add feedback widget

Insert Meebo or your favourite chat widget so you can get feedback. Add a poll, or a askalibrarian form. If you are really bold, how about adding a twitter widget or even a getsatisfaction page/widget!

Central Medical Library, University Medical Center Groningen

Add custom google search engine

Most subject guides have a link to a list of free online resources. Why not create a custom search engine to search those sites? Use either Google custom search engine or Rollyo search engine
and offer it as a widget

Add Google analytics

Want to know how often your public Netvibes page is being accessed? Add a module with the google analyics code included! Of course, this works only for the public page, but typically each module/widget usage will be automatically tracked as well.

Central Medical Library, University Medical Center Groningen

I’m just scratching the surface of what can be done. In the future I will from time to time post about specific library widgets that have useful functionality.

Until then
Aaron Tay

Make library search widgets with Widgetbox, Clearspring and netvibes

In my last post, I showed you three different ways you can create a portable web search widget for almost any arbitrary database you want. My preferred method used only simple Javascript with no other requirements and allowed you to generate a basic search box that you can put on any webpage.

In most cases you can just copy and paste the code to any webpage that accepts html and it will usually work. But what if you want to move it to a startup page like igoogle or netvibes? Or make it into a Bebo or Facebook application? Or even convert it into a Vista gadget, Google desktop gadget or Yahoo! widget to put on the desktop? Even Mac users are not left out! All these require the widget to be written in quite different formats.

This is where Widget distribution platforms come in. They allow you to upload Widgets in one form and then allows you to offer to users the same widget in different formats with one click.

Widget from Clearspring

Examples include Widgetbox (pro version exists), NetVibes, Clearspring, iWidgets, Sprout (not free). Also see Popfly and Dapper .

Many of them also provide analytics, tracking the number of users who have embeded the widget. This is of course important for measuring the impact of widgets.

Statistics from Clearspring showing usage

Such services also provide ease of use, in many situations the user doesn’t even have to copy and paste the code, also he needs to do is to click on the version he wants and it will be automatically linked to the account and added with a few clicks. For instance, one can quickly add a widget to one’s blogger sidebar with a few clicks.

In this post, I will talk about using Widgetbox, Clearspring and NetVibes to distribute the javascript web search widget we created in my last post. The others mention before require that you input the widget in Flash format or from a RSS feed (Dapper) and hence cannot be used as we are starting from javascript.


I’ve also embedded this widget (created using Widgetbox) in a sidebar at the bottom right of this blog.

Widgetbox is a very powerful and useful Widget maker, that allows you to input your Widget starting from a Widget made from Javascript/html, Flash, a remote widget or as a Google Gadget. If you don’t have a widget at all, you can create one out of RSS feeds, producing a widget that displays the content of the RSS feed.

In this instance, based on the Javascript from the previous post, we can obviously choose the Javascript/html option. Alternatively, using the remote widget option one can upload a webpage of the web widget onto a server and point the widget there.

Steps to create a widget using Javascript/html option

1. After registering, log-in and click on “make a widget”

2. Select html/Js option

3. Select blank widget, name the widget and click “continue”.

4. Copy and paste the html you used to create a web search widget into “Widget code” section

Two notes about the javascript code. If you link to any site, make sure you ensure the link will open in a new window (see example). Also any images should be uploaded to a server and then linked to with the full path.

5. Click “apply changes”

6. On the same page adjust the size of widgets in widget settings

7. Check “ Developer Agreement,Content Guidelines. ” and press “Save widget”.

8. The next screen allows you to further test, edit your widget, check analytics (how often your widget is downloaded) etc. But for now just click on submit to gallery.

9. Fill in as many details as you wish and then submit to gallery and you are done!

Alternatively, you could upload the widget as a webpage, then select “Remote widget” and insert the url. For example you can use this.

Use of Widgetbox is pretty straight forward, there isn’t really much to say beyond that. Once imported into Widgetbox, one can export to Blogging platforms (e.g. Blogger, Typepad,Facebook), Social networking sites (Bebo, Ning) Startup pages (e.g. netvibes, igoogle, Pageflakes) . All user needs to do is click on “Get widget”


A sample of this widget created using Clearspring can be found here

Clearspring is almost identical to Widgetbox. Clearspring however allows you to insert your widget into even more places from including Facebook application, Yahoo! widget etc.

This post is already very long, so I won’t go into details on how to use Clearspring, but it’s very similar to Widgetbox. You can use the following webpage as a template.


A sample of this widget created using Netvibes can be found here

Another widgetmaker you could try is NetVibes. Converting to NetVibes widgets is a bit more complicated and requires that you put in certain extra tags to comply with their UWA (universal Widget API). The documentation is here.

If this looks too scary for you, you can take a look at the example I created here. I myself modified it from the following example created by Guus Van Den Brekel from here. Just edit the appropriate fields, replace the javascript and it will work.

NetVibes is actually worth the trouble because it allows you to add widgets to Opera, Apple Mac OS X dashboard and Vista gadget which covers two of the major desktop widget formats.


Much of what I shown is still experimental, and you can spend a lot of time tweaking, customizing the look and feel. That’s all for now.

Aaron Tay

Creating web search widgets for any database – 3 different options

In an earlier post, i talked about how libraries are attempting to increase accessibility to their databases and catalogues via the use of opensearch plugins, custom toolbars, bookmarklets and even smart keywords.

Another way to improve accessibility is by embedding web widgets. You can embed all kinds of web widgets but here I will talk about web search widgets. Essentially these are javascript code for portable search boxes. I won’t sell you on how you can use this, but “but the general idea is to put it anywhere and everywhere your users may be

By cutting and pasting simple javascript, one can put the search box for catalogues and databases where-ever they want. Users no longer have to go to the official JSTOR page (for instance), just to search JSTOR. In fact, users can even cut and paste the same code and put it on their webpages to get the search box.

Vendors have begun promoting this. Proquest offers an easy to use search widget creator that allow librarians to easily generate javascript code to cut and paste to put where-ever they want on their portal (also CSA Illumnia) Ebscohost also allows this as well.

Note : Scopus takes a different tack and offers desktop widgets via Yahoo! widgets. But here I will focus on simple web widgets – simple javascript that one can cut and paste and put on any webpage.

But what if libraries want to create search web widgets for other databases that the vendors have not yet seen fit to support this? Currently, there are two approaches to handle this, in this post I will introduce a third method that AFAIK has not being mentioned before.

To get you motivated here’s one example of what you could do. I embed them into my subject guides

Approach one : Leveraging on database searches already supported by Conduit toolbar.

The highly innovative and creative librarian from Netherlands Guus van den Brekel is a big fan of Conduit toolbars. As I mentioned in a previous post this is a custom toolbar that can be configured to support quick access to search almost any database.

He realised that once a toolbar is setup to support searching say JSTOR, you can easily convert it to a web search widget. The instructions on how to do so are here.

My main concern with this method are as follows

1) The search doesn’t go directly to the database but is routed through Conduit servers, which might lead to privacy concerns.

2) The results shown will be framed. While this is an advantage for users who can quickly switch being databases. Some vendors might frown on sites framing their material.

Approach Two : Leveraging on existing federated search solution

Very recently at the Computers in Libraries 2009 conference, Nina McHale of Auraria Library, gave an amazing presentation entitled “Help your Library become omnipresent without spending a dime” (slides) , talking about what they have done with widgets. Definitely worth reading if you haven’t. But her presentation doesn’t go much into the technical details except to advise to check with your “web folk”. Looking at examples given here and in the slides, one notices/guesses that they are leveraging on their federated search solution from serial solutions? (I might be wrong)

If so I can see two disadvantages with this approach. Not every library will have a federated search solution. More seriously, I believe most federated search vendors charge you for each database you add, so this solution will restrict you to creating search widgets for only these few databases you are supporting.

Is there a better approach?

I have being a big fan of Opensearch plugins since I discovered them and I even created a big bunch of them here for almost every database we support on various platforms.

Once you have created a opensearch plugin, you know exactly what format the url should be sent to get the result. For instance, I know that to send a keyword query to EconLit (OvidSP) with the term TEST, you should send the following string.

How do I know that? For every opensearch plugin, you will have a string in the xml file that says something like the following

<Url type=”text/html” template=”;NEWS=N&amp;PAGE=titles&amp;SEARCH={searchTerms}.mp&amp;D=econ“/>

where {searchTerms} represents the search term that you type in.

Would it be possible to leverage on this knowledge to send the search directly from a web widget? I was pretty sure this was possible, but my javascript knowledge is practically zero, but looking at the sample web search widget produced by the Proquest Search Widget allowed me to figure it out.

Creating a simple web search widget by copying and pasting

After tweaking it a bit, this is what I came up with by modifying the Proquest widget version. It can probably be improved but so far it works fine.

<script type=”text/javascript”>
function econlitSearchGo(){
var url=”;NEWS=N&amp;PAGE=titles&amp;SEARCH=“;
var url2=”.mp&amp;D=econ
var searchInputeconlit = document.getElementById(“econlitSearchInput”); + encodeURIComponent(searchInputeconlit.value) + url2);


<div id=”enterText” style=”position: absolute; left: -1000em; width: 20em;”>Enter your search terms:</div>
<input type=”text” id=”econlitSearchInput” size=”30″ onKeyPress=”handleKeyPress(event,this.form)” />
<input type=”button” value=”Search” onclick=”econlitSearchGo()”/>


Don’t panic!

Okay if you are like me and am not a javascript god, this looks quite scary.
But it isn’t really. Look at the line that says + encodeURIComponent(searchInputeconlit.value) + url2);

It just means open in your browser a new window with a url made up of whatever is in

1) the variable url =

followed by

2) the search value entered into the box = For instance say TEST is entered in the search box.

followed by

3) the variable url2
As such on typing TEST and clicking on the search button, the following url will be opened

and this of course is exactly what you want to type in the browser url address bar!

One more example

Here’s one more example, you created a Scopus opensearch plugin. You look into the xml file and you see this

<url type=”text/html” method=”GET” template=”{searchTerms}&amp;origin=Browse&amp;javascript=t”>

So you know the string you need to send is{searchTerms}&origin=Browse&javascript=t

So what you do is to just copy and paste the same javascript as above, except to replace with the appropriate values

<script type=”text/javascript”>
function ScopusSearchGo(){
var url=”“;
var url2=”&amp;origin=Browse&amp;javascript=t
var searchInputscopus = document.getElementById(“ScopusSearchInput”); + encodeURIComponent(searchInputscopus.value) + url2);


<div id=”enterText” style=”position: absolute; left: -1000em; width: 20em;”>Enter your search terms:</div>
<input type=”text” id=”ScopusSearchInput” size=”30″ onKeyPress=”handleKeyPress(event,this.form)” />
<input type=”button” value=”Search Scopus” onclick=”ScopusSearchGo()”/>


Easy as pie. ūüôā

Some notes

1. If the search string ends with just {searchTerms} and there is nothing after it, you can just leave the line that specifies url2 as follows

var url2=””

2. It is not strictly necessary to change the variable name e.g. searchInputscopus instead of searchInputeconlit, if there is one widget per page, but this may cause problems if widgets sharing the same name are on the same page.

3. Note to beginners the examples above incorpoate the ezproxy string that you have to change to your institution.


1. Compared to the above two mentioned methods, search goes directly to database.

2. Relatively easy to create search widget once you have the opensearch plugin.

3. Cost nothing. No requirements at all, except client side javascript.


1. It is difficult to instruct users on how to create their own search widget for the database they want. It is unlikely the user would want to go through the method mentioned above. One advantage of approach two above (using serial solutions federated search) is that you can use easily understood codes like db=jst to represent JSTOR, making it easy for users to change to whatever search they wanted.

One possible improvement would be to to implement a gatekeeper page, as in “Plug your users into libraries resources with OpenSearch Plug-ins ” . Instead of the opensearch string going direct to the database it will go to a special gatekeeper php page that will redirect the search. That way, one could create nice aliases to use, it would go the php page which would then redirect to the correct url. Another advantage is that the gatekeeper page allows one to keep statistics of how often the searchplugin is used, and if the url string needs to be changed, all you need to do is to change the php string and all users will automatically be updated.


So what do you think? Is this a good idea?

The next step would be I think to figure out if this can be extended so that it can be used to create desktop widgets, put on startpages like netvibes, pageflakes, put on social networking sites like Facebook etc by putting it through Widgetbox etc

Adding ezproxy to the url – 5 different methods

Many libraries in the world provide remote access to electronic resources via EZproxy .

As Andrew Perry explains here

“Essentially, Ezproxy uses some URL mangling, rewriting all hyperlinks, to pass traffic via the proxy (rather than using a conventional browser proxy setting). If the user is not logged in to the proxy (ie has no fresh & valid cookie), a login screen is given before being forwarded to the journal site.”

In the case of NUS Libraries, a user visiting will not be able to logged in via NUS Libraries and hence cannot access full text. However if he accesses the same link with the extra string in red appended , he will be accessing the page via NUS Libraries and hence will have full text access.

While links from our library portal will typically have being specially treated to include the string in red, in today’s world, a user is more than likely to stumble upon a journal vendor site from some outside source that did not rewrite the link (e.g. Blogs, forums, web search engine results). As a result, users will not be able to access the full-text article.

This is particularly so for users using Google or Google scholar. Ideally if everyone was linking using openurl (which google scholar does) and every library had a openurl resolver (not all have) things would be a lot easier (besides being a much superior method for being certain whether a library has access if the same article can be found in different sources/vendor platforms) but ….. In any case, this post assumes that linking via Openurl has not occured and one is dealing with a simple link to a specific vendor url.

In such cases, one can always manually add the string “” to the url just after the domain name but clever librarians have come up with many ingenous ways to speed things up.

Some methods that can be used include

1. Bookmarklet
2. Libx
3. Greasemonkey
4. Zotero
5 Others

Use of bookmarklet

This is perhaps the most commonly used method. For this to work, one installs a bookmarklet into the browser. Clicking on the bookmarklet will automatically append the needed ezproxy portion of the url into whatever url the user is on, hence allowing him to access the resource.

Example : NUS Library bookmarklet


Lightweight, works on most browsers.


The bookmarklet can only work retrospectively, after the user is already on the url. In most cases, as the user is initially not authenticated via EZproxy, the page shown will be the public page. Clicking on the bookmarklet will then convert the page into the subscribed version. Unfortunately, some vendors will detect that you are not authorized to access the page and redirect the page to a generic error page. Obviously, clicking on the bookmarklet now, would be futile. Vendors that do this include Web of Science and Scopus?.

Also certain vendor sites (Wiley-blackwell is one) will report errors with cookies, when using the bookmarklet. The only way around these problems would be to convert the url on the fly before even hitting the page (Which the Greasemonkey script, Libx and Zotero do).

Libx toolbar

As I covered in a past post , Libx toolbar is a specialized custom toolbar that libraries can offer to their users to help enhance access to their collections. Among the many functions of Libx is the ability to support the use of EZproxy. This is done via two methods

1. When the user is already on the page.

Similar to the bookmarklet method, when the user is on a page that he is unable to access, he can right click and select the option “Reload via Library proxy”, and this will automatically reload the page he is on, with the ezproxy built in.

2. Prior to visiting the page.

Alternatively, before even hitting the page, he can right click on the link and select “go to via Library proxy”. This can be helpful in avoiding the situation mentioned above with vendors redirecting to generic error pages.

Example : NUS Libx toolbar demo


Because one can rewrite the url link , before even visting the url, this avoids the problem mentioned above with vendors redirecting to generic error pages. Also Libx supports both main browsers Firefox and Internet Explorer, although the bookmarklet supports more browsers.


Libx adds a ton of features, and is probably overkill, if all you want is just some way to add support to exproxy. It is of course possible to create a small simple Firefox addon that does just these functions, for instance recently I discovered this from way back in 2005!

Using Greasemonkey script
Greasemonkey is a Firefox addon that allows users to dynamically rewrite webpages. It is possible to create a greasemonkey script that will on selected domains (which user can add) rewrite outgoing urls to work with ezproxy.

Example : Greasemonkey script demo (NUS libraries) , Script originally from Andrew Perry


Unlike using bookmarklets or Libx, once configured properly, outgoing links will be automatically rewritten. Users save time, because they don’t have to click on the bookmarklet or right click and select context menu etc for it to work everytime you go to Jstor via Google scholar. You can also add more domains into the list.


Greasemonkey is Firefox only, though Internet explorer users might try it with greasemonkey with IE.

Once a domain is added, all outgoing links will be converted. This can cause problems in some instances. For example, one can’t simply add* and hope to convert all Google scholar links, because the next page button doesn’t work then!


Zotero is a well known opensource citation manager that runs as a Firefox add-on. It has tons of powerful features. However the latest 1.5 beta adds automatic proxy support

When I first read about it, I thought it worked like Libx‘s. But I was wrong, it’s far cleverer.

It works as follows, the first time you visit any url via ezproxy, Zotero will popup the following dialog box.

There isn’t much detail on how it works. But here’s my understanding, if you click “add proxy”, Zotero will silently track any urls that use ezproxy, and automatically create pattern matching rules so that similar urls to the same domain will be converted as well.

For instance if you visit for the first time, Zotero will notice that you are using a proxy to access If you click “Add proxy”, two things will happen

1) In the future whenever you go to any link that has in it, will be automatically appended.

2) In addition, you are not just restricted to Springer. if you next visit say JSTOR at , Zotero will silently learn (no prompt) about JSTOR links as well, so again in the future similar links to JSTOR urls will be converted.
The more vendor sites you visit via ezproxy, the more Zotero learns about which links (based on domain) should be converted. All this works transparently, the user does not need to do any work at all!

In short, what you have here is a simple autolearning system, that automatically learns what urls should be converted and appends the needed string!


Very user friendly. Domains that should be converted to use with ezproxy are automatically added without intervention by user. Once Zotero has learnt that certain url from a domain should be passed through Ezproxy, it will work automatically, saving time compared to using bookmarklets or Libx.

Do note that Zotero proactively converts recognized urls similarly to greasemonkey, so it works fine with links to Web of Science or Wiley unlike using bookmarklets. Unlike greasemonkey script it selectively converts only recognized urls, rather than all urls on the page, so it works great with say Google scholar and there is less chance of problems.


Unfortunately, Zotero is Firefox only add-on, so users using other browsers are out of luck.

Also though Zotero automatically recognises urls that require the ezproxy string to be added, it does not itself add the ezproxy string when you first visit a domain it doesn’t recognize.

One can of course combine methods. Use any of the earlier methods to append the ezproxy string to any new domains not yet recognized by Zotero, and the next time when you visit links in those domains, Zotero will kick in and work automatically.

In particular, given that both Zotero and Libx are opensource tools that are popular with users of Firefox, many librarians have began to recommend the use of both . So use the later to append the ezproxy string to unrecognized domains for Zotero to learn.


These are only some methods that can be used to append the ezproxy string. No doubt there are some other methods (e.g. other Firefox add-ons such as redirector and quieturl). Update 21/4/09 : The 5th method is courtesy of a library user from my institution. He uses shortcut typing tools and recommends the following typinator, textexpander (os x); fastfox, phrase express (pc).  These tools allow you to type a letter or two and expand it into a whole phrase, like a macro.

Overall I think Zotero‘s method is the smartest and easiest way to solve the problem of automatically adding the ezproxy string. It might even be worth installing it alone for this feature, if you constantly find yourself needing this feature.

Do note that if you append the ezproxy string and you still don’t have access, it doesn’t necessarily mean your library does not have access to that article. It is possible that you can still access the same article via another vendor or site.

Rss feeds, Library databases and yahoopipes

This post will discuss how to use RSS feeds from library databases. It’s surprisingly tricky to do it compared to subscribing to normal RSS feeds from most blogs. This is due to the fact libraries generally provide access via a proxy – ezproxy to provide remote access to databases off campus.

As most readers of this blog are probably reading this off a RSS feed, I won’t explain what a RSS feed is. If you have no idea what it is, please consult this guide.

The basic idea is this, do a search on a library database, create a RSS feed of the results and put it into your favourite feed reader (Google reader, Bloglines, Firefox,  Internet explorer 7 , Outlook 2007 etc), After which you can watch new results come in as and when the database is updated in it without needing to run the search again or visit the database site again.

Some library databases that provides results and alerts vis RSS include ScienceDirect (via NUS Libraries), Scopus (via NUS Libraries), Engineering Village (via NUS Libraries) databases on ProQuest (e.g. ABI/Inform via NUS Libraries),  Ebscohost (e.g. Business Source premier via NUS Libraries) , OVIDSP (e.g. EconLit via NUS Libraries) etc.  How you get the rss feed url differs but generally you click on the RSS button that appears on the results page (see below for example from Engineering Village)

However, if you try to just stick the url given by the database directly into your feed reader (see image below) you will be doomed for disappointment, it doesn’t work!

The technical reason and solution for this can be found here .

However for now there’s a work-around.

The method describes below is specific to databases subscribed via NUS Libraries, but any library (e.g. NTU, NLB) using ezproxy to provide remote access should be able to do something similar by removing the particular proxy stem.

You need to delete the part that says “” before pasting the url into your feed reader.

NLB users should remove “” , while NTU users should remove “

Most guides I have seen on library webpages stop here. While this works, and the results will be pulled into your RSS feed reader (see below), you will be disappointed when you click on the link in the feed reader.

Because the rss feed url you enter lacks the¬† ezproxy proxy stem, the outgoing links you are sent lack it as well, and when you click on the link, it brings you to an unsubscribed version (where you can’t see the full-text) of the page at best, or at worse you get an error page (see below).

One way to solve this problem would be to add the proxy bookmarklet here to your browser (specific to NUS Libraries, NTU version is here ) and then clicking on the bookmarklet will log you in from the error page above.

But that gets tiresome as you will have to do the same for each link you click from the RSS feed.

A smarter method would be to modify the RSS feed you get to automatically append the proxy stem, (for NUS Libraries, for other libraries edit the yahoopipes accordingly) to outgoing links. This can be done via a simple Yahoopipes filter (you will need to make very minor modifications if you are from some other libraries).

1. Go to

2. Enter the rss feed url (the one that does not have the string

3. Click “run pipe”

4. On the resulting page, click on “Get as RSS” and on the resulting page, copy and paste the url into your feed reader.

5. You will find that this time, the resulting rss feed will have links that work properly now. It goes without saying that if you haven’t logged in this browser session yet, it will prompt you to¬† log-in first.

Some libraries discourage the use of RSS feeds because they worry the constant polling for updates will cause unnecessary number of accesses. The method described above avoids this problem.

As results are pulled into your Feed reader, there is no access via the institution library, Until you click on the link to gain access to the database,¬† the vendor doesn’t count it has an access from you.

I might do a post about ezproxy, and other creative uses of Yahoopipes in the future.

Until later

Aaron Tay

Dipity for libraries

In my last post , I talked about libraries using Lifestreaming to aggregate all their social media/web 2.0 accounts. In particular, I talked about Friendfeed.

Friendfeed is typical of most lifestreaming services in which updates from different sources will be listed one by one in a list, one on top of another.

However a few lifestreaming services are a different breed of lifestreaming service, what Lifestreaming blog calls “time-lined based”

There are several such services, but perhaps the most mature and impressive one is Dipity. Below I show our NUS Libraries’ feeds will look like when fed into Dipity.

As the image above shows , all updates from different sources are displayed along a time line.  Images from Flickr will be shown, Videos from youtube, Twitters, blog comments etc

It is fully interactive, you can embed it in any webpage and users can zoom in, zoom out to see more details etc.

All in all, it is a lot more visually appealing then the average lifestreaming service, which shows updates one after another in a horziontal list.

Dipity also offers users an option to change from “timeline view” to a “list view” . The later will display something that¬† is similar¬† to Friendfeed and company (see below).

Another two other modes are offered, one is¬† “Flipbook view” (see below)

Just flip through each update, like flipping through pages of a book.

Perhaps the most interesting one is the Map view.

Map view is a bit difficult to explain. Basically in one of the blog posts one librarian reviewed a fiction book set in Italy, as a result it appears on the map in Italy, and if you click on it, it will show the corresponding post. This is a simple example of what they call geo-tagging (roughly speaking this involves tagging an item such as blog post, image etc with the geographical location associated with it).

Possibly, the images don’t do full justice to the concept, go to to play with it.

You can also embed it as a widget on any webpage, blog or even Facebook.

For more cool ideas on how to use this service you can go to their blog or just go to their Dipity homepage to see how other users are creating cool timelines.

Other similar services you can try include allofme ,  Dandelife , Lifeblob etc. Also there is Storytlr which is close enough to fit into this category.

I think time-line based lifestreaming is a very interesting way of  providing a visual record of library activities over a period of time. There are some things to iron out though, like ensuring that your blog post about Library event X, and the photos on the same event X posted to Flickr account should appear on the same day etc.

Libraries on FriendFeed

We recently started a small scale experimental presence on Friendfeed (official announcement) . Friendfeed is one of the most popular life-streaming services out there. I was curious about whether libraries were using such services and did a small survey on it. More on that later.

What is lifestreaming?

In today’s world, one person might be on Flickr, Facebook, Friendster, Slideshare, Youtube, Delicious or a hundred other different web 2.0/Social media accounts at the same time. Lifestreaming services aggregates all these accounts into one central place, for interested people to follow. Wired in Dec 2008 claimed that Lifestreaming is one of the web technologies of 2008 that you should be using now. For a brief description of how typical lifestreaming service work see here. The lifestream blog provides a comprehensive review of the latest state of art in Lifestreaming.

Libraries and lifestreaming?

Given that libraries are currently reaching out to user communities via blogs, Facebook, Flickr, Delicious and a myraid other social networking/media accounts, it seems natural for them to consider using lifestreaming applications to provide a centralized location for all these accounts.

There are many lifestreaming applications out there (see list and comparison), though it is still early days in this new area, Friendfeed (by an ex-googler), is currently the industry leader (though Facebook has recently added similar functions).

Though Friendfeed does not provide support to as many services as say Profilactic, they have a relative intutive interface,  a powerful search engine and relative size, though like most lifestreaming services they currently cater mostly to the early adopter crowd (including most librarians)

I was curious to see how many libraries have started Friendfeed accounts and so I did a small experiment. I searched Friendfeed for accounts with the word “Library” or “libraries”. I filtered out as best as I could accounts that clearly wasn’t Library accounts (for some reason it gives me accounts where library doesn’t appear in the account name?), excluded accounts that had no updates, and left out accounts where the feed was private (still testing)? In the end I ended up with 15 accounts.A couple seemed to be in testing/experimental modes though they all had at least 10 updates.

What are libraries doing with Friendfeed?

It was quite fascinating looking at the friendfeed account of each library. You get a quick snap shot of what web 2.0/library 2.0 activities each library is engaging in and I already see some interesting ideas that I didn’t think of. I also uploaded the data into googledocs here , feel free to edit.

One obvious thing I did was to see what web 2.0 accounts libraries were linking to in Friendfeed (I didn’t check if they actually had updates from those accounts though). Also if they had more than more accounts of the same service (say 2 blogs or 2 Flickr accounts), I counted them once.

Do note that the diagram above is not representative of what libraries are doing in the web2.0/socialmedia arena (for that see this). Rather they show what libraries who have Friendfeed accounts (who are likely to be early adopters) are doing.

Out of 15 accounts,  12 accounts have blogs. 11 accounts Twitter, 10 have Flickr account, 8 Delicious, 5 Youtube, 3 Slideshare, 2 Facebook, Librarything, Gtalk  and a scattering of the rest.

There are few surprises, though I’m mildly surprised Slideshare (and similar services) are not used more to share presentations (think library tutorials).

Though Twitter is getting a lot of press, it is still a technology that libraries are getting grips on (more info here, here , list of twittering libraries), so I suspect the large number of Twitter accounts here only reflects the fact that Libraries on Friendfeed are obviously early adopters.

Using the classification of social media services found here , we can see  libraries are basically using blogs, microstreaming services (Twitter, Plurk etc), photo sharing sites (Flickr, Picasa etc) , social bookmarking services (Delicious, Diigo, Twine etc).

Lesser used are video sharing sites (Youtube, Vimeo etc) , document sharing (Slideshare, Scribd etc) , book services (Librarything, Good reads, Amazon etc), music/movie review services (, iLike)

You can probably write an entire book on how libraries can use each category of social media service to reach out, so I won’t try at least for now.

But viewing social media services in such categories, one can suddenly see a lot of ways in which libraries can creatively use social media that we currently aren’t using.

For example how about using events related services like Upcoming , or calenders 2.0 service to publish library events? Geo-location services like Brightkite to keep patrons updated about your location? Sharing documents via Google reader ?

Lifestream services accept any kind of RSS feed (some might even accept ical format for online calenders?) , so you can add content as long as it is in RSS format.

For example, we currently convert our “new additions to libraries” into RSS format and push it to our Friendfeed account. If the content you want is not in RSS format, you can try using a data/feedscraper to convert a static webpage into RSS. I recommend Dapper.


The lifestreaming arena is still in a state of flux and understandably libraries might want to adopt a wait and see attitude. It is possible that Friendfeed and similar services will die off as standalone services as Facebook adds similar feature . On the other hand, maintenance of Friendfeed accounts is comparative light compared to a Facebook account.

If you are already running several web 2.0 accounts, friendfeed adds very little to the burden, once you set it up and link to your other accounts. Just continue to post pictures to Flickr, bookmarks to Delicious, make blog posts and your Friendfeed account will be updated automatically.

Even if users don’t use it, you can also aggregate all the content through Friendfeed and embed it into your Library portal via a widget.

Until later

Aaron Tay

Google Books tips and tricks by a librarian

One visitor to my blog, commented that she couldn’t make heads or tails of my postings because it was too technical and obscure (opensearch plugins??).

To remedy that, I’m going to post some ” beginner” level posts that should be accessible to everyone. I’m going to post a series of research tips that might be helpful to less experienced users

Google books

Did you know that Google has digitalized and scanned in full-text of over 7 million books (they recently added magazines) through a service called Google books? You might in fact, come across links to Google books results while searching regular Google or Google scholar, but I personally prefer to search Google books direct if I am looking for a book.

Why you should use Google books.

Our library catalogue search (LINC) is great, but our library records contain only metadata relating to books. By metadata, I mean for each book, our library records contain summary information of the book (technical term here is surrogate record). This typically includes title, author, subject, isbn, short summaries and occasionally table of contents. Below shows a typical record in the catalogue (this time with table of contents).

All this is great, but what if the information you are searching for is in a short paragraph extract that isn’t in any of those places? Then your search will miss it! This is where Google books shines, it has scanned in every word of each book and all of it is search-able!

As long as the term you searched  for appears in the book, Google books will find it!

Why Google book can’t replace the library

As you might expect, while Google books will allow you to find books where your searched terms appears in, in most cases it will not allow you to actually read the whole book when you click on the link. There are in fact 3 scenarios (a 4th scenario is where there is just a bibliography) when you click on the link.

1. Full view

Occasionally, you will be able to see the full text of the book. This occurs typically for very old books that are in public domain and are out of copyright or in rare cases where the publisher has allowed Google books to display the whole text. You can also download the whole book as pdf.

2. Limited Preview

In most cases, publishers have allowed Google to display only parts of the book, so you will only be able to view parts of the book (pages might be missing) , and also to a maximum of X number of pages  , where X is set by the publisher.

Below shows a book with limited preview, pages 543-544 are omitted from display.

3. Snipplet view

Certain books are viewable only in snipplet view, you can only see a few lines of text, sufficient to see your search terms in context. See below.

How to use Google Books creatively

My experience is that most books you want will not be in “full view” but rather in “Limited Preview”. Despite these limitations Google books can be a powerful search tool. Here’s how you can use it to your advantage.

#1 Preview the book first to see if you want it, before coming down to borrow it.

Use Google books to quickly see if the book is worth borrowing (read sample chapters, do a search within text to see if the results look interesting etc) in the comfort of your home before coming down to the library to borrow it.

# 2 Read

portions of the book if item is  checked out.

Looking for a RBR book or a popular book that is checked out and you need it desperately?  You can place a hold, but what do you do in the meantime? If you are looking only for a chapter , you might get lucky and Google books in limited preview might allow you to  read the whole chapter. If not, reading parts of it, might be better than nothing until you finally get the book.

#3 Harness the power of full-text search to find items that you might have missed otherwise (general).

If your search terms are not getting many results in the library catalog, try searching in Google books. You will get more results for sure, because Google books will match books as long as the terms appears anywhere in the text and not just in the title, author, subject or summaries for Library catalogue searches.

Typically the most relevant results that appear in Google books, but not in the catalogue search will be chapter titles. Sadly while some of our catalogue records incorporate table of contents, not all of them do yet.

I also find this feature particularly useful for searching for very obscure and rare terms that don’t merit a whole book or even chapter written on it.

#4 Finding specific statistics

Looking for some obscure piece of statistic? I have found that Google book search is perfect for hunting for obscure statistics. Typically all you need is just the table or chart, so you don’t want or need to read the whole book anyway. Try searching for example food subsidy as percentage of gdp in India. We have many of the books listed in our library, but why borrow the whole book, when all you need is just one page?

You could of course just do a normal google web search, but then you would have to spend time figuring out if the website you found it is reliable or not (Warning! books are generally more reliable than any random website if they have gone through editorial review and control, but not all books are equally creditable!)

#5  Finding book citations and biographies

Want to see which books cited or mentioned a journal article or book you are interested in? Do a search in Google books and compare the results when you search for an article name in quotes in Google books with the cited reference search of the same article in Scopus. See the difference?

#6¬† Finding a book whose title you can’t recall.

Trying vainly to recall the title of a book you have read or borrowed in the past, and you haven’t had the foresight to turn on our my reading history feature . If you can remember some of the more unique words in the book , the year etc, Google books (advanced search) might help. Trying adding as much information as you can to narrow it down as much as possible.

#7 Downloading full-text of older books in pdf

If you are a history buff, you are in luck! Many of the oldest texts are obviously in public domain now, and are available in full view mode. You can view and download the whole item in pdf. Take a look at the following item which is in our rare book collection , but you can download the full text in pdf here . If you just want to look at books available in full view mode, use the advanced search to restrict searches to books with only full view.

#8 Search Google books with Android and iPhone

For Android and iPhone users you can now use Google books at the mobile site here !

#9 Learn to use the advanced search features of Google scholar to limit the search

Given that google books searches every word in every text out there, if you are not careful you are going to get thousands of hits. Google Books tries to rank what it considers most relevant at the top, but it is helpful if you know how to restrict searches¬† to get exactly what you need. There are many wonderful guides out there (e.g here and here) on this so I won’t elaborate¬† further.

#10 Secret tip

Every tip and tricks page needs to end in a round of 10. This last secret tip I discovered by accident. I will only reveal it if there are more than 5 real,sensible comments (I get to decide what counts) from 5 different users.  But I seriously doubt it will happen.

Until next time.

Aaron Tay

Top 10 opensearch searchplugins used at the Information Desk


I have being heavily using opensearch searchplugins to help speed up access to common used searches at the reference desk. I take it for granted, most people already have Google, Wikipedia, Youtube, Amazon etc. But what else should you add?

As WordPress strips out all javascript, I am unable to provide a direct clickable link to install the opensearch plugins mentioned below. Sorry about that. This page lists them all and more.

1. SearchPlugin to my Institution’s OPAC

This one is obvious.¬† I have searchplugin’s to our new Encore system which does a keyword search , and another to do a search by Call number.¬† The latter is necessary because Encore still doesn’t do call number searches yet and a lot number of our patrons like to give me call numbers to verify.

Of course, you could always keep a tab open on your OPAC search page, but being able to interrupt your work and instantly look up something without hunting for a tab is good.

2. SearchPlugin to Google Scholar and Google Books

In earlier posts, I have explained I’m a big fan of Google scholar and Google books. Naturally I have searchplugins for them. Use Google scholar to verify citations, hunt for obscure terms when your other sources don’t find much and a lot more. Google books. is great for verifying contents of books (those with limited preview or full view). Strangely I find myself doing it more often for books that we own. That sounds a bit odd, but when you can’t leave the desk to verify if a certain book really has the chapter the patron needs (and the catalogue doesn’t have the tables of contents), Google books is a god sent.¬† Also great for remote reference to help patrons decide if they really want to come down physically to borrow the book.

We don’t yet have a openurl resolver up yet, so when clicking on¬† Google scholar results sends me to the vendor page, I log-in directly with a bookmarklet that adds our ezproxy string to the url.

I’ve considered adding other members of the Google family such as Google Groups (great for tech support), or Google news, but I seldom use them at my reference desk.

3. SearchPlugin for directions

Want to know the way to the Zoo from the library? To the airport? I’m the last person you should ask, since I was born without a sense of direction. To solve this problem, I have a searchplugin from that allows you to key in any postal code or road name or building in Singapore, and it will automatically work out the best route to go there from the library, whether by driving, or by public transport (Bus and MRT). This can then be easily printed. You can also flip it around with a click so it goes from any location to the Library.

There are many similar services here in Singapore, but they either don’t provide directions for public transport (e.g. Google Maps, Red nano) or they allow you to only search by Street or Postal or building name and not all three together in one search. (e.g.

4. SearchPlugin for Google site search of my institution

Another no-brainer.¬† Often you need to just search for things on your institution’s domain. If a custom google site search¬† for the domain exists, create a searchplugin for it.¬† or if it does not exist and you don’t want to create one you can create a normal Google search plugin, but remember to insert before creating.

If your institution has a specialized intranet search engine (e.g google search appliance), you might want to create a searchplugin for that too.¬† In the same category is a searchplugin for searching your institution’s staff directory.

5. SearchPlugin for newspaper searches

Patrons tend to like to ask questions that require searching of Straits Times, our national newspaper. Since I haven’t yet figured out a way to get the plugin working for Factiva, I created one for Lexis-Nexis Academic which searches our local newspapers. But what about older archived issues not covered? Recently our National Library scanned all back issues of Straits Time (up to 1982)¬† at I created a search plugin for that,¬† it shows only abstracts, but that is good enough to verify for users whether they want to go to our microflim collection to get the full text.

6. SearchPlugin for Thesis

Another common query is for thesis.  I generally add PQDT. Some others I occasionally use also are  NDLTD, Hong Kong University Thesis etc.

7. SearchPlugin for Open Access archives

They are several you could add.  Google scholar already covers quite a bit, but I could envision adding Citeseerx, Arxiv, Biomed central etc depending on your needs. Others you could add include Open J Gate, DOAJ, OAIster to search by article. etc.

8. SearchPlugin for digitalized book collections

Try adding the free Open content alliance (via Internet Archive), Universal Digital Library, China-US Million book project. If your institution has subscriptions you could add Springer Books, NetLibrary etc.

9. SearchPlugin for scholarly search engines.

Try adding some high quality web search engines, Federated search engines that index academic material only such as Scirus,  Mednar, Biznar, etc.

10. SearchPlugin for anything else

Be creative, add book vendors like Bookdata online, Worldcat etc. Or Social sites/research 2.0 sites  like  Librarything, Bookjetty, Citeulike,  Slideshare etc.

I personally also add Scopus, EconLit, Blackwell-Wiley, Project Muse, for specific reasons to do with the interaction between Google scholar and the proxy bookmarklet that I won’t go into now.


Yes, I have a big bunch of searchplugins in my browser. In fact I have 2 lists one for IE7 , one for Firefox. The later I use at the reference desk, the former I use when I’m in the back-room doing cataloguing, acquisitions etc with the appropriate search-plugins. But that is another post.

So dear librarians, what search tricks do you use (need not be opensearch plugins, could be smart keywords) do you commonly use at the desk?

Opensearch vs custom toolbar vs smart keyword vs bookmarklet (IV)

In a previous post, I discussed the different ways, one can add support to searching OPAC and other library subscribed databases. The four methods were Opensearch plugins , custom toolbars (Conduit toolbar , Google toolbar , Libx) , Smart keyword searches and Search bookmarklets

I already discussed opensearch here, and the various custom toolbars here . In the last part of this series, I will discuss the much lesser used Smart keyword searches and Search bookmarklets.

Smart keywords

This is a feature that some power-users of Firefox might use to create quick searches. Though this feature is not new, later versions of Firefox makes adding smart keywords easier. The details are here

Above, I set up a keyword search for JSTOR, using js. Basically you right click in the search box , select “Add a keyword for this search”, then in the dialog box choose a keyword, in the example above I choose “js”.

This basically setups a bookmark, which is recognized by Firefox. Libraries can offer bookmarks to be added by users to add smart keyword searches.

Once it is setup, you can do a search for Jstor, by typing js followed by your search terms (singapore river in the example below) in the address bar and clicking enter as shown below.

Personally I don’t recommend smart keyword searches as a method due to the following disadvantages

1. Works only in mostly Firefox.

Sadly this feature works only in Firefox. Internet explorer users can turn on this feature, but it’s not easy. Opera has essentially the same feature , while you can add a similar feature using keywurls or Safarikeywords

2.Not portable between different kinds of browsers

Sadly, as far as I know though these features look similar in Firefox, Opera and Internet explorer, they aren’t portable from one browser to another.

I.e if you create a smart keyword search in Firefox (which exists as a bookmark), moving it to opera does not get you the same feature (setting is stored in search.ini), neither does it work in Internet explorer (the setting is stored in the registry).

This is a lot more clumsy than opensearch plugins, where you can create one plugin for both Firefox and IE.

3. Memory load on users

Powerusers love the fact that you can quickly type the keyword and do a search in the address bar.  However most users will find such a method taxing on their memory.


So far all the methods mentioned Opensearch plugins , custom toolbars (Conduit toolbar , Google toolbar , Libx) , Smart keyword searches etc have one huge disadvantage, they don’t support Mac users who insist on using Safari!

Safari users are usually a small but vocal minority and possibly you might want to consider some way to include them. Besides keywurls or Safarikeywords , there are also Safari only methods such as AcidSearch and Inquistor.

But is there a way to support all users on all browsers?

In theory bookmarklets would be a way around this. Bookmarklets rely only on javascript, and I think it might be possible to create a search bookmarklet  that would work for IE, Firefox, Chrome, Opera and Safari.

Once created, all you need to do is to click on the bookmarklet, and it will pop up a dialog box to enter your search term. Other bookmarklet versions also allow you to highlight some text, click on the bookmarklet and it will search those terms highlighted.

To create a search bookmarklet, you can either use the method here (though the bookmarklet it generates might not work for all browsers) or modify an existing search bookmarklet like the one here which I verified to work for IE, Firefox, Chrome, Opera and Safari (according to the site).

The version here however does not offer the additional feature of copying text and then clicking the bookmarklet to search though. Anyone know of the correct javascript that will work for IE, Firefox, Chrome, Opera and Safari that includes this feature?


1. Requires no installation, light-weight

In many ways bookmarklets are as lightweight as opensearch plugins. Just add the bookmark, and it instantly works without the need to restart the browser (which is required for custom toolbars). Technical issues are likely to be less, though high security settings in IE might prevent the bookmarklet from working.

2.Supports all browsers

If you want to support as many browsers as you can with one method, search bookmarklets are your best hope.


1. Unable to support POST method?

It is possible in theory for bookmarklets to support post method , but I highly suspect it is not possible to make one that works for IE, Firefox, Chrome, Opera and Safari, but my skills are too poor to figure this out.

2. Limitation in length of bookmarklet for IE 6.

See the following page


This comes to end of my series on the four different ways to bring our library searches to the browser. We covered

1. OpenSearch (my review here)

2. Custom toolbars (my review here)

3. Smart keyword search  (covered in this post)

4. Bookmarklets (covered in this post)

Each method has their own strengths and weaknesses, but they all give users quick access to our library catalogues and subcribed databases. Personally, I think on the balance, OpenSearch plugins have the greatest potential, though support for users on older browsers (IE 6 and below) is lacking. However as time passes, such users will become a minority, but this still does not solve the problem of Safari users requring support.

Until Safari starts supporting Opensearch, the only workaround I might consider using is creating search bookmarklets.