I had some trouble getting id3lib to work on the machine I'm ripping on, so I've been just doing id3v1 tags for now, which will work fine because I can generate the rest of the id3v2 tag from the file and directory names of the files later.
Now, id3v1 sucks in a variety of ways. The most obvious way it sucks is very short fixed-length fields (someone commented once that id3v1 looks like it was written in Fortran, and that id3v2 looks like it was written in Fortran95). I can live with that.
But id3 has a field, "Genre", whose implementation is truly colossal suckage -- the field contains an integer which corresponds to a genre in a fixed list of genres that someone, somewhere decided were all the possibilities. There is no option for user-defined genres. You use what's there, and barring extensions (which has happened once already), no new forms of music ever exist.
But that's not the half of it -- to understand why it sucks, you really must read the genre list. I can't begin to imagine how they came up with the list, but I can imagine what kind of music the people that came up with the list listened to. Note that there is "Classical", "Country", and "Jazz" -- but a gazillion kinds of electronica, and strange things like "Space" and "Dream" and "Pranks" (which is not "Comedy" for some reason), presumably because the implementors owned a couple MP3s, or maybe a whole album, in each of these categories.
So I guess blindly just to give it a tag, and then I file it by a different arbitrary list of genres in the directory hierarchy -- GENRE/Artist/Album</tt> etc. -- but this is sucking for the same reason. I have a "BJORK" genre. I have "Electronica" which is huge and "JPOP" which is ridiculously narrow.
I realize that the proper solution to this is to stop trying to organize the filesystem into genres and just use playlists, which is what I will probably start doing. But I'm curious -- how have the rest of you solved the problem of organizing kinds of music?
(To save you the trouble: I know Ogg Vorbis has a text field for genre. I'm not interested in Ogg because the point here is to have music to play in the car, and I'm happy to use the extra disk space and lame --r3mix to get the quality level I want.)