Software to power a web site of user-submitted info
July 26, 2010 4:04 AM   Subscribe

I have an idea for a web site: a user-created database of where one can buy things in a part of the world where unusual items can be hard to find. What kind of software would power such a site?

My idea is that users could create a profile, submit information ("you can buy The New Yorker at the bookstore on Main Street"), vote on others' information (indicating that they agree that you can find The New Yorker at that bookstore), comment on others' information ("the bookstore owner says they're going to stop selling The New Yorker next month"), and search/browse information based on categories/locations (ideally with nice Google Maps plug-ins and such).

To be clear, I don't mean a site to serve the whole world; I mean a site that would appeal to expats, immigrants, tourists, etc. who are in a particular country where (I know from experience) foreign or unusual items can be hard to find.

What kind(s) of software would support this kind of site? I have some vague ideas, but I'm wondering if there are more complete solutions out there that I don't know about.
posted by neushoorn to Technology (8 answers total) 2 users marked this as a favorite
 
This is an interesting idea, but I don't think it's one that would lend itself to any available-off-the-shelf software.

The concept would also have trouble gaining traction initially, since populating the site with data would be a rough go. Consider that for any potential ethnic/cultural/demographic group that might be seeking something, the data would need to be entered in for every possible item of interest for each possible location they're in.

Naturally, you might make this sort of thing generic at first, but I reckon the cross-section of things people are seeking and things people have entered would be slim for a very long time.

Consider, I'd love to know where I can buy a Toasted Almond ice cream bar out here in Arizona. Good Humor doesn't seem to ship that flavor to ANYone out here. This is a totally obscure item that would take forever to find its way into your database, if ever at all. (And not least because I can't find it; naturally, only items that could be found would end up in the database.)

I imagine you'd almost start by creating a directory of sorts of ethnic/specialty groceries and markets. Knowing where you can find a bizarre ingredient in a new city can be incredibly useful. (My friend who is from Italy originally was looking for great ladyfingers; we found them at the Italian Deli down the street, but it wasn't totally obvious that they also offered groceries, so such a tip site might help.)

The question then, naturally, is how you build out the data models for each level of the hierarchy. I would imagine each place could have multiple items. Each item might have characteristics like brand, price, etc, and people could then vote on those things.

In any event, you'd likely need custom software, since the problem you're trying to solve is innately complex and most off the shelf components might offer only a subset of the specific feature your idea encompasses. It wouldn't necessarily be prohibitively difficult to develop such software, though. And you could even likely make an initial pass at populating it with some content from Yelp or something.
posted by disillusioned at 4:29 AM on July 26, 2010


Best answer: This is a service I would use, and I would suggest that rather than attempting to build up a database one user entry at a time that attempts to be comprehensive (with the endless freshness and taxonomy issues that entails), you model it more on the tagged question/upvoted answer approach of Stack Overflow. So, as a user I would set up my account to emphasize questions relating to Berlin and deemphasize questions relating to everywhere else, and when someone asked the question "SF-style burritos in Berlin?" I'd answer that question because I know the place to go. Later on, a searcher for Berlin and Burritos would find the question and the answer. If the answer gets stale, the person who discovers that can update it in the thread.

Stack Overflow has a public API called Stack Exchange and there have been a number of sites built with it. It is by no means perfect, but it has been designed around a somewhat analogous problem -- questions across a very broad collection of areas of expertise (replace languages with regions) that then have a subset of specialization (replace audio APIs with lady fingers).
posted by Your Time Machine Sucks at 5:26 AM on July 26, 2010


Because of the nature of this project it seems like there would be a high motivation for companies to try to create spam content promoting themselves, especially if it were to become successful.

But anyways, if I was going to try to build something like this I'd probably use wiki software. A straight out-of-the-box wiki would just be free-form text and would require the contributors to learn or at least be able to deal with wiki markup, the codes that create links and categories and things. I'd probably go with JAMWiki in that case.

For a more complex solution that involves structured data and a user filling in a form (with fields like "store name", "city", "street address", etc.) there's Semantic Mediawiki. There are a bunch of mapping-related add-on modules here.

One potential problem is that I'm not sure how you'd do voting with either of those wiki packages. A non-wiki solution for structured content that has voting functionality and might work for this is Drupal and its Content Construction Kit module. There are probably mapping modules too but I'm not as familiar with Drupal.
posted by XMLicious at 6:00 AM on July 26, 2010


Here's the link to the actual StackExchange site. You can suggest a Q&A site (which is basically what you're describing), and if enough people think it's a good idea, it will be created for you.
posted by blue_beetle at 7:57 AM on July 26, 2010


Right, StackExchange requires a proposal process, doesn't it? The SE engine source isn't open. There are a couple of OSS knockoffs if you want to go that way, though I think their deal seems pretty good if there is a critical mass of interested potential users.
posted by Your Time Machine Sucks at 9:10 AM on July 26, 2010


Best answer: I think that Drupal could do this quite handily. It could be coded up pretty fast as well, a few days perhaps.
posted by BrodieShadeTree at 12:15 PM on July 26, 2010


Best answer: Both Django and Ruby on Rails (and similar, data-model centric web frameworks) would lend themselves to this kind of problem...
What you're needing to do, in essence, is describe the kind of information that the sites needs to store/organize/search through (the data model), add some standard functionality for maintaining user logins, comments etc, provide a template for rendering the information into html, etc.
posted by Morbuto at 4:03 PM on July 26, 2010


Response by poster: Thanks, everyone. I know this is a somewhat problematic kind of project, both technologically and implementationally (is that a word?). Ruby on Rails was my original thought, but I totally forgot about Drupal. I also like the Stack Exchange idea -- it's not how I envisioned the site originally, but it could work (especially in dealing with the fact that the data set needs to be built up). I'll play around with those three and see if I can get a prototype going.
posted by neushoorn at 11:21 PM on July 26, 2010


« Older Nairobi to Addis Ababa?   |   Teasing as means of enforcing social roles? Newer »
This thread is closed to new comments.