Information about Tagfriendly, the MP3 blog aggregator.

Tuesday, July 07, 2009

Mp3 Images

For various reasons, I've only been managing a few minutes of Tagfriendly work per day, on average.  Progress has been slow.  I thought I'd have some time to hack during my vacation, but it turns out I've been having way too much fun doing other things, in Alabama of all places.  But I did manage this...

In the beginning, Tagfriendly would show images for MP3s with images embedded in the ID3 tags.  Pretty cool, right?  Except most blogs don't seem to care about this (why should they?), which meant there are a lot of song posts with no accompanying image.

Then a few months ago I added support for grabbing the Amazon image for songs that include album data. But that hasn't been working well because the ID3 data is sparse or Amazon just doesn't carry a lot of the [indie] titles.

This week I took some time to figure out the Google APIs to see if there was a simple way to search for accompanying images that way.  I figure that at this point, I don't care so much about what image is associated with a song post so long as it is relevant, and Google so far has not disappointed there.

So enjoy Tagfriendly, now with more song art.  (For those interested, tf2 automatically uses these images.)

Monday, May 04, 2009

Last.fm Love/Ban

Last.fm love/ban is not available in the Tagfriendly player (located on the homepage).  You need to be sure to give Tagfriendly third-party access though.

I looked at what it would take to get full-on scrobbling support, but it would require asking the user for his Last.fm password--something too obtrusive for my tastes.

Friday, May 01, 2009

Simple Trends

I created a page that shows some statistics for artists and blogs.  When I have enough interesting data, I'll make that page more interesting.

Moving and Tweets

I moved Tagfriendly to a beefier VPS tonight.  This brought RAM all the way up to 360MB, if you can believe it.  (It was 128MB.)  This means that I don't have to bring paster down when the crawler runs, and that I can probably get away with a simultaneous apt-get update as well.  We'll see.

I've started using Twitter more personally, so I thought it was time to bring Tagfriendly into 2009 and start tweeting as well.  I've got things set up so that newly discovered MP3s are tweeted, along with their URLs to the tune of one tweet every 5 minutes.

I'm not sure that I like it... kind of noisy.  But then again, I'm not a kid anymore.

Work on the zeitgeist is (finally!) underway.

Tuesday, April 14, 2009

A Customized Embedded Player

I spent some time hacking on the Yahoo! Media Player objects to force my own UI.  The results are now up on Tagfriendly.  Good results, I think.  More details are available on my personal blog.

I eventually got to the bottom of my XSPF problems from earlier.  Among other things, YMP executes a GET request to a Yahoo! service that contains the URL to your XSPF file.  It appears the purpose of that service is to do some data transformation.  The result is JSONified markup that gets used by the player.  The problem is that if your XSPF is behind a NAT (like mine) that service cannot retrieve it.

Kind of hokey, but I guess that is the way they roll.  If I take care of delivering a well-formatted XSPF, the YMP should trust me and display the content of the markup.

Thursday, April 02, 2009

Cralwer Overhaul; Work Resumes

Work on Tagfriendly went on hiatus in March as I needed to focus on a busy month at work and home. Over the last few days I've been able to resume some work.

One thing that has nagged me for quite a long time is that the crawler would inexplicably crash, and my logging wasn't good enough to tell me where or why. Well, it is now. And like I suspected, it had to do with the limited memory available to the crawler. Life is getting better on this front.

While I was at it, I decided to refactor the crawler into something better, using the lessons I learned while writing it. The end result is less code, hopefully less bugs, and certainly more stable. I've managed to turn over a few bugs that I'll be working on over the next week too.

One thing I didn't realize, and I don't know how long it's been this way, is that the iTMS link maker stopped using gzip compression. That totally broke my automated link maker, which assumed gzip all the time. This is fixed and iTMS links have made their way back into the website.

I've also decided that either I'm tired of the site colors (likely) or that they just sucked to begin with (more likely), and are due for an overhaul. My design chops aren't what they used to be though, so I'll be taking a minimalist approach (because I have to).

That's all for now.

Wednesday, February 25, 2009

Now With More Social

I rolled out an experimental feature tonight that that allows you to create RSS feeds based on index matches to your Last.fm top artists or artists similar to your Last.fm top artists.

Nifty.

You can utilize this on the feed maker, but you need to indicate who you are first.

One thing I noticed that gave me something to think about: artist names are indexed as free text, which means it can turn up in results as a non-exact match. This means that if you do a search on "James" that "Etta James" and "James Brown" will turn up in the results.

This is good sometimes, but not when you're searching for specific artists. My solution, which I'll implement tomorrow will be to create "exact" fields for those fields that I wish to be able to perform exact searches on. This duplicates some index data, but it is the only way to get what I want.

Tuesday, February 24, 2009

Embedded MP3 Player

I'm using the Yahoo Media Player to stream the MP3 that the Tagfriendly crawler discovers.

The ethics of it all are probably dubious, but hey: they put the links out there, and this is the world-wide web. I'm going to consume those bits.

I tried creating an XSPF playlist so that I wouldn't have to anchor-link every MP3, but wasn't getting any love that way. Maybe I'll get it working later on.

Anyway, enjoy. r224

Saturday, February 21, 2009

Version 0.1

I've accomplished the meager goals I set for myself in January with regard to Tagfriendly. Here are the main goals:
  1. Tracks music blogs.
  2. Full-text search.
  3. Dynamic RSS feeds (turned on last night).
  4. Learn python (still a work-in-progress).
I've added lots of features along the way, but those are the basics that I wanted. Here are some things I've been thinking about for the next iteration (roughly one month):
  1. More Last.fm (social) integration. Lots of ideas here. For example:
    • What if when you scanned the recent MP3s, you could know which ones your friends like?
    • What if you could create an RSS feed that would generate entries related to your top 10 (20 or 30) songs or bands? (this was suggested by a friend.)
    • What if you could scrobble love/hate directly from the website?
    • Lots of cool things here, and they won't be too hard to implement.
    • The problem with Last.fm is that using them has a detrimental impact on Tagfriendly site performance (their services are S-L-O-W). I've used a lot of caching (artist information mostly), but that only gets me so far.
  2. Simple identity management. This will enable features like "show me all the new stuff since the last time I was here." I'll start with just a cookie. That has limitations, so I'll eventually push for simple email registration.
  3. Flash based in-browser mp3 player to stream the songs from the blogs. The ethics of this are probably dubious, but I have noticed that many of the bloggers deep link to mp3s stored on other sites. I guess we're all in this together. Hopefully I can find something off the shelf that does this.
  4. I need to clean up the back-end scripts that do the crawling and generate the static pages.
  5. Better tests.
  6. More blogs. I'm up to 30 and crawling+indexing get done in about 3-4 minutes. I'd like to scale up to 100 blogs for this iteration and see how things are handled.
That's about it for a month. I average about an hour a day of Tagfriendly development, so this is about the right amount of work for a month. (Honestly, I could probably spend an entire month on testing, but how sexy is that?)

Monday, February 16, 2009

MP3 Images

I fixed an issue last night where *NO* song images were getting generated because of a coding typo. They all errored out and I've been too busy to pay attention to the logs (r200).

Sunday, February 15, 2009

Tagfriendly Updates, 14 Feb 2009

Recent updates to the Tagfriendly code:
  • r195: include descriptions in RSS entries generated from blog entries.
  • r193: google ads.
  • r189: lots of UI changes
  • r184: dynamic feeds (not public, in beta for a few days).

Followers