I'm starting to think about another new project. I'm considering putting together a site of lists. The idea is to create a one-stop shop where developers et al can go to get lists on everything from the states in the union to fashion designers. I want the lists to be somewhat maintained by the community but with an emphasis on being pulled from a reliable source of record. For example, a list of zip codes in the US would preferably be created and updated from the post office via a link to an officially published list while a list of Paris Hilton sightings would be maintained by the population at large.
Some of the basic requirements are:
- Lists must be highly available & reliable
- Easily created and modified via HTTP
- Accessible via multiple formats (JSON, XML, SOAP, HTML, etc...)
- Highly but loosely relational
- Provide infinitely deep associations
Aside from the accessibility requirements, the real power comes from being able to relate different lists. So if you have a list of States and a list of Birds you could relate members of the Birds list to the States list in order to identify State Birds. You should then be able to query the States for a list of State Birds. Further more someone should be able to ask for a list of fashion designers who have products for sale at Walmarts in states with Republican governors, and providing there is a way to link all of the necessary lists together to get there, they should get accurate results.
On the surface this appears to be a pretty straight forward and simple system to put together, and it kind of is... until you start to consider performance and the ease of maintaining the lists. The trick will be in coming up with an extremely simple method of creating a list and its relationships. This is what I'm smashing around in my brain in my spare cycles right now.
The other thing I have to figure out is how to monotize it. It's not that I want to make money on it, in fact I don't think I'd be interested in ever making a dime off of something like this, but I can't afford to fund it personally and even if I could, a personally funded service would hardly be considered reliable enough for others to use. It needs to be self-sustaining. Now there are a number of ways to reduce the costs but nothing that I know of that would maintain the availability and reliability for zero cost. Right now the only idea I have is something like a usage charge for higher volume users. That would allow the average person free access and put the burden on the heavy users (yeah bitch, tax the rich!) Of course that would also then force me to provide certain SLA's for those that pay... oh the complications!
Anyhow, just another one of dozen or so ideas I'm batting around right now.
TTFN