<?xml version="1.0" encoding="iso-8859-1"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en">
  <title>Information Management Weblog</title>
  <link rel="alternate" type="text/html" href="http://www.karlnelson.net/" />
  <modified>2005-08-02T04:26:49Z</modified>
  <tagline>The Information Management Weblog, maintained by Karl Nelson, covers a variety of information related topics, including content management, knowledge management, web development, and anything else that looks interesting.</tagline>
  <id>tag:www.karlnelson.net,2005://1</id>
  <generator url="http://www.movabletype.org/" version="2.661">Movable Type</generator>
  <copyright>Copyright (c) 2005, Karl</copyright>
  <entry>
    <title>AJAX and Back Buttons</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000947.html" />
    <modified>2005-08-02T04:26:49Z</modified>
    <issued>2005-08-01T21:26:49-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.947</id>
    <created>2005-08-02T04:26:49Z</created>
    <summary type="text/plain">Paul Holder wrote in about a post I wrote a month and a half ago, Ajax, InnerHTML, and the back button. Paul came up with a nifty little solution involving cookies, javascript, and a random number. Go give it a read......</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Paul Holder wrote in about a post I wrote a month and a half ago, <a href="http://www.karlnelson.net/weblog/000936.html">Ajax, InnerHTML, and the back button</a>.  Paul came up with a nifty little <a href="http://www.pohodo.com/webdev/back_button_fix.html">solution</a> involving cookies, javascript, and a random number.  Go give it a read...</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Quasi-management observations from my recent vacation.</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000946.html" />
    <modified>2005-07-30T23:01:02Z</modified>
    <issued>2005-07-30T16:01:02-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.946</id>
    <created>2005-07-30T23:01:02Z</created>
    <summary type="text/plain">Some thoughts that popped into my head during my recent trip to Hawaii: Authenticity is really important, and often hard to find. Hawaii is, as far as I can tell, pretty much overrun by tourists, and thus you often had to look at somewhat hard to find people who are genuine. I guess the experience that stands out the most was a sailboat ride we took. The skipper, who had clearly done this trip hundreds or thousands of times, had his script memorized: he had a snappy comeback for every question, which he half-heartedly delivered. Were the jokes funny? Yes. But there just wasn&apos;t any sort of personal connection, mostly because it didn&apos;t feel like he was real. Now, I&apos;m not so naïve to think that being authentic in this situation is easy, but I do believe that it is possible and ultimately vital for successful user experiences. I contrast this with another tour we took, this time at Surfing Goat Dairy. Two German ex-pats run this very nice little goat farm in the middle of Maui, and they offer tours and tastings. I&apos;m sure they&apos;ve been through plenty of tours in the years they&apos;ve been open (but probably less...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Some thoughts that popped into my head during my recent trip to Hawaii:</p>

<p><h3>Authenticity is really important, and often hard to find.</h3></p>

<p>Hawaii is, as far as I can tell, pretty much overrun by tourists, and thus you often had to look at somewhat hard to find people who are genuine.  I guess the experience that stands out the most was a sailboat ride we took.  The skipper, who had clearly done this trip hundreds or thousands of times, had his script memorized:  he had a snappy comeback for every question, which he half-heartedly delivered.  Were the jokes funny?  Yes.  But there just wasn't any sort of personal connection, mostly because it didn't feel like he was real.  Now, I'm not so naïve to think that being authentic in this situation is easy, but I do believe that it is possible and ultimately vital for successful user experiences.</p>

<p>I contrast this with another tour we took, this time at <a href="http://www.surfinggoatdairy.com/">Surfing Goat Dairy</a>.  Two German ex-pats run this very nice little goat farm in the middle of Maui, and they offer tours and tastings.  I'm sure they've been through plenty of tours in the years they've been open (but probably less than the 3-a-days the boat skipper did), but it didn't feel like it.  It felt like we were talking with actual humans, and knowledgeable ones who took pride in their work.  And the tasty cheese helped, too.</p>

<p>It is so important, no matter the situation, to be authentic with those you work with (both inside and outside your organization).  People can smell spin and obfuscation a mile away.  Be straight with people, and they'll appreciate it.</p>

<p><h3>Continuous improvement pays off.</h3></p>

<p>With some types of projects, the best approach to take is to focus on continuous improvement.  We stayed for a night at a restaurant and inn called <a href="http://www.mamasfishhouse.com/">Mama's Fish House</a>.  In the room, they provided a copy of <a href="http://www.mauimagazine.net/">Maui Magazine</a>, which, coincidently, featured an article about the establishment's owners (I'd link to it, but Maui Magazine doesn't have it's archives online).  The owners have employed a carpenter/designer for nearly the entire 30+ lifespan of the restaurant, and in that time this craftsman has slowly built out the building into a very impressive space.  He mentioned, I believe, that they'd re-done every wall in the place at least twice.  Basically, they started small (with a little hut), and built slowly built it out over the years.</p>

<p>Excepting the type of project where you either need to make a big splash quickly, or launch at a very large scale, the continuous improvement tactic is the one to take.  This is the sort of approach we take on things like websites.  Good websites are never done, and always "under construction."  Sure, there might be periods were you do fairly major re-models, but mostly you want to instill the idea that you can always make small tweaks and changes to make it better.  This approach also gives you much more flexibility to change as conditions change around you.  You can address problems as they crop up rather than trying to initially plan for many contingences.</p>

<p><h3>Herding people, and the difficulties thereof.</h3></p>

<p>I think the difficulty of pointing a group of people in the same direction can be reduced to a simple mathematical formula:</p>

<p>Difficulty = n<sup>2</sup>, were n is the number of people in the group.</p>

<p>Needless to say, this really only applies to situations where people have the free will to choose the direction they want to take.  But, this little formula should be kept in the back of every project manager's head, and factored into schedules and other project activities.</p>

<p><h3>Something is deeply wrong in the airline industry.</h3></p>

<p>Don't invest in airlines.  I won't bother recounting the 30+ hour Seattle-to-Maui travel nightmare, nor will I name specific airline names, but I can't help but notice that all is not well in this industry.  Admittedly, this isn't exactly earth-shaking news, as the financial difficulties of airlines (not counting low-cost carriers like Southwest and JetBlue) is well know.  <a href="http://www.peterme.com/archives/000547.html">Peter Merholz</a> recently ranted about airlines and <a href="http://noisebetweenstations.com/personal/weblogs/?p=1719">Victor Lombardi</a> has some good observations on JetBlue, so I  won't cover any ground they hit in their respective rants.</p>

<p>My observations fall to the airline's computer system.  I'd love to get a look at the reservation and booking systems, because from my perspective as the guy across the counter, something is deeply wrong.  It seems to take an inordinate amount of typing to handle even the most basic task (checking, seat assignment, and so forth).  And making flight changes takes a wild amount of time.  Because of the aforementioned travel nightmare, we were able to make some changes to our return flights (extra day stay, direct return flight).  It took the agent a really, really long time to make the change.  The kicker is that the agent didn't even manage to do the process correctly, even after 15 minutes of tapping away on his terminal.  Nearly every time we needed to interact with someone, the first person who tried to help couldn't.  Sometimes you'd see two or three agents pointing to the screen and giving advice and hints to the one typing.  I'm pretty sure that no computer system should be this hard.</p>

<p>I'd really like to see an article about the computer systems the airlines use, just to learn more about it.  I'm betting that this is a system that has evolved from 1960s-era Sabre system.  If you've seen any write-ups on the usability or history of these systems, <a href="mailto:weblog@karlnelson.net">let me know</a>. </p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Mini Link Dump</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000945.html" />
    <modified>2005-07-30T20:28:26Z</modified>
    <issued>2005-07-30T13:28:26-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.945</id>
    <created>2005-07-30T20:28:26Z</created>
    <summary type="text/plain">A couple of noteworthly things I&apos;ve seen lately: Joe Gregorio&apos;s Sparkline generator cgi and webservice. This implementation, done in python, joins a number of other sparkline generators. Cool. Chris Campbell&apos;s Preview Your Links with Unobtrusive JavaScript. This looks like an unobtrustive client-side way to plop little icons next to links. Probably not right for all situations, but nice anyway....</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>A couple of noteworthly things I've seen lately:</p>

<p>Joe Gregorio's <a href="http://bitworking.org/projects/sparklines/">Sparkline generator cgi and webservice</a>.  This implementation, done in python, joins a number of other sparkline generators.  Cool.</p>

<p>Chris Campbell's <a href="http://particletree.com/features/preview-your-links">Preview Your Links with Unobtrusive JavaScript</a>.  This looks like an unobtrustive client-side way to plop little icons next to links.  Probably not right for all situations, but nice anyway.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Piles of good stuff</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000944.html" />
    <modified>2005-07-24T04:58:46Z</modified>
    <issued>2005-07-23T21:58:46-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.944</id>
    <created>2005-07-24T04:58:46Z</created>
    <summary type="text/plain">So, I&apos;m back from a week-and-a-half vacation. I didn&apos;t touch the web, email, or very many other hi-tech gizmos during this period. Contrary to predictions, I didn&apos;t get the shakes or exhibit any other outward signs of withdrawal. I am, however, fairly buried under the stuff that stacked up while I was gone. I have a fair number of emails (both home and work) to crawl out from under, and thousands of RSS items to read. In this situation, some would argue for just marking everything read and starting fresh. I just can&apos;t bring myself to do that (well, it was never an option with the emails, more so with the RSS), fearing I&apos;ll miss some good stuff. And, as I slowly make my way through the list, I have found many a nugget of goodness: A long, but very good, interview with Mac software developer Wil Shipley. Vanilla, a PHP/MySQL-based forum system that looks much nicer than the other free forum systems. It&apos;ll be high on my list to check out, should I need to add this sort of functionality (at work, not here). The Persional MBA 40, a list of 40 books that roughly contain information you&apos;d learn...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>So, I'm back from a week-and-a-half vacation.  I didn't touch the web, email, or very many other hi-tech gizmos during this period.  Contrary to predictions, I didn't get the shakes or exhibit any other outward signs of withdrawal.  I am, however, fairly buried under the stuff that stacked up while I was gone.  I have a fair number of emails (both home and work) to crawl out from under, and thousands of RSS items to read.  In this situation, some would argue for just marking everything read and starting fresh.  I just can't bring myself to do that (well, it was never an option with the emails, more so with the RSS), fearing I'll miss some good stuff.  And, as I slowly make my way through the list, I have found many a nugget of goodness:</p>

<ul>
<li>A long, but very good, <a href="http://www.drunkenblog.com/drunkenblog-archives/000581.html">interview with Mac software developer Wil Shipley</a>.</li>
<li><a href="http://getvanilla.com/">Vanilla</a>, a PHP/MySQL-based forum system that looks <em>much</em> nicer than the other free forum systems.  It'll be high on my list to check out, should I need to add this sort of functionality (at work, not here).</li>
<li>The <a href="http://www.joshkaufman.net/archives/2005/07/the_personal_mb.html">Persional MBA 40</a>, a list of 40 books that roughly contain information you'd learn in an MBA program.  I like the concept (and I've even read a number of books on the list), but I do feel compelled to point out that the value of an MBA-type degree is only partly from the information conveyed.  Discussions, networking, writing, and so forth, play a pretty big role.  At least they did for me in my MBA-type (MSIM) program.  Still, I'll draw from this list next time I'm looking for a management-ish book to read.</li>
<li><a href="http://2005.webvisionsevent.com/">Podcasts from WebVisions</a>.</li>
<li>Simon Willison <a href="http://simon.incutio.com/archive/2005/07/17/django">introduces Django</a>, a python-based web framework that many are comparing to Rails.  One to check out, for sure.</li>
<li><a href="http://jamis.jamisbuck.org/articles/2005/07/14/application-deployment-with-rails">Jamis Buck</a> and <a href="http://blog.x180.net/2005/07/rails_sandbox_d.html">James Duncan Davidson</a> both discuss deployment strategies with Rails.  Both have good ideas that you can apply outside the world of Rails, too.</li>
<li>Go watch this short video about designer <a href="http://www.miltonglaser.com/pages/milton/films/MG_adobe.mov">Milton Glaser</a> (via <a href="http://www.bd4d.com/blog/2005/07/20/design-legend-milton-glaser/">BD4D</a>).  I really keyed into his comments about art providing commonality to society.  How, then, does this growing diversity of cultural artifacts (see, the <a href="http://longtail.typepad.com/">Long Tail</a>) fit into this?  Will the increased specialization tear society apart, or bring it closer?</li>
</ul>

<p>Well, I have about 300 more unread items to go, so I'll probably hit more good stuff. </p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Help with the Connection HTTP header in python?</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000943.html" />
    <modified>2005-07-13T00:20:06Z</modified>
    <issued>2005-07-12T17:20:06-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.943</id>
    <created>2005-07-13T00:20:06Z</created>
    <summary type="text/plain">Okay, so I&apos;ve been banging away on this little one for three or four hours now, to no avail. I&apos;m hoping maybe a python expert sees this and can help. Here&apos;s the story: I&apos;m working on a little python script that will grab search results from one of our vendors to include in a federated search system. I&apos;ve had pretty good results with most of the vendors we work with, and all in all, my little program is pretty slick. But, I&apos;m stuck with one of them. You see, in order for their authentication system to work when I&apos;m doing the search, I need to first get a cookie with a session variable from their server. So, it needs to look like this: hit homepage, get cookie, send second request, get search results. Pretty easy, huh? Turns out, no, it isn&apos;t that easy. The root of the issue is that my script is including the &quot;Connection: close&quot; HTTP header. And when the server (IIS) sees this, it flushes the session variable it set. So, on the inital request, it gives me a session variable then immediately flushes it. Not so useful. So, I need to not send the &quot;Connection: close&quot;...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Okay, so I've been banging away on this little one for three or four hours now, to no avail.  I'm hoping maybe a python expert sees this and can help.  Here's the story:</p>

<p>I'm working on a little python script that will grab search results from one of our vendors to include in a federated search system.  I've had pretty good results with most of the vendors we work with, and all in all, my little program is pretty slick.</p>

<p>But, I'm stuck with one of them.  You see, in order for their authentication system to work when I'm doing the search, I need to first get a cookie with a session variable from their server.  So, it needs to look like this:  hit homepage, get cookie, send second request, get search results.  Pretty easy, huh?</p>

<p>Turns out, no, it isn't that easy.  The root of the issue is that my script is including the "Connection: close" HTTP header.  And when the server (IIS) sees this, it flushes the session variable it set.  So, on the inital request, it gives me a session variable then immediately flushes it.  Not so useful.</p>

<p>So, I need to not send the "Connection: close" header, so that IIS will keep the session alive.  Fair enough.  Let's look at what I'm using to grab the scripts.  Plain old urllib and urllib2 won't cut it, as they don't have cookie support (well, urllib2 got it as of python 2.4, but our box is running 2.2, and I'm pretty sure that wouldn't matter anyway).  So, I'm using <a href="http://wwwsearch.sourceforge.net/ClientCookie/">ClientCookie</a> (which eventually merged into the standard library as cookielib).  ClientCookie is pretty darn slick, very easy to use.  But, you guessed it, no persistence.  It sets the same old "Connection: close" header as urllib2 does.  So, I then turned to <a href="http://linux.duke.edu/projects/urlgrabber/">urlgrabber</a>'s keepalive module.  This works like a charm...easy persistent connections.  But, uh, no cookie support.  Both modules let you set headers (to change the User-Agent and such), but my attempts to change the "Connection" header go nowhere.</p>

<p>I have two different problems, with two solutions.  Just they won't work together.  I've spent a few hours trying to combine them without luck.  The next thing I can think of is to basically try to re-write the functionality of these two modules together as one, but that sounds really, really ugly for this occassional programmer.</p>

<p>Anyone out there a python guru with a good answer to this??  <a href="mailto:weblog@karlnelson.net">Write me</a>!!</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Less Technology</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000937.html" />
    <modified>2005-06-26T00:07:05Z</modified>
    <issued>2005-06-25T17:07:05-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.937</id>
    <created>2005-06-26T00:07:05Z</created>
    <summary type="text/plain">Every once in a while, just for kicks, I&apos;ll make a disparaging comment about &quot;technology&quot; or &quot;computers&quot; within earshot of my boss. She, I hope, finds these little asides humorous, and feigns horror in hearing such blasphemy come from the mouth of her director of technology. I wonder, then, what she would think about me reading a book called &quot;Better Off: Flipping the Switch on Technology.&quot; Probably best not to mention it, eh? The author, Eric Brende, and his wife move to an Amish-like community and literally turn off the electrical switch. While I find this move to be fairly extreme, I do sympathize with their desire for less technology. I have a feeling that many of us would be better off if society was more judicious in its collective use of technology. The automobile, in particular, seems be coming quite close to a net negative for society. I watched a documentary recently (My Architect) on Louis I. Kahn. At one point, they discussed a vision he had for downtown Philadelphia where garages would be built around the downtown core, people would park, and walk to their destinations. No cars would be allowed in the central area. Sounds quite nice....</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Every once in a while, just for kicks, I'll make a disparaging comment about "technology" or "computers" within earshot of my boss.  She, I hope, finds these little asides humorous, and feigns horror in hearing such blasphemy come from the mouth of her director of technology.</p>

<p>I wonder, then, what she would think about me reading a book called "<a href="http://www.amazon.com/exec/obidos/redirect?path=ASIN/0060570040&amp;link_code=as2&amp;camp=1789&amp;tag=karlnelsonnet-20&amp;creative=9325">Better Off:  Flipping the Switch on Technology</a>."  Probably best not to mention it, eh?</p>

<p>The author, Eric Brende, and his wife move to an Amish-like community and literally turn off the electrical switch.  While I find this move to be fairly extreme, I do sympathize with their desire for less technology.  I have a feeling that many of us would be better off if society was more judicious in its collective use of technology.  The automobile, in particular, seems be coming quite close to a net negative for society.  I watched a documentary recently (<a href="http://www.amazon.com/exec/obidos/redirect?path=ASIN/B0006Q93EM&amp;link_code=as2&amp;camp=1789&amp;tag=karlnelsonnet-20&amp;creative=9325">My Architect</a>) on Louis I. Kahn.  At one point, they discussed a vision he had for downtown Philadelphia where garages would be built around the downtown core, people would park, and walk to their destinations.  No cars would be allowed in the central area.  Sounds quite nice.  Too bad they didn't go for it.</p>

<p>It becomes quite difficult, I think, to determine just how much technology is enough.  Undoubtedly, technology is good (see: modern medicine, the expansion of information availability on the internet, etc).  But also, it takes a toll.  Finding a balance is hard for individuals, and harder, I'd guess, for society.</p>

<p>I don't have any answers just yet.  But I think that striving for simplicity is a good thing.  I'm not ready to become a subsistence farmer, but I'll keep working on simplifying stuff…</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Googlizers vs. Resistors</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000942.html" />
    <modified>2005-06-25T23:41:05Z</modified>
    <issued>2005-06-25T16:41:05-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.942</id>
    <created>2005-06-25T23:41:05Z</created>
    <summary type="text/plain">A few weeks ago, Peter Van Dijck pointed to a Library Journal article about the Google-ization of libraries. For those interested in information retrieval and libraries, this is an interesting article. I&apos;m especially interested right now because I&apos;m playing a very active role in &quot;Google-izing&quot; a digital library. For me, the issue comes down to ease-of-access. We keep hearing from our users that people prefer Google to our hand-picked, high-quality resources. Google is a one-click operation (seeing as it&apos;s built into browser toolbars and such), and fast to boot. Our resources currently live three or four clicks off of the homepage, and behind authentication schemes (they&apos;re subscription databases). And, each one of our databases has a very different interface. Some are easy and clear; others are more complicated. But perhaps the most difficult part is the user needs to know which one of the databases to try. With some exceptions, users could find relevant information in more than one of the databases, and because of the general nature of the resources, it can be hard to give good guidance to the users upfront. So, the user is left to click into each one with the hopes of finding info. No...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>A few weeks ago, <a href="http://poorbuthappy.com/ease/archives/2005/06/14/2733/">Peter Van Dijck pointed</a> to a <a href="http://www.libraryjournal.com/article/CA485756.html">Library Journal article</a> about the Google-ization of libraries.  For those interested in information retrieval and libraries, this is an interesting article.  I'm especially interested right now because I'm playing a very active role in "Google-izing" a digital library.</p>

<p>For me, the issue comes down to ease-of-access.  We keep hearing from our users that people prefer Google to our hand-picked, high-quality resources.  Google is a one-click operation (seeing as it's built into browser toolbars and such), and fast to boot.  Our resources currently live three or four clicks off of the homepage, and behind authentication schemes (they're subscription databases).  And, each one of our databases has a very different interface.  Some are easy and clear; others are more complicated.  But perhaps the most difficult part is the user needs to know which one of the databases to try.  With some exceptions, users could find relevant information in more than one of the databases, and because of the general nature of the resources, it can be hard to give good guidance to the users upfront.  So, the user is left to click into each one with the hopes of finding info.  No wonder people go off to Google!</p>

<p>So, we're going to put a federated search engine in place.  The idea is that users would be able to use a Google-like interface, but get our high-quality resources back as results.  I'm not viewing this solution as a comprehensive search solution.  Rather, after returning a few results (say, 5 or 10), I'm going to dump the user back into the native database interface.  In other words, those users who would like to use the more powerful tools provided in each system can do so.  The simple results we return should also point the user in the right direction.  They wouldn't need to try each and every database, only the ones that look like they might have quality results.</p>

<p>This is all well and good, but I think there is a bigger issue at stake in the information literacy realm.  It seems like some of the librarians in article are focused on teaching patrons how to use the library information systems (OPACs, databases, whatever).  The "click here, click there" type of training is fine and good (although I'd rather see interfaces that are so intuitive they don't require training).  But, the focus in information literacy really needs to be on evaluating information.  I don't care if the results come from Google or a subscription database, the patron needs to know how to evaluate the information and decide if it is trustworthy, useful, and relevant.  This is much harder than "click here, click there", but ultimately much more useful.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Random Usability Notes</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000941.html" />
    <modified>2005-06-25T17:52:51Z</modified>
    <issued>2005-06-25T10:52:51-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.941</id>
    <created>2005-06-25T17:52:51Z</created>
    <summary type="text/plain">A while back I asked about single-page usability resources. I ended up doing a short test of some paper prototypes we worked up. I came up with three or four questions–mini-scenarios—to ask each participant. These tests don&apos;t last long (5 minutes), and, to be honest, we didn&apos;t learn that much. We did get some feedback that we plugged in to the next iteration, but compared to doing more in-depth studies, I didn&apos;t end up with that many insights. I did learn one thing about testing prototypes: when you fake content, it needs to either be very realistic or very obviously fake. Representing an image with a crossed-out box in a sketch works well. But, we were using high-fidelity prototypes (Photoshop comps printed out) and made the mistake of throwing in a random image into a spot that should have had a realistic image with text and a call to action. This threw a number of users off. So, make it realistic or not, just don&apos;t land in the middle. Mike Lambert wrote in to mention the EyeTools service. This looks pretty cool, if a bit pricey. Basically, they&apos;ll run an eye-tracking usability test for you, and then send nifty charts...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>A while back I asked about <a href="http://www.karlnelson.net/weblog/000938.html">single-page usability resources</a>.  I ended up doing a short test of some paper prototypes we worked up.  I came up with three or four questions–mini-scenarios—to ask each participant.  These tests don't last long (5 minutes), and, to be honest, we didn't learn that much.  We did get some feedback that we plugged in to the next iteration, but compared to doing more in-depth studies, I didn't end up with that many insights.</p>

<p>I did learn one thing about testing prototypes:  when you fake content, it needs to either be very realistic or very obviously fake.  Representing an image with a crossed-out box in a sketch works well.  But, we were using high-fidelity prototypes (Photoshop comps printed out) and made the mistake of throwing in a random image into a spot that should have had a realistic image with text and a call to action.  This threw a number of users off.  So, make it realistic or not, just don't land in the middle.</p>

<p>Mike Lambert wrote in to mention the <a href="http://www.eyetools.com/index.htm">EyeTools</a> service.  This looks pretty cool, if a bit pricey.  Basically, they'll run an eye-tracking usability test for you, and then send nifty charts to show where people are looking.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>The dotted line</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000940.html" />
    <modified>2005-06-25T17:30:05Z</modified>
    <issued>2005-06-25T10:30:05-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.940</id>
    <created>2005-06-25T17:30:05Z</created>
    <summary type="text/plain">Seth Godin posted four charts describing the adoption of a product or service. These are just a simple way to visualize the various modes of user or consumer uptakes. Says Seth: The challenges are pretty obvious. First, how do you decide where to put the dotted line? Second, how do you avoid killing something too early, or celebrating too early. And last, how do you know when to kill a dud? The odds are with those smart enough to launch something new tomorrow. These questions, to me, are the most interesting part of the post. The challenges might be obvious, but they&apos;re the hardest part to figure out. It feels like I&apos;ve been hitting these questions a lot lately at work. Not necessarily with launching a product or a service, but rather with features on our website. As you might have guessed from my series of recent posts on website stats, I&apos;ve been looking at more ways to measure usage of different aspects of the site. Like most folks, we have lots of features, and limited resources. So, logic dictates that we should focus on the highest value features and dump the low-performance, low-value ones. But, when to pull the...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Seth Godin <a href="http://sethgodin.typepad.com/seths_blog/2005/06/the_four_curves.html">posted four charts describing the adoption of a product or service</a>.  These are just a simple way to visualize the various modes of user or consumer uptakes.  Says Seth:</p>

<blockquote>The challenges are pretty obvious. First, how do you decide where to put the dotted line? Second, how do you avoid killing something too early, or celebrating too early. And last, how do you know when to kill a dud? The odds are with those smart enough to launch something new tomorrow.</blockquote>

<p>These questions, to me, are the most interesting part of the post.  The challenges might be obvious, but they're the hardest part to figure out.</p>

<p>It feels like I've been hitting these questions a lot lately at work.  Not necessarily with launching a product or a service, but rather with features on our website.  As you might have guessed from my series of recent posts on website stats, I've been looking at more ways to measure usage of different aspects of the site.  Like most folks, we have lots of features, and limited resources.  So, logic dictates that we should focus on the highest value features and dump the low-performance, low-value ones.</p>

<p>But, when to pull the plug?  (Or, where is the dotted line?)  And why does a feature get used or not?  Low usage could point to the fact the feature was, in total, a dud.  Or, it could be poor placement.  Or unclear copy.  Or a usability problem.  It is easy to say that the something was just a dud, but pulling the plug could be a hasty decision.  I'm inclined to spent at least some time focusing on our execution of a feature before I pull the plug.  In a recent case, we spent time redesigning a feature and altering it's layout in an attempt to bump up usage.  Turned out that a before/after analysis showed that the changes didn't really make that much of a difference.  So, I think we're going to yank the feature.  But, I think it was worth the time to experiment with the execution before giving up on the concept.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Social bookmarking inside the firewall</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000939.html" />
    <modified>2005-06-24T22:55:50Z</modified>
    <issued>2005-06-24T15:55:50-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.939</id>
    <created>2005-06-24T22:55:50Z</created>
    <summary type="text/plain">Michael Angeles has posted a very nice writeup of a del.icio.us clone he helped develop: Making libraries more delicious: Social bookmarking in the enterprise. I really like how they extended a good idea (social bookmarking) and thought about how to drive this content into other places, like their portal....</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Michael Angeles has posted a very nice writeup of a <a href="http://del.icio.us">del.icio.us</a> clone he helped develop:  <a href="http://urlgreyhot.com/personal/node/2463">Making libraries more delicious: Social bookmarking in the enterprise</a>.  I really like how they extended a good idea (social bookmarking) and thought about how to drive this content into other places, like their portal.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Single page usability testing?</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000938.html" />
    <modified>2005-06-20T16:22:57Z</modified>
    <issued>2005-06-20T09:22:57-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.938</id>
    <created>2005-06-20T16:22:57Z</created>
    <summary type="text/plain">I&apos;ve run a number of usability tests in the past, but I&apos;m somewhat stuck with a current project. We&apos;re re-designing a single page on the site (okay, it&apos;s an important one, the home page), and I&apos;d like to do some user testing in the paper prototype stage. But, I&apos;m having a hard time coming up with scenarios that would work well for a single page like this. All the ideas I have seem like they&apos;d be over in a couple of seconds. In other words, it would take me much longer to do the intro to the test than it would to do the actual test: [Long-winded intro about how we&apos;re testing the site, not the user...] &quot;Pretend you&apos;re doing research for a term paper on the Civil War. Where would you start?&quot; [User points to a link.] &quot;Great. Thanks for coming in today. Here&apos;s a water bottle!&quot; Anyway, does anyone know of any good resources on conducting usability tests with just a single page? Most of the usabilty resources I&apos;ve seen assume a more long-term interaction. Shoot me an email at weblog@karlnelson.net if you have any good resources or ideas......</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>I've run a number of usability tests in the past, but I'm somewhat stuck with a current project.  We're re-designing a single page on the site (okay, it's an important one, the home page), and I'd like to do some user testing in the paper prototype stage.  But, I'm having a hard time coming up with scenarios that would work well for a single page like this.  All the ideas I have seem like they'd be over in a couple of seconds.  In other words, it would take me much longer to do the intro to the test than it would to do the actual test:</p>

<p>[Long-winded intro about how we're testing the site, not the user...]</p>

<p>"Pretend you're doing research for a term paper on the Civil War.  Where would you start?"</p>

<p>[User points to a link.]</p>

<p>"Great.  Thanks for coming in today.  Here's a water bottle!"</p>

<p>Anyway, does anyone know of any good resources on conducting usability tests with just a single page?  Most of the usabilty resources I've seen assume a more long-term interaction.  Shoot me an email at <a href="mailto:weblog@karlnelson.net">weblog@karlnelson.net</a> if you have any good resources or ideas...</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Ajax, InnerHTML, and the back button</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000936.html" />
    <modified>2005-06-13T18:20:42Z</modified>
    <issued>2005-06-13T11:20:42-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.936</id>
    <created>2005-06-13T18:20:42Z</created>
    <summary type="text/plain">I&apos;ve been playing around with a little quick-n-dirty &quot;meta&quot; search system. In short, the script takes the term entered by the user, queries a couple of third-party search engines, then parses (read: screen scrapes) and displays the results to the end-user. Because the biggest issue here is the time it takes for the third-party servers to process the query and respond, I figured I&apos;d use a bit of that Ajax magic that has been going around. So, now the script updates the page (without reloading) as soon as each of the server responds, meaning the user can see results right away, even as the script still chugs away on the slow parts. This works quite well. I&apos;m using the prototype.js system that is included with Ruby on Rails. The javascript library doesn&apos;t depend on Rails, and in this case I&apos;m using it with a combination of PHP and Python scripts. Basically, the script makes a call to the server and then places the HTML it gets in response inside a div. The javascript that makes this all happen is called using onload(), but I&apos;ve also toyed with just plopping it in the code, with little difference in functionality. So, everything...</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>I've been playing around with a little quick-n-dirty "meta" search system.  In short, the script takes the term entered by the user, queries a couple of third-party search engines, then parses (read: screen scrapes) and displays the results to the end-user.  Because the biggest issue here is the time it takes for the third-party servers to process the query and respond, I figured I'd use a bit of that <a href="http://www.adaptivepath.com/publications/essays/archives/000385.php">Ajax </a>magic that has been going around.  So, now the script updates the page (without reloading) as soon as each of the server responds, meaning the user can see results right away, even as the script still chugs away on the slow parts.  This works quite well.</p>

<p>I'm using the <a href="http://prototype.conio.net/">prototype.js</a> system that is included with <a href="http://www.rubyonrails.com/">Ruby on Rails</a>.  The javascript library doesn't depend on Rails, and in this case I'm using it with a combination of PHP and Python scripts.  Basically, the script makes a call to the server and then places the HTML it gets in response inside a div.  The javascript that makes this all happen is called using onload(), but I've also toyed with just plopping it in the code, with little difference in functionality.</p>

<p>So, everything works like a charm, and the user is eventually presented with results from multiple sites.  Then, Mr. or Ms. User clicks on one of the results, and leaves the site.  So far, so good.  But, trouble arises when the user clicks the back button and ends up back on the search page.  Firefox re-fires the onload(), and the results appear quickly (I'm caching the results on the server side).  IE6 doesn't re-fire the onload(), leaving me without results.  This isn't good, seeing as a healthy (but declining) portion of our users are using IE.</p>

<p>After a little sleuthing, I came across <a href="http://www.ajaxian.com/archives/2005/03/handling_usabil.html">this page</a>.  Taking advantage of the fact that IE's history/cache store pages with distinct URLs (I believe), these guys show a method using the <a href="http://www.dojotoolkit.org/">Dojo toolkit</a> to modify the URL by appending a "#" with a string of numbers to the URL. Voila!  This should do the trick, but I haven't tried it yet.</p>

<p>I do have a couple of little concerns.  One, it does muddy up the URL a bit.  I can live with this, though.  But, of more concern is the fact that it would create two entries in the history/cache for the same page.  One would be blank, the other would have the results in it.  Users would then have to step back through the blank page.  And having watched many a user rely solely on the back button during usability tests, I'm not wild about this.  </p>

<p>So, I see a few potential solutions:<br />
<ul><br />
<li>Find a different Ajax toolkit.  Someone may have solved this?</li><br />
<li>Maybe there is some javascript do-hickey out there that would cause the IE to re-fire the onload() event, making it's behavior match that of Firefox.</li><br />
<li>Try to disable client-side caching so the page has to reload.  Not sure if there is a clean way to do this, other than to turn my form from a get to a post.  That would, of course, bring up an annoying dialog box, I think.</li><br />
<li>Don't use Ajax at all, and have the whole thing happen on the server-side and send everything all happy-like to the browser.  This is fine, except for the speed issues.  That is, it's slow.  Of course, I could slap some sort of interstitial in there, like an airline reservation system.</li><br />
</ul><br />
So, anyone have any brilliant ideas?  Write me at <a href="mailto:weblog@karlnelson.net">weblog@karlnelson.net</a>.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Link Dump</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000935.html" />
    <modified>2005-06-04T00:23:55Z</modified>
    <issued>2005-06-03T17:23:55-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.935</id>
    <created>2005-06-04T00:23:55Z</created>
    <summary type="text/plain">A small and random collection of nifty things I&apos;ve seen float past lately: The BBC is offering downloads of all of Beethoven&apos;s symphonies. Unfortunately, you need to pay attention to when they broadcast &apos;em, as the MP3s are only up for a few days after each broadcast. Still, cheaper than iTunes. Here&apos;s a nice looking version control system comparison. Peter Merholz on the The Dark Side of Design Thinking: &quot;Look at any interactive design annual, anything judged by a panel of designers, and you will see a stupefying weakness for styling. It doesn&apos;t matter that after using any of the winners for 2 minutes, you&apos;re pretty much done (if you could figure out how to use it in the first place).&quot; Here&apos;s a couple of tools that developers can use, with Greasemonkey, when developing AJAX apps. Nice. Tom Hoffman on free concept mapping software....</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>A small and random collection of nifty things I've seen float past lately:</p>

<p>The <a href="http://www.bbc.co.uk/radio3/beethoven/downloads.shtml">BBC</a> is offering downloads of all of Beethoven's symphonies.  Unfortunately, you need to pay attention to when they broadcast 'em, as the MP3s are only up for a few days after each broadcast.  Still, cheaper than iTunes.</p>

<p>Here's a nice looking <a href="http://better-scm.berlios.de/comparison/comparison.html">version control system comparison</a>.</p>

<p>Peter Merholz on the <a href="http://www.peterme.com/archives/000514.html">The Dark Side of Design Thinking</a>:  "Look at any interactive design annual, anything judged by a panel of designers, and you will see a stupefying weakness for styling. It doesn't matter that after using any of the winners for 2 minutes, you're pretty much done (if you could figure out how to use it in the first place)."</p>

<p>Here's a couple of <a href="http://blog.monstuff.com/archives/000252.html">tools</a> that developers can use, with Greasemonkey, when developing AJAX apps.  Nice.</p>

<p>Tom Hoffman on <a href="http://www.eschoolnews.com/eti/2005/06/000851.php">free concept mapping software</a>.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Absolute Log Analyzer Redux</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000934.html" />
    <modified>2005-05-31T19:37:35Z</modified>
    <issued>2005-05-31T12:37:35-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.934</id>
    <created>2005-05-31T19:37:35Z</created>
    <summary type="text/plain">Alexey Stcherbic of BitStrike Software wrote in about my comments on the Absolute Log Analyzer. In short, when I tried to use his program, it didn&apos;t work, and I mis-diagnosed the issue. Alexey took a look at my log file, and found some odd entries (lines with *way* too many characters...I think this was probably a result of the setup period). He sent me a custom pattern for parsing the file, and low and behold, it worked just fine. Alexey mentioned that the next version of his software would handle this automatically, which sounds like a nice feature to me......</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Alexey Stcherbic of <a href="http://www.bitstrike.com/">BitStrike Software</a> wrote in about <a href="http://www.karlnelson.net/weblog/000928.html">my comments on the Absolute Log Analyzer</a>.  In short, when I tried to use his program, it didn't work, and I mis-diagnosed the issue.  Alexey took a look at my log file, and found some odd entries (lines with *way* too many characters...I think this was probably a result of the setup period).  He sent me a custom pattern for parsing the file, and low and behold, it worked just fine.  Alexey mentioned that the next version of his software would handle this automatically, which sounds like a nice feature to me...</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>PDF Prototyping</title>
    <link rel="alternate" type="text/html" href="http://www.karlnelson.net/weblog/000933.html" />
    <modified>2005-05-25T18:13:49Z</modified>
    <issued>2005-05-25T11:13:49-08:00</issued>
    <id>tag:www.karlnelson.net,2005://1.933</id>
    <created>2005-05-25T18:13:49Z</created>
    <summary type="text/plain">Dave Rogers has a nice two part article on using PDFs for prototyping. The idea is to use Acrobat&apos;s linking features to wire up the prototypes, and go clicking through the site. I&apos;m not sure I&apos;ll use the exact technique he describes, as my short-term prototyping needs aren&apos;t for entire websites, but rather for a single page (redesign situation). But, the article got me thinking about some variations on the technqiue. What if we scanned some page sketches (paper prototypes), then linked up the links and put &apos;em in front of users. Sounds like a nice way to try out a couple of design variations in a more real-world situation than just placing a piece of paper in front of the user. Could be useful, in that it would keep the low-fi nature of the paper prototype, yet incorporate hi-fi features like working links and forms. I&apos;ll let you know if we try it......</summary>
    <author>
      <name>Karl</name>
      
      <email>karlnelson@earthlink.net</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.karlnelson.net/">
      <![CDATA[<p>Dave Rogers has a nice <a href="http://www.gotomedia.com/gotoreport/may2005/news_0505_usable1.html">two</a> <a href="http://www.gotomedia.com/gotoreport/may2005/news_0505_usable2.html">part</a> article on using PDFs for prototyping.  The idea is to use Acrobat's linking features to wire up the prototypes, and go clicking through the site.</p>

<p>I'm not sure I'll use the exact technique he describes, as my short-term prototyping needs aren't for entire websites, but rather for a single page (redesign situation).  But, the article got me thinking about some variations on the technqiue.  What if we scanned some page sketches (paper prototypes), then linked up the links and put 'em in front of users.  Sounds like a nice way to try out a couple of design variations in a more real-world situation than just placing a piece of paper in front of the user.  Could be useful, in that it would keep the low-fi nature of the paper prototype, yet incorporate hi-fi features like working links and forms.</p>

<p>I'll let you know if we try it...</p>]]>
      
    </content>
  </entry>

</feed>