nanovivid

Growl Notifications for Lala

November 15th, 2008Code / Geeking Out / Goodies / Mac / Music2 Comments

Recently, Jeremiah was kind enough to introduce me to Lala, which is a wonderful music browsing/listening/collecting/buying site. That’s a little convoluted, so maybe a “web-based iTunes with some community features” might be the best way to describe it. Easily my favorite feature is that you can listen to entire songs before you buy, not just 30 second snippets. That’s a huge win compared to most competing stores (Rhapsody MP3 lets you listen to full songs as well, but it lacks an easy method of queueing entire albums). Pricing is another advantage; most albums are $7.49 or less, beating iTunes, Amazon MP3, Rhaposdy MP3, and just about everyone else.

Almost as soon as I started using Lala, I realized that it really needed its own Dock icon and separate browser window. Enter the wonders of Fluid. I created a SSB (Site Specific Browser) for Lala with a cassette tape as the icon. (Sure, it might not make perfect sense, what with it being digital music and all, but it’s better than using Lala’s favicon. If you want another option, the speaker icons by Jonas Rask are very nice.)

However, one important piece of functionality was missing. I’m very accustomed to having Growl notifications for music that’s playing, and while Fluid supports dispatching Growl notifications, there weren’t any existing Userscripts to make it happen. Of course, I couldn’t leave well enough alone and spent a couple hours poking around Lala’s JavaScript to see if I could find anywhere to hook in and grab player notifications. Eventually I tracked down the Header.updatePlaybackNowPlaying function, which had exactly what I needed, and I was able to write a Userscript to generate Growl notifications on Lala track changes.

If you want to set up your own SSB for Lala with Growl notifications (note that you will need to have Leopard for this as Fluid is 10.5-only):

  1. Download Fluid if you don’t already have it.
  2. Open Fluid and create a new SSB for http://www.lala.com/ (and set the icon if you’re so inclined).
  3. Launch your Lala SSB.
  4. Click the Script menu (the icon to the right of the Window menu) and choose Open Userscripts Folder.
  5. Download the LalaGrowl Userscript, unzip it, and place LalaGrowl.user.js in that folder.
  6. Back in Lala, click the Script menu and select Reload All Userscripts.
  7. Click the Script menu one last time and click LalaGrowl to enable it.
  8. Reload the page to activate the script (it’ll be automatically loaded from now on, but you have to reload the first time so the code can hook in and grab the information it needs to display notifications).
  9. (This is optional and not related to Growl notifications). I’d highly recommend checking the Closing the last browser window only hides the window option in the application’s General Preferences. This makes it so that you can close the window and music will continue to play, just like in iTunes.

Hopefully someone other than me finds this useful!

As a disclaimer, I should also mention that if Lala changes their JavaScript significantly, the notifications will stop working, since I am depending on undocumented functionality (Lala doesn’t have an offical JavaScript API).

If you want to be my friend on Lala, here’s my profile page.

M83 - Couleurs (Sasha Invol2ver Remix)

Title and Registration

May 22nd, 2008Goodies / Site

The other day, John Gruber posted some nice code for converting text to title case. It was quickly ported to Python and JavaScript. I decided it would be useful to have a PHP version as well, so here’s my contribution.

I’ve already added one edge case that the original ignores, just because I had a title that needed the fix. One of my old posts is titled “More Scaper-ing.” Before the fix, it would get converted to “More Scaper-Ing,” which just looks wrong. So I dropped in a special case for it.

Let me know if you find the plugin useful or find any bugs.

Comments closed on this post. Please leave any bug reports or comments on the plugin’s page.

Lykke Li - I'm Good, I'm Gone (Fred Falke Remix)

Long Distance Call

March 17th, 2007Goodies / Mac / SoftwareComments?

Since we have CallVantage again, I’ve updated CallVantage Dialer. The major new feature is that it actually works again, so that’s pretty fancy. Other changes include storing your username and password in the keychain and better compatibility if Quicksilver isn’t installed. Get it while it’s hot!

Klaxons - Golden Skans (David E Sugar Remix)

A Delicious Revenge

December 6th, 2005Geeking Out / Goodies / MySQLicious / Software4 Comments

Believe it or not, there’s actually a new MySQLicious! However, it’s really pretty much identical to the old MySQLicious. All I’ve done is fixed the $this->$newline bug mentioned by Richard and clarified the licensing, as suggested by Walter. Additionally, the FAQ has been updated.

There seems to be an outstanding bug where sometimes MySQLicious erroneously mirrors all bookmarks instead of those for a selected tag. Then on the next mirroring, it corrects itself. I haven’t done any debugging yet to figure out if this is a del.icio.us issue or a MySQLicious bug.

I’ve also had one report of issues with certain characters that I have yet to reproduce, and I haven’t seen the errors caused by a missing notes field either. Any help in tracking these down would be appreciated.

Oh, and the title of this entry? I was looking for synonyms to “delicious,” and “a delicious revenge” was in the definition. It was far too delicious to pass up.

Mylo vs. Black Eyed Peas - Felix Drops The Humps

Rescue Me

September 11th, 2005Geeking Out / Goodies / Mac / Software2 Comments

When Apple introduced iTunes 4.9, they also introduced a rather annoying bug where a valid MP3 occasionally gets identified as a "QuickTime Movie." The problem comes when you try to sync to your iPod, because iTunes refuses to copy the songs over. iTunes MP3 Rescue to the, um, rescue!

When you launch the program, it will search your iTunes library for MP3 files that are incorrectly identified and repair them. Simple as that. (See below for update).

Many thanks to Cian Walsh of Afterglow Design for the fabulous icon.

2008 Update: I don’t think this is an issue with newer versions of iTunes, but if you’re still having problems, please see this hint and the code here.

M.I.A. - Sunshowers (Mylo Mash by Luminfire)

In Your Tummy?

April 2nd, 2005Geeking Out / Goodies / MySQLicious / Software14 Comments

Just a quick note that MySQLicious 1.1 is out. What’s new? I thought you’d never ask!

  • Fixed an issue with URLs that have single quotes in them.
  • Added the setOutputMode() function to change between command line, html, and silent modes.
  • Dramatically improved error handling and reporting.
  • Various internal improvements.

So grab it and enjoy the deliciousness.

Wagon Christ - Saddic Gladdic

Dinosaurs… On the Instant Messenger!

March 28th, 2005Art / Goodies / Mac / Software3 Comments

With apologies to Ryan and Toby.

we can sexy

(If you want to do this with your Adium, just grab the Dinosaur Comics Emoticon Pack).

The Killers - Somebody Told Me (Mylo Mix)

Yummy!

March 23rd, 2005Geeking Out / Goodies / MySQLicious / Software3 Comments

I’ve completely revamped the MySQLicious page and added a tutorial on setting it up from scratch. This should serve to eliminate some of the confusion on how it’s used. In my initial excitement of “here’s this cool tool I wrote!” I overlooked the fact that originally the documentation didn’t do a good job of explaining implementation. I think it’s much better now.

The MySQLicious download has also been updated to include a new file that is a fully working implementation. If you downloaded it before but haven’t gotten around to using it, grab the new download. If you’re already using it, don’t bother, since the actual MySQLicious code hasn’t changed.

PS - If your name is kael and you emailed me about MySQLicious, I tried to reply but you must have mistyped your address because it bounced. The stuff in the tutorial is basically what I would have sent you anyway.

Tori Amos - Sleeps With Butterflies

More Delicious Than Ever

March 20th, 2005Geeking Out / Goodies / MySQLicious / Software5 Comments

When I started using del.icio.us, I decided I wanted to use it to manage the linklog for my site. However, I wasn’t satisfied with using an RSS feed to put the most recent links on the frontpage. I wanted to have browsable archives, which meant that I needed my links stored locally on my server. In spite of some extensive searching, I wasn’t able to find an existing del.icio.us to MySQL mirroring tool. Thus, MySQLicious was born.

If synching del.icio.us bookmarks into a MySQL database sounds useful, then MySQLicious might be for you. Check out the MySQLicious project page for downloads and documentation.

Imaginary Baseball League - A Lot To Say

Call Me Anytime

March 6th, 2005Goodies / Mac / Software9 Comments

CallVantage Dialer 1.3 is released! Here’s the changelog:

  • Quicksilver action support.
  • Allow passing a number to the script using LaunchBar.
  • Growl 0.6 fixes and support.
  • Automatic conversion of +XX-number to 011-XX-number for international dialing (thanks to Paul for the request).
  • Migrated from saving in text file to saving in a plist (thanks to Jon for the suggestion).
  • Added Install and Uninstall scripts.

DJ Rawkus - Audio Differenz