Q How does A Year of Songs really work? I mean -- what goes on behind the scenes?

I see that you use Blogger as your blog editor -- but how about all these seemingly standardized links -- do you use templates or some form of automated system (I noticed you're a database/web developer in real life)... surely you don't do it all by hand... do you?


A Well... as I think I wrote elsewhere, I decided to use the online Blogger editor (which has a lot of blog oriented features built) because I only had a few days to put things in place before my self-imposed startup date and time -- the autumnal equinox, 2005.

It's been a bit rocky using some one else's tools and if I had it to do over again, I would have taken the time to develop a proper CMS (content management system). But I have used them since for collaborative sites and it was nice to have a multi-user infrastructure pre-rolled.

With regards to my current AYoS system:

For the first year or so, I used templates I'd established, a basic framework into which I could cut and paste each song's particulars (the URLs and link text, links to previous versions, and so on) into the template. Every link and image on a typical AYoS page represents something that had to be copy and pasted individually into the template.

What started out as an image, a few paragraphs and a simple link to an Mp3 had evolved into something increasingly elaborate and involved.

It came to a jumping off point with the introduction of the little Flash media player you see on most AYoS pages.

Get the Flash Player to see this player.

The player uses simple XML files (text file representations of simple data structures) for its playlists. They're easy to create but it's tiresome work without some robotic help. Since I'd decided I wanted to keep the playlists fresh that precipitated the creation of the long-anticipated, long-postponed AYoS database project and that allowed me to extend that automation backwards to the creation of each blog entry. (See a screenshot of the DB app, fig 1, below.)


Here's my current workflow:

Below is a screenshot of the database application I created to handle almost all of my AYoS database functions (the query I mentioned above is separate):

AYoS Database App
figure 1, the database form application I created to manage AYoS

Maybe it's not the most elegant or sexy database form application ever designed -- but it works very well for me and reduces my drudgery coefficient enormously.

I approached the development as a classic top-down design job.

The basic task was to create a database of particulars related to each blog entry and its related song: specifically, the download, stream, image, and blog post URLs, as well as the date of the post.

The database would then be used on an ongoing basis to generate the XML and M3U playlist files, as well as a "starter page" for the blog post, complete with all the pertinent links to media, streams, and previous versions.

As the project evolved, I added the ability to add a given track to various custom playlists. The user (that's me, pretty much, of course, for now) can create an unlimited number of playlists -- but I currently only use my so-called highlights playlist. I also output a current playlist of all the AYoS tracks, as well. (A field called DoNotUse keeps really egregious tunes out of the playlists entirely, if necessary. And it occasionally has been.)

I also added a 1-10 self-rating to help me keep things sorted out, quality-wise, as well as a notes field. (If I ever put up a web-based app, I'll give you guys your shot at ratings, too. Maybe.)

Above the fields you'll notice small print legends preceded by a >> mark -- these are web links to the URLs in the fields. Click on one and your browser will open to that page.

To the right side you'll see a list of alternate versions of the selected song, their post dates, their ratings, and a checkmark column indicating whether they're on the currently selected playlist. The blue field in the upper right corner is a fast-find combo box. Enter the first few characters of a song title and a pulldown list of alphabetized titles pops down with the cursor on the first matching title.


NOTE: Gee... when I look at all that I wonder why the hell I'm doing all this for free... Did I mention I have a PayPal page where you can make donations?


back to AYoS