No Longer

Once upon a while ago, I was able to bring live data to this site from my home computer. This was done through a relatively convoluted series of homemade software contraptions that half worked to deliver a working playlist log here on the site.

Unfortunately, as I've since stopped using my old BeOS home machine for music, it's no longer possible to show what I've been listening to from it. Although I do still love the BeOS dearly and think it deserves immortalization for its timeless genius, it's no longer worthwhile to run my music from such an old, tired computer. In fact, it's downright risky - after irreplaceably losing my Windows hard drive (and most lamentably, my several hundreds hours worth of Morrowind character that was just about to beat the damn game), I was really not willing to take more chances with the livelihood of my music library.

I will work for a future replacement of this, along with most other features in my blog. Until that time comes, however, this page has been disabled.



How It Worked - Nostalgia

The above information is as nearly completely live as I can make it without causing obscene annoyance to both my home computer nor the web server; the results are cached for up to five minutes, which is hardly a long wait if you're dying to get fresh song suggestions. Right.

I run SoundPlay, the world's most awesome audio player, at home, on my BeOS machine. I one day conceived of the idea of having a live list of my most recent audio picks, and started working with SoundPlay's plugin architecture to develop a solution to not only catalog songs as they were played, but also to encapusulate a little web server and deliver these results by XML. I even went so far as to dream up an extensive integration with my custom database, Paradigm, that would allow for cross-referencing and counting facilities. Yeah right.

This is the second evolution of what was originally a total hack connection of numerous tools and tricks to make this playlist available. When you load this page, the script on the webserver here goes to ask the webserver on my workstation at home (RobinHood) for all the information you see above. This information is provided by a tiny application, eavesdropper.client, whose only job is to ask eavesdropper.server for what's hip. eavesdropper.server is actually much larger, has some pretense of modular design, and does some bookeeping to keep the answers coming once applications like SoundPlay have been quit. But eavesdropper.server will always attempt to ask for the most recent data, and so it then turns around and nags other programs, such as the oft-mentioned audio player app. This call is answered by my custom plugin, PlayLog, which does the dirty work of tracking the most recent songs and providing their attributes (artist, title, album) to eavesdropper.server.

Back on the webserver's end, all of this is fairly transparent; it simply requests information from my server at home, just as if it were yet another bored websurfer like yourself, and gets back a page full of tailored XML, the gorgeous fruits of the labors of the above three programs. It then takes this information, and using the miniXML library for PHP, converts this back into structured data, like arrays and index variables and whatnot. This is essentially what gets displayed here, disregarding both the caching mechanisms to make certain this server isn't constantly annoying my home server with requests for 20-second-newer information, and the framework requirements of my home-spun templating system to present my blog in "books" (differentiating the "regression analysis" theme from the "blog bebop" theme).