<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>blyberg.net &#187; OPAC</title>
	<atom:link href="http://www.blyberg.net/tag/opac/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blyberg.net</link>
	<description>A library-geek blog</description>
	<lastBuildDate>Mon, 16 Nov 2009 04:10:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>eXtensible Catalog Partners Meeting</title>
		<link>http://www.blyberg.net/2007/02/11/extensible-catalog-partners-meeting/</link>
		<comments>http://www.blyberg.net/2007/02/11/extensible-catalog-partners-meeting/#comments</comments>
		<pubDate>Sun, 11 Feb 2007 16:32:55 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[eXtensible-Catalog]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[Rochester]]></category>
		<category><![CDATA[XC]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2007/02/11/extensible-catalog-partners-meeting/</guid>
		<description><![CDATA[I just got back from Rochester, New York, where it&#8217;s cold and snowy. But that fact didn&#8217;t do anything to put a chill on the impeccably hosted eXtensible Catalog partners meeting. The eXtensible Catalog (XC) is to be, potentially, an open-source product that arises from a grant given to the University of Rochester by the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/384987051/"><img src="http://farm1.static.flickr.com/126/384987051_01080ea092_m.jpg" style="padding-right: 15px" title="XC Partners Meeting" alt="XC Partners Meeting" align="left" border="0" height="180" width="240" /></a>I just got back from Rochester, New York, where it&#8217;s cold and snowy.  But that fact didn&#8217;t do anything to put a chill on the impeccably hosted eXtensible Catalog partners meeting.  The eXtensible Catalog (XC) is to be, potentially, an open-source product that arises from a grant given to the University of Rochester by the Andrew W. Mellon Foundation.  The grant itself is up for renewal in April 2007.</p>
<p>From the <a href="http://www.extensiblecatalog.info/">XC blog</a>:</p>
<blockquote><p>The principal investigator for the project is Ronald F. Dow, the Andrew H. and Janet Dayton Neilly Dean of River Campus Libraries, with co-principal investigators David Lindahl, director of digital initiatives; Jennifer Bowen, head of cataloging; and Nancy Fried Foster, lead anthropologist for the libraries.</p></blockquote>
<p>This first year of grant funding represents &#8220;Phase I&#8221; of the XC project, and one of the goals of that phase is to secure a number of partnerships for going forward.  That&#8217;s where the partners meeting came in.  In addition to getting a lot of valuable feedback from a group of about 30 people from a wide range of institutions, the XC project hopes to get a number of people to sign on to help the project itself with anything from consultation to actual development.</p>
<p>As a library geek, I had a hard time wrapping my mind around the scope and structure of the project until David Lindahl gave a technical overview of how the development process might work.  XC is to be a highly modular project centered around a common framework.  This will, hopefully, allow XC to be a ubiquitous product that works with any ILS.  It would be up to the XC partners (and perhaps, ultimately its users) to create the &#8220;plug-ins&#8221; necessary to make it work with a previously unsupported system.</p>
<p>I have to say that I <em>really</em> like the proposed structure that Dave talked about, and as I mentioned at the meeting, there are a number of projects that are currently striving to do similar things, but none of them have really thought to harness the potential of the open source &#8220;community&#8221; like XC does.  So I believe XC has a higher potential for success than some of the other projects like it.</p>
<p>That said, a number of very good issues were raised at the meeting.  Foremost among them was the issue of governance.  Who will ultimately be responsible or the project?  Will it stay in Rochester?  I think this issue, more than all others, is what made many of the other potential partners nervous.  That, and the fact that the XC project is still very early on in the design phase.  Justifying a commitment to the project is not easy for a lot of libraries.  That, of course, makes my blood pressure rise.  When I think about the fact that the prospect of working together with other libraries on a long-term project is a hard sell to library administrators, I get mightily frustrated.  Librarians seem to always want the &#8220;sure thing&#8221; even if it means settling for mediocre.  I&#8217;d much rather take a risk and go for the holy grail.  After all, it&#8217;s just time and money, right?</p>
<p>Not that I&#8217;m saying that XC is the holy grail.  Not at all, but, like I also mentioned at the meeting, XC is a lofty, idealistic vision for library catalogs.  I like idealism.  If we, as libraries, can get past our sanctimonious insistence that lofty goals are for careless upstarts, we might actually wind up with something we want, for a change.</p>
<p>So, who knows what the future has in store for XC.  It&#8217;s one of those projects that will succeed beyond all our wildest dreams if it gets the support it needs.  Or it could die on the vine due to lack of attention and care.  Kind of like the rest of us.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2007/02/11/extensible-catalog-partners-meeting/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dynamic item recommendations</title>
		<link>http://www.blyberg.net/2007/01/31/dynamic-item-recommendations/</link>
		<comments>http://www.blyberg.net/2007/01/31/dynamic-item-recommendations/#comments</comments>
		<pubDate>Wed, 31 Jan 2007 15:54:33 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Reccomendations]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2007/01/31/dynamic-item-recommendations/</guid>
		<description><![CDATA[So today, at AADL, we quietly rolled out dynamic item recommendations. That means that when you're looking at a catalog record, you'll be given Amazon-like recommendations ("Users who checked out this item also checked out these library items.."). This little feature uses data from our opt-in patron history system. Since we've been offering that system [...]]]></description>
			<content:encoded><![CDATA[<p>So today, at AADL, we quietly rolled out dynamic item recommendations.  That means that when you're looking at a catalog record, you'll be given Amazon-like recommendations ("Users who checked out this item also checked out these library items..").<a href="http://www.flickr.com/photos/jblyberg/375550585/"><img src="http://farm1.static.flickr.com/180/375550585_1157e702ca.jpg?v=0" border="0" height="158" width="500" /></a></p>
<p>This little feature uses data from our opt-in <a href="/2005/12/01/enhanced-patron-history/">patron history</a> system.  Since we've been offering that system for about a year now, we've been able to accumulate over 300,000 data points.  This is another great example of how to reuse your existing data to enrich use experience.  Like I've said before, you need to use the data you have to its full potential--even if it's not the data's primary purpose.</p>
<p>Ok, so let's look at the nuts and bolts of this.  I was able to cobble this together with two SQL queries.  Actually, I was able to get the same results with a single nested query, but for some reason, non-cached results took upward of ten seconds, so splitting the query seemed like the right thing to do.</p>
<p>Anyway..</p>
<div class="igBar"><span id="lphp-2"><a href="#" onclick="javascript:showPlainTxt('php-2'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-2">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$bibinfo</span> = <span style="color:#0000FF;">$xmlopac</span>-&amp;gt;get_opac_data<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$bnum</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$mattype</span> = <span style="color:#0000FF;">$bibinfo</span><span style="color:#006600; font-weight:bold;">&#91;</span>mattype<span style="color:#006600; font-weight:bold;">&#93;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$rec_uids</span> = db_query<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#FF0000;">"SELECT DISTINCT(uid) AS uid FROM iii_hist_data WHERE bnum = '$bnum'"</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$subcrit</span> = <span style="color:#FF0000;">''</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">while</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec_uid</span> = db_fetch_array<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec_uids</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec_uid</span><span style="color:#006600; font-weight:bold;">&#91;</span>uid<span style="color:#006600; font-weight:bold;">&#93;</span> != <span style="color:#0000FF;">$user</span>-&amp;gt;uid<span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$subcrit</span> .= <span style="color:#0000FF;">$rec_uid</span><span style="color:#006600; font-weight:bold;">&#91;</span>uid<span style="color:#006600; font-weight:bold;">&#93;</span> . <span style="color:#FF0000;">', '</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$subcrit</span> = <a href="http://www.php.net/substr"><span style="color:#000066;">substr</span></a><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$subcrit</span>, <span style="color:#CC66CC;color:#800000;">0</span>, -<span style="color:#CC66CC;color:#800000;">2</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$rec_bibs</span> = db_query<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#FF0000;">"SELECT DISTINCT(bnum), COUNT(bnum) AS total FROM iii_hist_data WHERE mattype = '$mattype' AND bnum != '$bnum' AND uid IN ($subcrit) GROUP BY bnum HAVING count(bnum)&amp;gt; 2 ORDER BY RAND() DESC LIMIT 5"</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>!db_num_rows<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec_bibs</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#616100;">return</span>; <span style="color:#006600; font-weight:bold;">&#125;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">while</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec</span> = db_fetch_array<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$rec_bibs</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#FF9933; font-style:italic;">// Do your business here</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>So basically, you can see what's happening here.  First I get an array of all the other users who have checked out this item.  Then I get a list of items that three or more of those people have checked out and display it randomly (so it's not always the same list).  Pretty easy, of course you need to grow that data before it becomes useful.  300,000 records makes the results pertinent, 300 does not.</p>
<p>If you're curious, head on over to AADL's <a href="http://www.aadl.org/catalog/">catalog</a> and test it out.. you might stumble on something new.</p>
<p>The next step, of course, in all this SOPAC business is to try to determine how check-out patterns are changing and whether it will have an impact on collection development.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2007/01/31/dynamic-item-recommendations/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>SOPAC, 4 days later.</title>
		<link>http://www.blyberg.net/2007/01/25/sopac-4-days-later/</link>
		<comments>http://www.blyberg.net/2007/01/25/sopac-4-days-later/#comments</comments>
		<pubDate>Thu, 25 Jan 2007 15:27:21 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[SOPAC]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[Social-OPAC]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2007/01/25/sopac-4-days-later/</guid>
		<description><![CDATA[A number of people have been curious about the type of reception aadl.org's social OPAC would get. I would say that it has been very well received by our community with a moderate level of participation. I just snapped this screenshot about five minutes ago of our tag cloud. As you can see, a real [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/368978406/"><img style="border: 0pt none; margin-right: 15px;" title="AADL Catalog Tags Cloud - 1/25/2007" src="http://farm1.static.flickr.com/156/368978406_cf179100e1_m.jpg" border="0" alt="AADL Catalog Tags Cloud - 1/25/2007" width="240" height="211" align="left" /></a>A number of people have been curious about the type of reception aadl.org's social OPAC would get.  I would say that it has been very well received by our community with a moderate level of participation.</p>
<p>I just snapped this screenshot about five minutes ago of our tag cloud.  As you can see, a real cloud is emerging.  But let's look at stats for a second.</p>
<p>As far as tagging is concerned, 330 tags have been entered.  97 catalog items have been tagged with 245 distinct tags.  27 people have put tags into our catalog.</p>
<p>Stats for reviews are a little smaller, probably because reviewing an items demands a greater time investment on the part of the user.  As of now, 21 reviews have been placed on 21 items by 16 people (4 of whom are staff members).  That's about an average of 9 per day.  I expect that will pick up as more users become aware of this service.</p>
<p>Of course, compared to a high-traffic social web site like <a href="http://www.flickr.com/">Flickr</a>, these stats are unimpressive, but for a single library, I think they are promising.</p>
<p>Library web site users tend to cross a wider spectrum of computer literacy, so the whole concept of reviewing and tagging may be completely alien to a lot of aadl.org's visitors.  We're in a little bit of uncharted territory here, so I'll be sure to do a number of updates as time goes on.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2007/01/25/sopac-4-days-later/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>AADL.org Goes Social</title>
		<link>http://www.blyberg.net/2007/01/21/aadlorg-goes-social/</link>
		<comments>http://www.blyberg.net/2007/01/21/aadlorg-goes-social/#comments</comments>
		<pubDate>Mon, 22 Jan 2007 03:43:49 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[SOPAC]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[Social-OPAC]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2007/01/21/aadlorg-goes-social/</guid>
		<description><![CDATA[I have a good excuse for dropping off the face of the biblioblogosphere for a month. It only took a year, but I finally got permission to go ahead with implementing what I've dubbed "The SOPAC" here at AADL. That would be "cute-speak" for Social OPAC. The SOPAC represents a slew of features that I've [...]]]></description>
			<content:encoded><![CDATA[<p>I have a good excuse for dropping off the face of the biblioblogosphere for a month.</p>
<p>It only took a year, but I finally got permission to go ahead with implementing what I've dubbed "The SOPAC" here at <a href="http://www.aadl.org/">AADL</a>.  That would be "cute-speak" for <em>Social OPAC</em>.  The SOPAC represents a slew of features that I've wanted to implement for quite some time now. I'm rather excited to see if library users will respond to these tools in an OPAC setting as much as Web 2.0 users have to commercial social networking sites.  I'm fairly confident they will.  Mainly, I'm relieved that I no longer need to talk conceptually about features I've been planning to build on top of the catalog.</p>
<p>So what is the SOPAC?  It's basically a set of social networking tools integrated into the <a href="http://www.aadl.org/catalog/">AADL catalog</a>.  It gives users the ability to rate, review, comment-on, and tag items.  The concept is nothing new, but the nature of our systems do not yield readily to this kind of retrofitting--something I plan to really start tackling in earnest, but that's a topic for another post.</p>
<p>If you're wondering (and didn't know already), AADL's automation system is III which recently released a software package called "Encore" that does some of what the SOPAC does.  We did not purchase it, nor do we intend to.  Instead we're going to use the money we saved to buy a Lexus. *grin*</p>
<p>Anyway, I've been messing around a bit with Snapz Pro, and thought that since this is a pretty big upgrade to AADL's site, I would include a screencast covering most of the new features.  So for those with 15 minutes or so to kill (ignore the screaming kids in the background):</p>
[See post to watch QuickTime movie](<a href="/downloads/jblyberg_sopac_1_21_07.mov">Download Movie</a> ~88 MB)</p>
<h2>SOPAC Features</h2>
<p><a href="http://www.flickr.com/photos/jblyberg/363134135/"><img style="padding-right: 15px" src="http://farm1.static.flickr.com/101/363134135_78d22b11df_m.jpg" alt="" align="left" /></a>The "front door" to the SOPAC is, of course, the main catalog search screen.  Drupal's API made development of this code relatively painless.  For example, the blocks on the right-hand side use Drupal's hook_block function, making the development of those blocks simply a matter of writing a function that would return the content.  In this case, the right-hand column contains search, tag, and review information.</p>
<p>Let's take a look at some of those blocks:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/363136507/"><img src="http://farm1.static.flickr.com/178/363136507_0fd4b0d7ff_m.jpg" alt="" /></a><a href="http://www.flickr.com/photos/jblyberg/363134132/"><img style="padding-left: 25px" src="http://farm1.static.flickr.com/145/363134132_d63e6295a4_m.jpg" alt="" /></a></p>
<p>These two blocks represent the contextual nature of SOPAC.  The first block appears in the regular SOPAC, while the second is displayed in the use management tools.</p>
<p>Here are some sample review pages:</p>
<p>Top of review page:<br />
<a href="http://www.flickr.com/photos/jblyberg/363136505/"><img src="http://farm1.static.flickr.com/132/363136505_59bf2e11e7_m.jpg" alt="" /></a></p>
<p>Reviews themselves:<br />
<a href="http://www.flickr.com/photos/jblyberg/363136508/"><img style="padding-left: 25px" src="http://farm1.static.flickr.com/128/363136508_726ac6a322_m.jpg" alt="" /></a></p>
<p>Public view of all my reviews:<br />
<a href="http://www.flickr.com/photos/jblyberg/363136511/"><img src="http://farm1.static.flickr.com/137/363136511_f092090071_m.jpg" alt="" /></a></p>
<p>Private view of all my reviews:<br />
<a href="http://www.flickr.com/photos/jblyberg/363134133/"><img src="http://farm1.static.flickr.com/146/363134133_4033e3a283_m.jpg" alt="" /></a></p>
<p>While writing a review, you can simultaneously add tags for the item you're reviewing.  Or you can simply tag catalog items without reviewing them.  Here are some same examples of the tag system:</p>
<p>Personal tag cloud (My tags in cloud-vew mode):<br />
<a href="http://www.flickr.com/photos/jblyberg/363134129/"><img src="http://farm1.static.flickr.com/181/363134129_cac87a0fd5_m.jpg" alt="" /></a></p>
<p>Personal tag list.  This is where users can manage their tags.  Delete, modify, view, etc.<br />
<a href="http://www.flickr.com/photos/jblyberg/363134131/"><img src="http://farm1.static.flickr.com/151/363134131_2a560e5f21_m.jpg" alt="" /></a></p>
<p>List of items in the catalog tagged with "dogs":<br />
<a href="http://www.flickr.com/photos/jblyberg/363136513/"><img src="http://farm1.static.flickr.com/99/363136513_5cb40f38f3_m.jpg" alt="" /></a></p>
<p>Feel free to visit the <a href="http://www.aadl.org/catalog/">AADL catalog</a> to tag and/or review some items.  You do need an account to create content, but you don't need a library card to get an account, so these features are not limited to cardholders in any way.</p>
<p>Because I feel that this version of AADL.org is a significant milestone, I've made a tarball of the source code publicly available for download.  Included in the tarball is our middle-ware "glue" that allows us to interface Drupal with the III server in addition to all the SOPAC code and supporting libraries.  Bear in mind that this code will definitely <strong>not</strong> work out-of-the-box but could definitely be made to work with any III server with XMLOPAC support.</p>
<p>You can download the package <a href="/downloads/SOPAC_1.0.tar.gz">here</a>, or from my <a href="/files/">files</a> section.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2007/01/21/aadlorg-goes-social/feed/</wfw:commentRss>
		<slash:comments>68</slash:comments>
		</item>
		<item>
		<title>PatREST to Include OCLC Audience Level Data</title>
		<link>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/</link>
		<comments>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/#comments</comments>
		<pubDate>Fri, 15 Sep 2006 13:31:17 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[Patron-REST]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/</guid>
		<description><![CDATA[I've updated AADL's PatREST interface to reflect an addition I've made to the PatREST specification (now 1.3). This addition takes advantage of OCLC's Audience Level indicator. OCLC makes this information available via an XML web service. From their service page: There are a variety of ways to characterize library materials. The type of reader believed [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/243854995/"><img src="http://static.flickr.com/97/243854995_cb68f16623_m.jpg" align="right" /></a>I've updated AADL's <a href="http://www.aadl.org/rest/record/1120526/">PatREST interface</a> to reflect an addition I've made to the PatREST specification (now <a href="/downloads/patrest_1.3_overview.pdf">1.3</a>).  This addition takes advantage of OCLC's <a href="http://www.oclc.org/research/projects/audience/default.htm">Audience Level indicator</a>.  OCLC makes this information available via an XML web service.  From their service page:</p>
<blockquote><p>There are a variety of ways to characterize library materials. The type of reader believed to be interested in a particular item is one. Such an indicator, generally known as the audience level, is potentially useful for a variety of activities, including the development of new ways to improve information relevance for retrieval, reference services (including readers advisory) and collection development. Audience-level filters could be implemented in existing retrieval systems to assist users in finding content based on their information needs.</p></blockquote>
<p>This is not the first OCLC service PatREST has taken advantage of.  PatREST has been incorporating data from OCLC's xISBN service for quite some time.  By pulling in the data they make available, the data PatREST is able to return becomes significantly more valuable.</p>
<p>Because AADL's PatREST implementation relies heavily upon III's XML server, I've added OCLC's Audience Level functionality to the PHP XMLOPAC class code which is freely available from my <a href="/files/">files</a> page or you can directly grab it right <a href="/downloads/iii-xmlopac-1.11.tar.gz">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Incorporating Google Books into the Hit-list</title>
		<link>http://www.blyberg.net/2006/08/24/incorporating-google-books-into-the-hit-list/</link>
		<comments>http://www.blyberg.net/2006/08/24/incorporating-google-books-into-the-hit-list/#comments</comments>
		<pubDate>Fri, 25 Aug 2006 00:09:57 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[Catalog]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[GoogleBooks]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[Sneaky]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/08/24/incorporating-google-books-into-the-hit-list/</guid>
		<description><![CDATA[So the folks over at Google Books think they can go ahead and incorporate our catalogs into their search, do they? Actually, that's fine, I have no problem with that, which means... They should have no problem with me incorporating Google Books into our hit-list. Right? Now when users search the AADL catalog, they will [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/224046958/"><img src="http://static.flickr.com/89/224046958_9f9ff92f6e_m.jpg" alt="" align="left" /></a>So the folks over at <a href="http://books.google.com/">Google Books</a> think they can go ahead and <a href="http://googleblog.blogspot.com/2006/08/finding-wealth-in-your-library-and.html">incorporate our catalogs into their search</a>, do they?</p>
<p>Actually, that's fine, I have no problem with that, which means... They should have no problem with me incorporating Google Books into our hit-list.  Right?</p>
<p>Now when users search the <a href="http://www.aadl.org/catalog">AADL catalog</a>, they will be given the option to peek inside the books on the hit-list--that is, if there is a record over at Google Books.  Basically, the first time that record is displayed in the list, the middleware queries Google Books to see if it has that item in its database.  If it does, the middleware makes note of that in a MySQL table so that the remote query doesn't need to be run again.  That way, future queries save time and bandwidth.</p>
<p>Looking at the Syndetics offerings next to it, this seems like a much richer and more useful resource.  Enjoy!</p>
<p><strong>** Update 1: 8/24/06 9:45 PM **</strong></p>
<p>Ha!  It looks like that was short-lived!  (Thanks to Ryan for giving me the heads-up), Google apparently doesn't return the favor:</p>
<blockquote>
<h1>We're sorry...</h1>
<p>... but your query looks similar<br />
to automated requests from a computer virus or spyware<br />
application.  To protect our users, we can't process your request<br />
right now.</p>
<p>We'll restore your access as quickly as possible, so try again soon. In the meantime, if you suspect that your computer or network has been infected,<br />
you might want to run a <a href="http://www.download.com/Antivirus/3150-2239-0.html"> virus checker</a> or <a href="http://www.download.com/sort/3150-8022-0-1-4.html">spyware remover</a> to make sure that your systems are free of viruses and other spurious software.</p>
<p>We apologize for the inconvenience, and hope we'll see you again on Google.</p></blockquote>
<p>And here I was, trying to be nice by caching the results...  Guess we'll have to wait for the API.</p>
<p><strong>** Update 2: 8/25/06 8:50 AM **</strong></p>
<p>So, I think I found a way to fix this.  Essentially, the way I was previously determining if Google Books has a record for and ISBN what by using this URL template:</p>
<div class="hl-surround" style="height:28px;"><div class="hl-main"><pre>http://books.google.com/books?vid=ISBN$isbn&amp;amp;printsec=frontcover&amp;amp;dq=isbn:$isbn</pre></div></div>
<p>Now I'm using a different URL that does not return 404:</p>
<div class="hl-surround" style="height:28px;"><div class="hl-main"><pre>http://books.google.com/books?as_isbn=$isbn</pre></div></div>
<p>If there was no record for that ISBN, Google would throw a 404.  I think the fact that one IP was requesting so many 404s is what spooked Google, not the retrieval rate.  Also, I noticed that I could no longer use wget on the command-line to grab the data--Google would return a 403 (Forbidden).  So, my thought was to ditch PHP's file_get_contents for CURL which allows you to spoof a user agent.  I took a peek at our apache logs and chose:</p>
<p>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6</p>
<p>So, instead of looking like a "virus or spyware", the script now appears, to Google, as an extremely zealous Google Books user.  We'll see how long it lasts, but it seems to be holding...</p>
<p><strong>** Update 3: 8/25/06 11:40 AM **</strong></p>
<p>No go, they've blocked us again.  I'm sending an email to the kind folks at Google Books, and we'll see if they reply.  Until then, I've got a few more tricks up my sleeve...  In the meantime, I'll leave the cached information active...</p>
<p><strong>** Update 4: 8/25/06 4:07:PM **</strong></p>
<p>Google scores major points in my book!  One of the managers over at Google Books just emailed me to say that he likes the idea of the hit-list links and that he is going to see if they can accommodate these types of queries.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/08/24/incorporating-google-books-into-the-hit-list/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>PatREST Enhancements &amp; Documentation</title>
		<link>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/</link>
		<comments>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/#comments</comments>
		<pubDate>Tue, 15 Aug 2006 17:13:00 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[Catalogs]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/</guid>
		<description><![CDATA[A couple of notes regarding the status of PatREST. First, two new functions have been added to the service. One provides access to tops (or popular items) lists. The other provides access to the new materials lists. I believe these are significant-enough additions to the service that they merit the 1.1 version number. The top [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of notes regarding the status of PatREST.</p>
<p>First, two new functions have been added to the service.  One provides access to tops (or popular items) lists.  The other provides access to the new materials lists.  I believe these are significant-enough additions to the service that they merit the 1.1 version number.</p>
<p>The top items query is scalable by result size and can be paginated, just like the search results.  In addition, it can be scoped by material type: books, cd, dvd, or bocd (books on CD).  When applied to the AADL XSLT, it looks something like this:</p>
<p><a href="http://www.aadl.org/rest/top/books/10/2"><img src="http://static.flickr.com/96/216038171_5565e7d45f_m.jpg"/></a></p>
<p>The new items query is similar to the top query in that it can be scaled by material type, size and be paginated.  You can also search new items using their subject headings--useful for querying those new knitting books, <a href="http://vielmetti.typepad.com/superpatron/">Ed</a>...  It looks something like this:</p>
<p><a href="http://www.aadl.org/rest/new/books/dogs/5/1"><img src="http://static.flickr.com/77/216038170_7a4cbb8fd0_m.jpg"/></a></p>
<p>Second, and probably more importantly, I've <strong>finally</strong> <a href="/downloads/patrest_1.1_overview.pdf">drafted a specification</a> for PatREST which includes an explanation of it's XML schema and some documentation for it's various functions.  It's about time, I know.  It can be found in the <a href="/files/">files</a> section, or downloaded <a href="/downloads/patrest_1.1_overview.pdf">here</a>. (PDF)</p>
<p>I'm not going to go in to too much detail about the two new functions in this post because the new documentation contains everything you need to know to get started with them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocialPACs, Community and&#8230; Sourdough.</title>
		<link>http://www.blyberg.net/2006/05/31/socialpacs-community-and-sourdough/</link>
		<comments>http://www.blyberg.net/2006/05/31/socialpacs-community-and-sourdough/#comments</comments>
		<pubDate>Wed, 31 May 2006 14:50:03 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[L2]]></category>
		<category><![CDATA[Library 2.0]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[Social]]></category>
		<category><![CDATA[Social-Software]]></category>
		<category><![CDATA[SocialPAC]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/05/31/socialpacs-community-and-sourdough/</guid>
		<description><![CDATA[An interesting, but low-key thread unfolded over at Panlibus earlier last week. I found it to be a good starting-point for a larger discussion about how Web 2.0 and Library 2.0 technology and software could come together in a cohesive manner, instead of the traditional ad hoc, piecemeal, vendor-driven method. In response to Hennepin's new [...]]]></description>
			<content:encoded><![CDATA[<p>An interesting, but low-key thread unfolded over at <a href="http://blogs.talis.com/panlibus/">Panlibus</a> earlier last week.  I found it to be a good starting-point for a larger discussion about how Web 2.0 and Library 2.0 technology and software could come together in a cohesive manner, instead of the traditional ad hoc, piecemeal, vendor-driven method.</p>
<p>In response to <a href="http://www.hclib.org/pub/">Hennepin's</a> new commenting capability, Talis's Paul Miller <a href="http://blogs.talis.com/panlibus/archives/2006/05/commenting_on_i.html">asks the question</a>, "Participation is an important part of moving forward. How much better might <em>shared</em> participation be?"  What he's talking about is allowing other libraries to access Hennepin's comments in an effort to provide a more enriching search experience beyond <a href="http://www.hclib.org/pub/">Hennepin's</a> OPAC, say, at Ann Arbor, or wherever.</p>
<p>What Paul goes on to propose in a <a href="http://blogs.talis.com/panlibus/archives/2006/05/responding_to_e.html">follow-up post</a> is a shared <em>collection</em>of user participation much like the UK's <a href="http://www.movinghere.org.uk/">archival project</a>.  This would provide a central database and, presumably a set of web tools to access and interact with the data.  Libraries anywhere in the world would have access to add and read content.  It would be a shared, collaborative clearinghouse of participation.</p>
<p>I'm all for it--but with some caution.  Isn't that what Amazon is now?  If you take away the e-commerce, Amazon is a collection of reviews, tags, and ratings on an insanely large amount of material.  Interesting?  Indeed.  Useful?  Of course.  But I feel the need to point out that libraries are community-based institutions.  They are supported by local taxpayers and are run, mostly, by members of the communities they serve.  As such, wouldn't we want any social element that is incorporated into our OPAC to reflect the tastes and opinions and personality of our community?  I think so, and so does <a href="http://www.superpatron.com/">Ed Vielmetti</a>:</p>
<blockquote><p>...here in Ann Arbor there are a lot of book readers, and it'd really be rather nice to read comments from people who shared the same town with you. If I want to read random untrusted comments from people all over the world there's already Amazon.</p></blockquote>
<p>I <a href="/2006/03/20/why-bother-the-impact-of-social-opacs/">mentioned</a> some of this a while ago, though never specifically addressed the local vs. global social data repository idea.  All this is not to say that <em>in addition</em> to community-driven social software we can't access and make use of a shared data store.  In response to a comment I made to Paul's <a href="http://blogs.talis.com/panlibus/archives/2006/05/responding_to_e.html">second post</a> on this, Fiona Leslie  made two <a href="http://blogs.talis.com/panlibus/archives/2006/05/responding_to_e.html">very good points</a> that she has seen come up repeatedly.</p>
<blockquote><p>1. Libraries have reading groups and staff who create reviews, and there is no mechanism for getting those reviews "available" beyond posting them on notice boards, or perhaps on the library's web pages. A few of them have an OPAC implementation that allows the reviews to be viewed in their OPAC.</p>
<p>2. Libraries have few or no reviews, but they see the value in having them, and would really appreciate a kickstart by having access to a shared repository of reviews created by other readers and staff in other areas.</p></blockquote>
<p>Ok, so I'll address each one separately.  First, she is absolutely right, there is no de facto method of integrating participation in to our OPACs.  This is compounded by the fact that our OPACs themselves tend to be unalterable beasts and we must rely on vendors themselves to make changes and enhancements to them.  Many of you who follow what I write here know that's a contentious issue for me, but I'll keep my hackles down for now and simply remind everyone that this is another reason to demand <a href="/2005/11/20/ils-customer-bill-of-rights/">a few basic rights</a> from our vendors.</p>
<p><a href="http://www.flickr.com/photos/jblyberg/153641359/"><img align="left" src="http://static.flickr.com/62/153641359_f878988ed2.jpg"/></a>But even if we did all have unfettered access to our OPACs, or were resourceful and persistent enough to subvert the plain vanilla foisted upon us, what would a socialPAC look like?  Fiona specifically mentions reviews, so lets stick with that for the purposes of this post.  Actually, let's not, because it doesn't matter what the implementation looks like--that's the fun part you and your development team get to mess about with when you do your redesign.  What's important is what we do with that review data after we get it and the value it adds to the process of searching for material.  I'd suggest that the data be made available via two conduits.  First would be the end-user interface.  That is, the website or application patrons use to both consume and produce the content.  How you weave this in to your OPAC is ultimately up to you (or... up to your vendor).</p>
<p>Richard Wallis weighed in ad responded to my comment.  He <a href="http://blogs.talis.com/panlibus/archives/2006/05/when_is_local_g.html">writes</a>:</p>
<blockquote><p>So what are my assumptions then? Well firstly, the contributions of the citizens of Ann Arbor would be of great use, interest, and value to a far wider audience than just their district. Secondly, contributions to any global pool should be tagged as to their source and type. Thirdly, because of that tagging, selection of results should be able to be via many filters such as library, library authority or institution, library type, country, language etc.</p>
<p>So following through those assumptions in John's situation, I would hope that contributions for my community would add value to the global pot; be displayable locally in isolation as a coherent set; and optionally could be supplemented by those from other appropriate communities around the country and the rest of the world.</p></blockquote>
<p>I suppose I was a little unclear in my comment on Panlibus.  I'd agree with Paul that, once the data is in, it would be nice to have a way to share it with other libraries. And I also agree with Richard that there is a place for supplementing existing data with a larger pool. In fact, I believe we have an obligation, as libraries, to do some manner of both.  I envision Ann Arbor's system providing a very lean web service on top of this entire system.  Using this model, we will be able to share our community-driven social data beyond our borders.  Libraries who do not enjoy the same community support that Ann Arbor, has will still benefit from the data.  I believe this distributed approach to generating and maintaining socialPAC data will ultimately offer both redundancy and diversity.  The thought of hundreds of libraries making their data available is certainly a more appealing alternative than that of the monolithic database.  Metadata itself is an archive--it tells a story.  </p>
<p>Fiona's other point was that kick-starting a service may be difficult, especially in communities that are not likely to respond to and prime a service like this.  Personally, I think we all might be surprised at the response that socialPACs will have with our constituents.  Almost everyone has an opinion, and most people want to share it.  That aside, however, Fiona is right.  There will be cases where social software is not successful, popular, whatever.</p>
<p><a href="http://www.flickr.com/photos/jblyberg/153739394/"><img align="right" src="http://static.flickr.com/73/153739394_5ec0d898f9.jpg?v=0"/></a>So how do you evaluate your own situation with respect to social social software?  Can your community sustain a socialPAC in perpetuity in a manner that will continually reflect a unique attitude and personality?  If it can, how do you get it started?</p>
<p>First, you're going to have to be honest with yourselves about the project itself.  Do you want to pursue social software because it's cool and hip, or do you really want to change the way your users interface with your collection in profound and personal ways while building a legacy at the same time?  You can get a good feel for the level of Web 2.0 participation your community engages in by using existing Web 2.0 services which often let you dial in on specific locales.  This may give you a good indication of whether a program like this might be a success.</p>
<p>If you're convinced that your community will support a socialPAC, the next step is to come up with a a design and interface concept that will truly let your existing catalog shine while providing all the Web 2.0 immersion people expect.  (easier said than done).  This is where the innovators need to step in and start coming up with tangible examples of how this might work.  I suspect that most libraries that do this will pursue a variation on a theme, but bear in mind that there are a lot of directions to take this stuff and in the end, it's the one-of-a-kind feature that will give your OPAC its fingerprint.  I suppose that vendors will dial in on the more popular and successful models and run with those.  I have no problem with that as long as they adhere to the Web 2.0 spirit.</p>
<p>What about the initial "jump-start"?  While I was writing this, my thoughts kept drifting to sourdough and I remembered a good friend of mine who, on occasion, liked to bake sourdough bread.  It was this person who introduced me to my first sourdough starter.  A shapeless blob that lives in your refrigerator and which, on occasion, you feed.  At any rate, he was telling me how some sourdough starters have very rich and colorful histories because they have been passed down, literally, through generations.  Some are closely guarded, while others have been disseminated and passed around liberally.  It's pretty fascinating.</p>
<p>But before I digress completely, Fiona's concern about kick-starting can be addressed if we make our metadata available to systems starting up.  Instead of one or two large repositories, however, wouldn't it be great if we could choose from hundreds and all we had to do was send a request against a web service to get started?  The tools are in place to allow this kind of interaction.  All it takes is a willingness to communicate and share.</p>
<p>I suppose I may be searching for blue sky here, but Web 2.0 gives us a chance to do things properly from the beginning.  Ultimately, the successful system will be rich with good data and useful to your patrons.  The deeper significance of a unique repository will not emerge right away, but in time, you'll see how data, like buildings themselves, can add to the legacy of a place.  Make it available to the larger library community and we'll see some very interesting things, indeed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/05/31/socialpacs-community-and-sourdough/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>III XMLOPAC: findings, promise, and a little relief</title>
		<link>http://www.blyberg.net/2006/03/31/iii-xmlopac-findings-promise-and-a-little-relief/</link>
		<comments>http://www.blyberg.net/2006/03/31/iii-xmlopac-findings-promise-and-a-little-relief/#comments</comments>
		<pubDate>Fri, 31 Mar 2006 21:16:49 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Code4Lib]]></category>
		<category><![CDATA[DomDocument]]></category>
		<category><![CDATA[MARC]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SRU]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XMLOPAC]]></category>
		<category><![CDATA[XSLT]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/03/31/iii-xmlopac-findings-promise-and-a-little-relief/</guid>
		<description><![CDATA[Ryan Eby has done what III seems to not be able to do: Create a resource for XMLOPAC users. He's thrown up some wiki pages with the express purpose of documenting III's XMLOPAC. All I can say is, "Thank-you Ryan!" Be sure to participate and help with the documentation--we can all benefit from it. In [...]]]></description>
			<content:encoded><![CDATA[<p><img align="left" src="/wp-content/images/xmllogo.jpeg"/><a href="http://blog.ryaneby.com/">Ryan Eby</a> has done what <a href="http://www.iii.com">III</a> seems to not be able to do:  Create a resource for XMLOPAC users.  He's thrown up some <a href="http://wiki.lib.muohio.edu/xmlopac/index.php/Main_Page">wiki pages</a> with the express purpose of documenting III's XMLOPAC.  All I can say is, "Thank-you Ryan!"  Be sure to participate and help with the documentation--we can all benefit from it.</p>
<p>In addition, Ryan has written up a couple great how-to's on getting <a href="http://blog.ryaneby.com/archives/iii-item-data-from-xmlopac/">item data</a> and <a href="http://blog.ryaneby.com/archives/iii-featured-lists-from-the-xmlopac/">featured lists</a> from the XML.  I, for one, had no idea it was possible to grab featured lists this way.  Ryan Eby has been documenting III's XMLOPAC for quite some time now and he's certainly one of only a handful of authoritative voices on the feature.</p>
<p><a href="http://public.csusm.edu/dwalker/">David Walker</a> is another, and a very industrious voice at that.  Today I had a good chat with him on the <a href="http://www.code4lib.org">Code4Lib</a> <a href="http://www.code4lib.org/irc/faq">IRC channel</a> after he showed me his <a href="http://library.csusm.edu/catalog/sru/example/">totally amazing catalog</a> based off his equally cool <a href="http://library.csusm.edu/catalog/sru/">Shrew project</a>.  What he's been doing is <i>exactly</i> what I've been looking for.  Even though the Shrew project is currently written in C#, he has plans to port it to PHP5, taking advantage of <a href="http://us2.php.net/manual/en/ref.dom.php">DomDocument</a>.  It's a project I'm completely willing to commit some time to myself, if he asks.  The shrew project is "a system that converts the Innovative XML Server into an SRU/SRW and OpenSearch server."  He's put a great deal of time into writing XSLT that will translate the III server's output into MARC-XML, Dublin Core, or MODS 3.0.  My <a href="/files">XMLOPAC class</a> for PHP5 utilizes an older version of his MARC-XML XSLT, but I think when he pulls off this port, the need for my code will go away altogether--his way is preferable.</p>
<p>We also discussed some inherent problems with III's XMLOPAC--of which there are a number, and some potential enhancements.  Chief among them would be the ability to conduct business--placing items on hold and such.  A lot of work needs to be done, but I'm feeling much more optimistic about my OPAC aspirations now and, thanks to David and Ryan, a renewed sense of enthusiasm.  Thanks guys!</p>
<p><strong>[update]</strong> Ryan reminded me that <a href="http://foam.lib.muohio.edu/blog/">Rob Casson</a> is the individual who was kind enough to provide hosting for the wiki <strong>[/update]</strong></p>
<p>[tags] OPAC, XMLOPAC, XML, XSLT, Library, Code4Lib, PHP, C#, SRU, MARC, DomDocument, Web Services [/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/03/31/iii-xmlopac-findings-promise-and-a-little-relief/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Find the edge, push it</title>
		<link>http://www.blyberg.net/2006/03/22/find-the-edge-push-it/</link>
		<comments>http://www.blyberg.net/2006/03/22/find-the-edge-push-it/#comments</comments>
		<pubDate>Wed, 22 Mar 2006 20:12:47 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[innovation]]></category>
		<category><![CDATA[Library 2.0]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[policy]]></category>
		<category><![CDATA[SirsiDynix]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/03/22/find-the-edge-push-it/</guid>
		<description><![CDATA[Back in February, I participated in a SirsiDynix Institute round table with Steven Abram, Michael Stephens and Michael Casey. I thoroughly enjoyed the experience, but I came away with the impression that we'd barely scratched the surface on a number of questions Steven asked. Time was limited and the format and venue just didn't accommodate [...]]]></description>
			<content:encoded><![CDATA[<p>Back in February, I <a href="http://www.dynix.com/institute/seminar/index.asp?sem=20060222">participated</a> in a <a href="http://www.dynix.com/institute/">SirsiDynix Institute</a> round table with <a href="http://stephenslighthouse.sirsi.com/">Steven Abram</a>, <a href="http://tametheweb.com/">Michael Stephens</a> and <a href="http://www.librarycrunch.com/">Michael Casey</a>.  I thoroughly enjoyed the experience, but I came away with the impression that we'd barely scratched the surface on a number of questions Steven asked.  Time was limited and the format and venue just didn't accommodate everything that could have been said.  That, of course, is one of the reasons why we have blogs: to follow-up and extend.</p>
<p>One of the questions posed to the panel was, <i>where can Library 2.0 make a difference now?  Where is the action?</i></p>
<p><a href="http://www.flickr.com/photos/jblyberg/115568116/"><img align="left" src="http://static.flickr.com/39/115568116_e0aa7e84a9_m.jpg"/></a>I had mentioned four particular areas where I thought L2 could be a change agent: <b>technology, policy, programming, physical spaces</b>.  It's important to note that these four areas of change are in no way inherently "library 2.0"--just a part of the conversation.  I think it's also important for me to admit that beyond technology, I really cannot write with any authority about policy, programming, or physical spaces, but I can identify good elements in each and voice an my opinion as to what <i>I</i> believe is good practice in each realm.</p>
<p>It's difficult to have a conversation about <i>what's new</i> in librarianship these days without bumping into terms like RFID, blog, wiki, and IM.  There's little doubt that <b>technology</b> is poised to play a defining role in the future of librarianship.  The question is how, to what degree, and what will it look like?  I certainly see perils--some of which have already manifested themselves, *cough* .. RFI .. *cough* D ... I think we run the risk of chasing our tails in a frenzied loop, driven by tech for tech's sake.  Always remember that when considering new technology, be mindful of "the process"--your existing methods and how new technology will impact it.  After all, we share a <i>relationship</i> with technology, we don't own it.  If we're unrealistic about that relationship and where it's going to go, we run the risk of burning ourselves in a flash of limerent  passion.</p>
<p>So, what is the good stuff?  As always, my response is, "that depends".  Lately I've been beating the OPAC drum because I believe it's a fundamental library tool that's being neglected and passed over for more interesting or <i>hip</i> technologies.  I believe in the socialPAC--we'll see where that goes, though.  Michael Stephens does an <a href="http://www.dynix.com/institute/seminar/index.asp?sem=20060215">inordinate amount of work</a> trying to get libraries to adopt blogging.  We've realized some very positive returns from our blogging initiative at <a href="http://www.aadl.org/">AADL</a>.  In less that a year, we've managed to accumulate a sizable archive of quality content that belongs to us and invites community involvement.  The model works and it adds tremendous value to our organization.</p>
<p>APIs have become vogue and we're seeing both the term and the technology itself sink into the library vernacular--at least in the blogosphere among library techies.  I think the fact that we've witnessed some real successes with technologies like mashups, metadata and microformat-based tools has given rise to a general acceptance that the API is a critical business tool.  I'm keen to see what arises from projects like <a href="http://unapi.info/">unAPI</a> and <a href="http://www.exlibrisgroup.com/sfx_openurl.htm">OpenURL</a>.  The idea here is to get away from technology that no longer works well, or doesn't live up to today's computing standards.</p>
<p>I don't want to speak much on hardware, because that is a bit of a sticky wicket.  The problem with hardware is that it's always there and I really don't believe that hardware provides as much ROI as the judicious use of software can.  As long as you have the right hardware for the job and enough power to drive your applications, you're set.  That's not to say that we shouldn't be experimenting and researching ways to use new hardware--we just need to be careful because  hardware vendors often promise one thing while practicality demonstrates another--tablet PC, anyone?</p>
<p>I'm grateful to the administrators who toil over <b>policy</b> development.  Well, I'm grateful to them when they produce policy that makes sense!  I've always been of the opinion that if the majority of people ignore a particular policy, it's bad--I think there is a little bit of acknowledgement of that going on these days as we look around and see a number of institutions relaxing rules and taking the opportunity to foster environments that are more inviting and less punitive.  AADL, for example, now allows patrons to enjoy a beverage anywhere in the library so long as it has a lid.  The old stereotype of the cranky librarian shushing anyone who dares to converse above a whisper is slowly eroding.  I'd like to see fines disappear--some libraries are adopting very lax fine policies.  Fines do nothing but scare off potential users and disenfranchise those who have accrued a balance.  Friendly phone calls ought to accompany invoices.  Your facilities could have all the right components for an immersive library experience, but if the policies are suffocating, expect users to go elsewhere.</p>
<p>While we're at it, reconsidering organizational structure is not a bad idea.  My guess is that a more Google-like approach to staffing <i>in key areas</i> may help foster innovation.  In other words, libraries might benefit from flattening out the organization structure of its employees in areas where new ideas are being developed and tested.  Staff members need to have a realistic sense that they can approach anyone else in the organization with ideas and proposals instead of scheming up ways of floating them through layers of bureaucracy with the fear that they may be trampling on someones toes.  Bureaucracy is an innovation killer.</p>
<p>Good policy can also pave the way for radical transformation in <b>programming</b>.  In addition to the regularly-scheduled programs like story times and computer classes, I'm continuously impressed with the quality of guest speakers and other events our community relations department puts together.  Programming is such an important tool for reminding your community that the library is alive, full of hope and opportunity.  Lately, with the addition of gaming juggernauts like <a href="http://www.aadl.org/aadlgt">AADL-GT</a>, we're seeing an upsurge in the amount and quality of teen programming in libraries everywhere.  Teen programming is tremendously vogue right now and is vital to the fiscal health of our libraries in the future.  We ought to be hiring and encouraging the very best teen librarians we possibly can right now--they need to be courageous, energetic visionaries, much like our own Erin Hemlrich (who ought to be blogging!).  Courageous, because aside from the perceived taboos that need to be broken in order to get teens excited about the library, getting teens excited is not easy--it takes guts to engage those hypercritical hormone-factories.  Gaming programs have a huge potential for return, if done right.  <a href="http://ulo.tricho.us/">Eli Neiburger</a> and Erin have put together a gaming initiative that would knock your head off if you saw it--it's so good that it actually <i>impresses</i> the kids who come to it.  And come they do--well over a hundred participants often show up for events.</p>
<p>Programming is also receptive to the adaptation of new technologies.  Creative and judicious use of streaming audio/video, VoIP, wifi, electronic signage, even our own existing databases can yield results that look highly produced and professional.  Attention to detail and a mindset that demands quality will create a product that our users will respect, and in turn, they will feel respected by us.  True, money plays into a lot of these programs, but not always, and not as much as one might expect by looking at the finished product--be wily and get it done right!</p>
<p><a href="http://www.flickr.com/photos/jblyberg/115863662/"><img align="right" src="http://static.flickr.com/49/115863662_305f496f62_m.jpg"/></a>We've just successfully opened the new Pittsfield Branch Library--the latest addition to the AADL system.  It's a beautiful library--my favorite so far.  In addition to bright, airy, open stacks and a quiet reading room with a fire place that overlooks protected wetlands, it features a generous kids area replete with toys and game computers.  Also, directly in the center of the building is an interactive <a href="http://en.wikipedia.org/wiki/Bernoulli%27s_principle">Bernoulli</a> machine exhibit--a joint venture between AADL and the <a href="http://www.aahom.org/">Ann Arbor Hands-On Museum</a>.  The exhibit allows visitors (mostly the children) to press a pneumatic button that launches balls up a 20 foot tube where they are shot out into a spiral funnel that winds the balls back down another tube into a collection chamber with a spinning disc that sends the balls careening over buttons that light up various panels.  The balls then fall back into a pinball-like queue where they can be launched, once again.  It's really quite impressive.  I also think it was a courageous move to put it in there due to both it's size and the amount of activity that it garners.  It's definitely a draw for the 2-8 year-old crowd!</p>
<p>The point here is that <strong>physical space</strong> plays a major role in defining both the mission and purpose of libraries.  I'm glad to see that larger and larger areas are being devoted to youth and teens.  Having those resources brings in the stay-at-home parents with their children and starts a process of acclimation that primes the pipeline with future (tax-paying) patrons.  Clean, accessible and uncongested computer rooms are essential to providing connectivity to those who may not have it at home, or who may not even have a home (we ought to be thinking about programming for the homeless, as well).  Book stores have coffee shops, libraries should too, with free wifi so that the Borders down the street doesn't steal our business.</p>
<p>Okay, so I've taken a few scribblings and turned them into a long-winded brain-dumpish post.  What can I say, I love what I do, and I believe that libraries are an oasis.  Like most everyone else, I think we can do better.  If nothing else, "Library 2.0" reminds us that it's an exciting and challenging time to be a library.</p>
<p>[tags]library, libraries, Web 2.0, Library 2.0, SirsiDynix, OPAC, innovation, technology, policy[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/03/22/find-the-edge-push-it/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Why bother: the impact of social OPACs</title>
		<link>http://www.blyberg.net/2006/03/20/why-bother-the-impact-of-social-opacs/</link>
		<comments>http://www.blyberg.net/2006/03/20/why-bother-the-impact-of-social-opacs/#comments</comments>
		<pubDate>Mon, 20 Mar 2006 05:05:08 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[Librarians]]></category>
		<category><![CDATA[Library 2.0]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[search-engines]]></category>
		<category><![CDATA[Social-Software]]></category>
		<category><![CDATA[Tagging]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/03/20/why-bother-the-impact-of-social-opacs/</guid>
		<description><![CDATA[I was reading a trackback the other day to my post, Library 2.0 websites: where to begin from Michael Dunne. He makes several very good points, but one, in particular, caught my attention as something I really haven't articulated yet to myself or others. On the subject of the social OPAC, he writes: I have [...]]]></description>
			<content:encoded><![CDATA[<p>I was reading a <a href="http://www.michaeldunne.me.uk/?p=46">trackback</a> the other day to my post, <a href="/2006/03/12/library-20-websites-where-to-begin/">Library 2.0 websites: where to begin</a> from <a href="http://www.michaeldunne.me.uk/">Michael Dunne</a>.  He makes several very good points, but one, in particular, caught my attention as something I really haven't articulated yet to myself or others.  On the subject of <i>the social OPAC</i>, he writes:</p>
<blockquote><p>
I have to confess I think he may be right, our library web sites are not places where you want to spend any time, and our OPACs are not fun places to be either. But then again, why should they be? Why should our library web site be a place where our students want to spend time? Is there something missing from their university experience that only our web site can provide? Why this fear, this sense that, unless we soon get up to speed we are all doomed?
</p></blockquote>
<p>First, I want to be clear that I don't think we are doomed if we choose not to implement social software in our OPACs.  Libraries will not cease to function if we don't address the shortcomings of our online catalogs.  It <i>is</i> very clear to me, however, that the OPAC is an empty vessel, waiting to be filled.  Since their inception, OPACs have done the job intended by usurping the card catalog with stoic efficiency.  Let's be honest, though and admit that something special slipped out into the ether when those large, cumbersome drawers were toted out and replaced by luminescent portal we now know as the catalog station.  That's just the way it goes.</p>
<p>Much of what we lost was not due to function, but to form.  Nothing will replace the look, feel, and smell of a dusty, old, age-cured card catalog, but it's been a decade, or two since we made the switch and I think it's okay to consider making our OPACs special.  <img align="left" src="/wp-content/images/socialpacomm.png"/>We've got a unique opportunity now as the planets of technology, internal discussion, and market penetration align.  Perhaps now is the time to overcome institutional inertia and do something unexpected, if not radical.  A social element belongs in the OPAC, our users are waiting for it and they'll soak it up like sponges if we give it to them.  Web 2.0 provides both technology and a cauldron of ideas as to how to apply it.  At the same time, a conversation that was once a distant murmur is gathering strength and it promises to disrupt policies and attitudes libraries have, for so long, conditioned themselves to be reflexive about.  The public, meanwhile, has become inured with technology and complexity.</p>
<p>Let's not forget the role <i>libraries</i> play in a community.  Perhaps the view from inside sometimes is only a view of ourselves reflected back at us, when in fact, the truth is that the public comes to us in need. Sometimes that need is small, casual.  Sometimes it's the type of need that transcends record authority and can only be redressed by another in similar need.  Are we really the final say on what the best resources are if someone wants help with <a href="http://www.aadl.org/cat/seek/?ue=search%2FXteen%2520pregnancy%26searchscope%3D26%26m%3D%26SORT%3DD%2FXteen%2520pregnancy%26searchscope%3D26%26m%3D%26SORT%3DD%2F1%252C7%252C7%252CB%2Fframeset%26FF%3DXteen%2520pregnancy%26searchscope%3D26%26m%3D%26SORT%3DD%261%252C1%252C">teen pregnancy</a>, <a href="http://www.aadl.org/cat/seek/search/X?domestic%20abuse&#038;searchscope=26&#038;m=&#038;SORT=D">domestic abuse</a>, or <a href="http://www.aadl.org/cat/seek/search/X?cystic%20fibrosis&#038;searchscope=26&#038;m=&#038;SORT=D">cystic fibrosis</a>?  Can all of our collective training tell that needful person exactly what material best suits their situation?</p>
<p>Of course not.  Our OPACs cannot be the golden kiosks we all want, but by inviting participation in the stewardship of a community resource, we can begin to build unique meta-collections that slide value, pertinence, and humanity into the search process.  It may be that in that moment when a patron is about to turn away from the library, something catches their eye--a tag, a comment, some marginalia, perhaps, that puts the patron in front of the material they truly need.</p>
<p>The key component in growing social OPACs is community.  Once you put the community you service into the process of delivering content back out into the very same community, you initiate a loop that will become exponentially richer over time as those neural connections glom on to each other.  Findability is not the goal, but the activity and the experience which is why I say that OPACs have the potential to be fascinating places to visit and browse.  They will not embody the comforting, muffled presence of the old card catalog.  No, they'll be their own individual entities--borderless, shapeless creatures that somehow <i>fit</i> the people they represent.</p>
<p>That's a goal truly worth striving for.</p>
<p>[tags] library, librarians, library 2.0, web 2.0, OPAC, tagging, social software, search engines [/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/03/20/why-bother-the-impact-of-social-opacs/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Library 2.0 websites: Where to begin?</title>
		<link>http://www.blyberg.net/2006/03/12/library-20-websites-where-to-begin/</link>
		<comments>http://www.blyberg.net/2006/03/12/library-20-websites-where-to-begin/#comments</comments>
		<pubDate>Sun, 12 Mar 2006 14:24:06 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[L2]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web-Design]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/03/12/library-20-websites-where-to-begin/</guid>
		<description><![CDATA["This is my website. There are many like it, but this one is mine..." Much has changed in the last year with respect to the notion of a "library website". It's as though the clear, glassy surface of a morning bay has been turned and cast about by steel, unforgiving turbines. Many unsuspecting libraries are [...]]]></description>
			<content:encoded><![CDATA[<p><img align="left" src="/wp-content/images/oneappleout.jpg"/>"This is my website.  There are many like it, but this one is mine..."</p>
<p>Much has changed in the last year with respect to the notion of a "library website".  It's as though the clear, glassy surface of a morning bay has been turned and cast about by steel, unforgiving turbines.  Many unsuspecting libraries are now caught in that turbulent wash, casting about for something, anything to hold on to as they begin the daunting task of "the redesign".  The problem is, where do we even begin? If there was no gold standard before, there still is none, but we now acknowledge two things:  Traditional library websites drain the life-force from patrons.  Our OPACs finish the job.</p>
<p>So where do we go from here?  Is there anything, anything at all we can use as a <i>modus operandi</i> as we, once again, begin the process of re-provisioning the obligatory library website?</p>
<p><img align="right" src="/wp-content/images/web5points.png"/>Let me suggest five directives that may help get your creative minds turning.  I want to talk about these not only because they represent common sense, good design, and patron convenience, but also because by using these directives as a kernel in your new project, you are sure to come out the other side feeling highly rewarded and sporting a new website that will invigorate your inner-geek for years to come.</p>
<p><strong>Social software</strong>, as you are probably aware, was born of the read/write web.  Partially due to persistent connections, newer software, higher bandwidth, and plain old human acceptance of the machine, the social web is a beautiful lace spun with minds, machines, and information.  It is who we are as humans--it is community. just like the public library is community.  So to ignore social software in the context of our library websites, is to ignore our communities.  We need to find a prominent place on our mantle for it and ensure that our websites invite humanity in and give it right back.  The point here is to extend the boundaries of the library, perhaps blurring the edges like watercolor so we're not quite sure where the library ends.</p>
<p>There are many ways to incorporate social software into your sites, not the least of which is the use of mash-ups, or the judicious use of an <strong>open source</strong> database like MySQL in conjunction with a little PHP, running on Linux, served up by Apache. <img align="left" src="/wp-content/images/opensource-110x95.png"/>Adopting open-source platforms and technologies in a library is not just financially beneficial.  Philosophically, it's the right thing to do.  We ought to be developing on open-source then turning around and making our work freely available to one another.  We <i>are</i> libraries after all, we ought to act like it, not just in the stacks and at the circulation desks, but in the server rooms and IT departments as well.  Don't forget the intrinsic benefits of supporting and pursuing an open sourced development program. Eric Raymond writes in The Cathedral and the Bazaar:</p>
<blockquote><p>...we have fun doing what we do. Our creative play has been racking up technical, market-share, and mind-share successes at an astounding rate. We're proving not only that we can do better software, but that joy is an asset.</p></blockquote>
<p>Joy truly should be an asset as you continue to plug away at your web project.  If it is, the final product will reflect it.  Open source allows success to be contagious as code is reused, changed, improved, forked, spawned into radical new ideas.  That sounds like something a public library ought to be involved with, doesn't it?</p>
<p>I think it's time libraries took the notion of <strong>single sign-on</strong> seriously.  We need to get away from the model where patrons are required to have their library cards handy every time they reserve an item. Who wants to have one set of credentials to access the OPAC and yet another to make a blog comment, or fill out an ILL request?  Why not be like the rest of the world and simply require a username and password?  Let me take this one step further, as well, and suggest that your new websites support <i>session-based</i> single sign-on--a useful little bit of web technology that has been around since, well, almost forever.  When I create an account on a site I use frequently, I expect that I'll not have to keep re-entering my password every time I visit.  Otherwise, I won't be visiting that site very frequently.  </p>
<p>Single sign-on is not just about convenience, either.  A unified user management system is a vital ingredient in the foundation of a cohesive online experience.  Think about what your users will be doing, especially in light of the fact that you're going to implement all those great social software features.  As I've mentioned before, the library website can be so much more than just a resource--it can, and should be a destination--a community touchstone.  You can't do that if there is a functional disconnect between what you're offering and how you're offering it.  </p>
<p>Single sign-on will prove to be a more difficult implementation than you may be thinking at the moment.  As you scratch the surface, you'll see why, what will all the disparate software you'll be gluing together.  After all, it's not like our vendors are going out of their way to offer and support <strong>open standards</strong>.  We ought to, of course, for many of the same reasons I've outlined for open source.  <img align="left" src="/wp-content/images/w3c_home.png"/>Open standards, however, gives us the flexibility both internally and externally to promote vital services in a timely and easily accessible manner.  That sounds good, right?  Adopting W3C standards will ensure that we've provisioned for any eventuality.  Need to export? No problem.  Someone wants to get Greasemonkey all up in your site?  Go right ahead, Ed.  RSS feeds?  Absolutely essential.  Want to offer a web services front-end to your OPAC?  Why not use SOAP and throw in some WSDL so that potential coders can hit the ground running? Open standards, open minds, open doors.</p>
<p>Then there's the white elephant.  Your OPAC--that malignant growth that looks nothing like the rest of your site and appears to have been coded by a CS 101 student who is contemplating switching majors to say, English.  Insist on an <strong>integrated OPAC</strong>.  Again, this may be a technical challenge, but nothing is impossible.  If you find a way to tame the beast, you're going to completely transform the way your website operates.  Ideally, the OPAC should be embedded inside the framework of your site so that you have access to all the site data and functionality during page parse.  Once you've got control over what, where and when your OPAC displays, you'll find that a world of opportunity has opened up to you.  While pondering a way to achieve this, you may find yourself, again, at your vendor's doorstep, whimpering, "please sir, may I have some more?"  Unless the request is in an RFP, however, good luck.  All we can do is chip away at them, in the meantime, there are ways of getting around that technical hurdle, but they probably require a programmer--a position libraries should consider adding anyway.</p>
<p>All this is an oversimplification of an arduously complex process, I confess.  Sometimes, however, when you're not sure where to begin, it helps to consider all your options within a set of parameters.  If I were to launch into a library website project right now, these are the "must-haves" I'd start with.  For my part, these comprise an ideal that will stand a project in good stead as we continue to cast about in a 2.0 world.</p>
<p>[tags]Library, Libraries, L2, Web Design, OPAC, Development, Programming, Coding, PHP, HTML, HTTP, AADL[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/03/12/library-20-websites-where-to-begin/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
	</channel>
</rss>
