Tagging software for some National History Day kids?
August 11, 2008 11:50 AM   Subscribe

Can anyone recommend software that allows basic tagging of data, such that if I say I'm interested in X, it will say, "You might also like A B ad C" because they are also tagged the same as X.

The question is for a National History Day program. The national office picks a theme and everyone picks a topic that relates to that theme. The problem is that kids aged 10-16 are not particularly worldly or aware of so many neat topics. Consequently, judges see a lot of topics around Helen Keller, 1960's Civil Rights, and Navajo Code Talkers.

What if there was a web site that showed all topics and a kid could see a quick synopsis of the topic. And what if we plugged in a lot of "common" topics and build a tagging system around it. "Interested in Helen Keller? Have you thought about A, B or C?"

So, since I'm not a programmer, I was wondering if anyone's come across a simple tagging tool that would allow me to build something like that?

Thanks!
posted by rev- to Computers & Internet (10 answers total) 1 user marked this as a favorite
 
Wikipedia actually references many other items when searching for any particular topic. To use one of your examples, Helen Keller, when searched there are dozens of links in her info from "sign language" and "women's suffrage" to "Alexander Graham Bell" and "Radcliffe College". I'm not sure if this is the kind of referencing you meant though it was the first thing on my mind when I read your post.
posted by alcoth at 12:07 PM on August 11, 2008 [1 favorite]


Oops, here's the link ... Helen Keller
posted by alcoth at 12:07 PM on August 11, 2008


You could roll your own website with a CMS like Drupal that allows content tagging - or sign up for a hosted and managed pre-built Drupal site at Bryght.

But actually this sounds a lot like Wikipedia...
posted by Tubes at 12:10 PM on August 11, 2008


(Doh, alcoth beat me to it.)
posted by Tubes at 12:10 PM on August 11, 2008


Are you trying to build a site to do this? I was going to say that this screams of Amazon.com, which might be a good starting point.

I think the way a lot of those systems work, though, is by analyzing usage: people who looked into Helen Keller also looked at Anne Frank, or something of that sort. Thus the connections aren't explicitly defined, but rather, 'learned' by the code.

FWIW, I think the OpenSource web store osCommerce may include a 'recommendation' feature, though I haven't worked with it.

Not sure if this helps or not?
posted by fogster at 12:12 PM on August 11, 2008


Google Sets might be useful.
posted by euphorb at 12:46 PM on August 11, 2008


If you do want to enter all the information by hand, a database (even Access, I think) would do this quite well. There are two ways to do it.. you can have one row per topic with a comma or space separated (if you space separate, you can remove all the spaces from the tags before you put them in/retrieve them with relatively few collisions), or you can have one topic/keyword pair per row. You'd use full-text search on the first one (I think Access has this), and a normal query on the second one.

Using the first is probably better since you can have a unique index, and full-text search is often better at indexing the keywords than you are, but the time difference for a small database would be pretty trivial, and the setup for the second way could be more straight forward. You also wouldn't have to munge the tags with the second way.

A non-optimized query for the first may look like

SELECT subject FROM taglist WHERE LOWER(tag) LIKE '%mysearchkey%'

A query for the second way may look like

SELECT subject FROM taglist WHERE tag = 'mysearchkey'

Another advantage for the second way, I suppose, is that you could use a join to get the result set for a specific subject word.

If you do go the database route, many databases include wild-card matching (for endings, for instance), 'sounds-like' options for misspellings, etc., which may or may not be more than you want to do.
posted by devilsbrigade at 1:35 PM on August 11, 2008


(This would also be trivially easy to implement with a perl script & a flat file, and that would make it web-accessable. If you don't find an existing solution, MeFi mail me and we'll whip something up.)
posted by devilsbrigade at 1:38 PM on August 11, 2008


nthing Wikipedia as a good and inexpensive solution - definitely, if your idea is that you would set up all the relationships by hand, this is the way to go.

Depending on the size of your budget there are commercial solutions for the kind of thing that Amazon does, an entire class of software products called recommendation engines. They get into really sophisticated functionality, like observing the behavior of web site visitors to formulate recommendations, or automatically profiling visitors and comparing them to each other to figure out what to recommend.
posted by XMLicious at 3:30 PM on August 11, 2008


Oh, and so if you want to try doing it in the Wikipedia software (which is called "MediaWiki") you might try it out through this company Wikia, which lets you set up a MediaWiki-based web site for free and makes money by displaying advertisements on your site.

Or if you wanted to pay for a web site so that it didn't include advertisements, you would Google for "MediaWiki hosting" to find a company to set up a site through.
posted by XMLicious at 3:40 PM on August 11, 2008


« Older Trying to set up a website with a new suffix after...   |   Finding a bike for an RSI sufferer in Seattle Newer »
This thread is closed to new comments.