Why not simply borrow an open-source weblog (such as LiveJournal):
...create a "journal account" for each artist, e.g. rollingstones, thebeatles, what-have-you. Run a batch process to post the lyrics to each song as individual entries in these journals. You could then make an list of index hyperlinks and put it in the "user info" or use some kind of style trick. If you set up each band as a separate account, you could assign "experts" to each band and give them the password so they could correct the lyrics...or moderate the posts.
Then, allow users to create accounts and post comments on the entries; the whole process of validating email addresses and tools for maintaining the site are part of the LiveJournal suite. Seems pretty simple and you're working with technology that will just keep improving anyway, without having to "roll-your-own".
Additionally, you could avoid having to write your own search facilities by borrowing from Google:
I throw the idea out here for you because I have a lot of things to do and I don't want to have to be the one to set this up. It's really boring and straightforward. ;) But if you don't do it, I will!
seattlesque: Have you ever tried installing LiveJournal? It's an absolute nightmare - plus the developers are mainly proficient with PHP, whereas LJ uses Perl. I'm not saying that using LJ isn't a good idea in principle, but it's only any good if we could get it to work and be able to work with it (add modifications etc. because I doubt that it would do everything we wanted out of the box).
Google web search is okay, but unfortunately it's not very customised. You'd only be doing a full text search rather than being able to say "find all songs whose title begins with 'fred'" etc. We could use the Google APIs, but they are limited in that you can only make something like 100 queries per day which isn't enough for SM.
seattlesque writes back:
I actually do my lyrics searches using Google and I appreciate the flexibility. I type in "fred" and "lyrics" and any other terms I know, and usually get straight to what I'm looking for. Yes, I might hit a page which is a guy named Fred talking about how he judges songs based on the music instead of the lyrics...but it's easy enough to filter those out and get to "Right Said Fred" lyrics.
(Even with a crappy query like FRED LYRICS, I get "Right Said Fred" lyrics ranked 4 in Google.)
Not only that, I have the expressive power to find out about the guy named Fred and his take on lyrics--which might have been exactly what I was looking for. The Google approach to information retrieval is very powerful, why not leverage its "weaknesses" as well as its strengths? You might find that these "weaknesses" aren't really a problem for users at all. This is what the classical category-based indexers like Yahoo! found out--everyone ditched them for Google.
Regarding LiveJournal...I have tinkered with LJ set-up and it did not seem like an absolute nightmare. It is reasonably documented:
Not only that, there is an entire community on LJ of people who will help you through any problems you might be having. There are 1149 members in the lj_dev community, who will hold your hand if need be...
Regarding your need for customization, I'm afraid I don't understand how the power offered by these "custom features" could ever outweigh the broader feature set offered by leveraging someone else's solution. And if you actually go ahead and set up the infrastructure (a "community" journal for each band, with the lyrics all posted as separate entries and an index of the lyrics on the "user info" page for that community)...I'm sure you'd have volunteers chomping at the bit to add features to the site.
In fact, you don't even need to add your "features" by hacking directly on the LiveJournal code. You can just leave the code running as-is and add your services as another concurrent site. Notice services like LJMATCH:
Who knows what that's written in! The point is that it augments LJ (by providing something of a personals-match service) without trying to duplicate its feature set.
What I'm saying is all fairly central to the notion of web services: find what's unique about your problem, implement that part, and then link through to other services which provide the rest of the infrastructure. I am just really hard-pressed to figure out what's unique about lyrics discussion as opposed to any other discussion I might have.
What I (and many others) want to see is a donation-supported no popup-ad place where song lyrics are available, searchable, kept up to date and moderated, and people can have discussions about those lyrics and be notified when people add new comments to the discussion or reply to a post they have made. LiveJournal is ambitious and could even theoretically let users know about all kinds of updates:
You have the lyrics collection and the server. All the rest of the problems have already been solved...and unless you've got experience to suggest you can do a markedly better job...why solve them again?
This pattern seems to repeat itself countless times over the web. I am thinking there is a tremendous business opportunity out there for someone who can make it practical and easy for websites like this one to be built up on top of LiveJournal. Can anyone point out the flaw in my thinking, or if you agree with me...care to discuss a turnkey solution for this?