Luckily, I was invited to have a look at the Zotero [1] private beta several weeks ago. Today I finally had time to take a look.
Very first impression: Wow.
Second impression: Ooh, sqlite!
Third impression: This is why we wrote unAPI [2], and COinS [3].
I love the idea and am all for it and want to get hacking at it. A few thoughts on what I want to add follow below.
But first, here's what I did on my first look around:
Bring in a reference from our local library catalog, presumably via screen scraping a la LibraryLookup [4]:
Bring in a book reference via worldcat.org [6], presumably through the COinS on the page:
Imported a swath of records from unalog [8] via its MODS export [9] function. Worked just fine, considering how the unalog MODS generation is a bit haphazard:
Pulled a reference out of CiteULike [11], presumably via a COinS:
Visited that reference through our local OpenURL resolver, which I'd configured by hand in Zotero's preferences:
I have a lot of little interface nits to mention but I won't presume that they're not all related to how awkward my brain remains at windows-navigation-shortcuts while using windows in OSX w/parallels. I wish items with a URL would allow linking back out through the url in the notes section at right.
Let's see how it does importing a 28Mb file of 10,000 MODS records derived from MARC... yknow, because I can. (Several minutes later...) Didn't work, but it still passes the test because (a) it's running in a lowish-memory virtual machine, and (b) nothing crashed. Failing silently is a good outcome. Especially because (c) it's their first beta release, and it's not even public yet.
I'd love to see Zotero become a unAPI consumer... I think this is in the works but I haven't checked in with them about it lately. In the meantime the first thing I'll do when I get time to poke around under the hood is look for this or where it should go, and see what it'll take to get going.
I want to be able to absorb my friends' Zotero databases and get updates. They've said they're working on this through some sort of central server-based mechanism for this, which makes sense.
My one concern about using sqlite is the concurrent-file-access issue. I'd like to write some code outside of Zotero that would use the sqlite file to expose OAI-PMH and OpenSearch interfaces. These should both be doable (last I checked multiple processes could read sqlite dbs safely, but only one can write safely). But, if I'm a remote user looking at my pal's Zotero through OAI-PMH or OpenSearch or Atom and I want to load some or all of their data into my Zotero, can I do it safely from outside of Firefox/Zotero? Probably not, today, though all of that presumably could happen on the consumer side strictly through web access, which might be enough, and even preferable.
I want to add zeroconf discovery so if I walk into a room with 28 other people using Zotero, I can bind in and metasearch/harvest all their data. And chat, too, but that's a whole other story.
In short - it's projects like these that take numerous ideas floating around and ground them in something practical that I can use right now that really wind my crank. The CHNM folks know their stuff -- they've worked on various flavors of this kind of app for years, and they're already most of the way to something lots of people could use today. I'll be keeping a close eye on it (especially because they asked me to!) and maybe you should too.
Links:
[1] http://zotero.org/
[2] http://unapi.info/
[3] http://ocoins.info/
[4] http://weblog.infoworld.com/udell/stories/2002/12/11/librarylookup.html
[5] http://www.flickr.com/photos/dchud/253426755/
[6] http://worldcat.org/
[7] http://www.flickr.com/photos/dchud/253426759/
[8] http://unalog.com/
[9] http://unalog.com/person/dchud/mods
[10] http://www.flickr.com/photos/dchud/253426765/
[11] http://citeulike.org/
[12] http://www.flickr.com/photos/dchud/253426768/
[13] http://www.flickr.com/photos/dchud/253426769/