media, tv comments edit

Saw a preview for a new CBS show called Kid Nation last night.  The idea is that they set 40 kids up in an old west town with no adults around and see how they fare.

Anyone else think this sounds like Lord of the Flies, western style?  I’m waiting for the part where Piggy gets killed on national television.

Yeah, they’ll probably edit that out.

Greg posted some great video that one of the crewmembers, Cassie, took during the fireworks show we did this year.  It’s pretty cool.  About 1:15 into the video, it zooms down and you can see the line of mortar racks and four people standing a few yards back from where it’s all going off.  I’m standing in that group with a road flare on the end of a stick (not lit), waiting to ensure that everything goes off.  (If one of the shells doesn’t go off electronically, I get to light up the flare and run out and light it by hand.  Fortunately that didn’t happen.)

media, music comments edit

My Chemical Romance - The Black
Parade

I’m a little late to the game on this one, but I’ve really been enjoying The Black Parade album by My Chemical Romance.

I think it started out by playing Guitar Hero II - one of the songs in there is “Dead!” which is from this album.  Jenn and I got 100% on that song (on “Easy” level) playing cooperative and it kind of stuck in my head.  I’d heard “The Black Parade” on the radio and liked it, so I figured I’d give it a run.

The album actually reminds me a bit of Pink Floyd’s The Wall - it plays out like a story, with the music style changing with each song, and in many cases becoming very… theatrical.  “Dead!” and “The Black Parade” are my favorite songs on the album, but the whole album is generally pretty darn good and is a very easy listen from front to back without having to skip any of the songs.

I can’t say I’ve heard much anything else by My Chemical Romance, but it does make me curious to hear more.  Maybe I’ll have to pick up something else by them and see how it fares.  Regardless, this thing rocks, and I totally recommend it.

I’m a member of the Amazon Associates program and when I put links to products in my blog postings or in emails, I like to make sure they’re referral links.  On a web site, that also means you can take advantage of the automatic popup link script they provide.

The problem is that you have to create links to particular products by going to their site and doing a search or plugging in the ASIN number so the URL can be generated.  But the URL has a pattern, so if you know the pattern and have it handy you can pretty easily create the URL yourself.

To make this way easier, I created a little bookmarklet that lets you navigate to a product page on Amazon and automatically copy the affiliate URL for the item to your clipboard for use in email, blog links, etc.

NOTE:  The bookmarklet is for IE ONLY. You can’t easily copy data to the Firefox clipboard so I have a different mechanism (slightly more manual) for the FF users, below.

INTERNET EXPLORER:

Installation

  1. Download the zip file and drop the .url file in it into your Favorites folder.
  2. Open up the file in Notepad.  You’ll find a really long line (line 4) that starts out like this: URL=javascript:aid='mhsvortex';if(!window... Change the value of ‘aid’ to be your Amazon Associate ID.  (By default it’s mine - mhsvortex.)
  3. That’s it - you’re ready to go.

Usage

  1. Navigate to a product page on Amazon that you want an Associate link to.
  2. Select the bookmarklet from your Favorites list.  It will automatically parse the URL and create a product link using the product’s ASIN and your Associate ID.  You will get an alert message telling you what link got copied to your clipboard.
  3. Paste the URL wherever you want to use it.
  4. If you try the bookmarklet on a non-product page or on a non-Amazon site, it’ll prompt you for the ASIN of the product you want to link to.

[Download ‘Copy Amazon Product URL’ Bookmarklet]

FIREFOX:

Sorry, FF users, but the security and pain around copying to the clipboard means you have a slightly more manual process to endure.

Installation

  1. Right-click this link and create a bookmark to it: Build Amazon Product URL
  2. On the main toolbar, go to “Bookmarks” and find the bookmark you just created. Right-click it and select “Properties.”
  3. In the “Location” field, you’ll see a big string that starts like this: URL=javascript:aid='mhsvortex';ur=new... Change the value of ‘aid’ to be your Amazon Associate ID.  (By default it’s mine - mhsvortex.)
  4. That’s it - you’re ready to go.

Usage

  1. Navigate to a product page on Amazon that you want an Associate link to.
  2. Select the bookmark from your Bookmarks list.  It will automatically parse the URL and create an alert that tells you what the URL is. Select this URL and copy it to your clipboard. (This is the manual part.)
  3. Paste the URL wherever you want to use it.
  4. If you try the bookmarklet on a non-product page or on a non-Amazon site, it’ll prompt you for the ASIN of the product you want to link to.

gists, vbscript comments edit

UPDATED 7/11/2007: Added handling for email subject line or first line of body to be the task subject; also added Outlook security information to get this to work.

I’m not lucky enough to have a Blackberry so I don’t have access to my task list via a mobile device.  I don’t generally carry my Pocket PC around and I don’t try to get the wonky synchronization to work on my crappy Motorola phone.  When I think of something and I’m out, I use the phone’s email capabilities to mail myself a one-liner that has the task information in it, then when I come back to the office I use those as tasks.

To that end, I wanted to set up a rule that would just take those one-liners and process the mail into a task automatically.  Since I use Outlook, I can do that with a rule that runs a script.  Here’s how to do this in Outlook 2003.  Not sure, but it might also work in 2007.  Haven’t tried.

First, go to “Tools -> Macro -> Visual Basic Editor.” This gets you to the script editor.  In the “Project Explorer” open up “Project1” and you should see a folder called “Microsoft Office Outlook.”  Open that up and you’ll see “ThisOutlookSession.”  Double-click that to open it.

You should be looking at a VBA editor window.  If you’ve already got other scripts going, it might not be empty.  In that window, paste this:

Sub ProcessMailItemIntoTask(Item As Outlook.MailItem)
    Dim strTaskName As String
    strTaskName = Trim(Item.Subject)

    If Len(strTaskName) < 1 Then
        ' No subject - use the first line of the body
        strTaskName = Trim(Item.Body)
        Dim intCrLfPos As Integer
        intCrLfPos = InStr(1, strTaskName, Constants.vbCrLf, vbTextCompare)
        If intCrLfPos > 0 Then
            strTaskName = Trim(Left(strTaskName, intCrLfPos - 1))
        End If
    End If

    ' Trim TASK: off the line
    Dim intKeyWordPos As Integer
    intKeyWordPos = InStr(1, strTaskName, "TASK:", vbTextCompare)
    If intKeyWordPos = 1 Then
        strTaskName = Trim(Right(strTaskName, Len(strTaskName) - 5))
    End If

    ' Create the task
    Dim objTask As Outlook.TaskItem
    Set objTask = Application.CreateItem(olTaskItem)
    objTask.Subject = strTaskName
    objTask.StartDate = Item.ReceivedTime
    objTask.Save
    Set objTask = Nothing
End Sub

What that script does is process any message into a task. It uses the subject line of the mail (or the first line of the body if there is no subject) as the task subject and the time the mail was received as the start time for the task.  You’ll notice it also pulls off the word “TASK:” at the beginning of the line - this is going to be a keyword for our rule.

Now that you’ve got the script, save it and close the VB editor.  Now, back in Outlook, go to “Tools -> Rules and Alerts…”

Select the “New Rule…” option and start from a blank rule.  Select “Check messages when they arrive” and click Next.  Select the conditions “with specific words in the subject or body” and “sent only to me.”  For the “specific words” in the subject, use “TASK:” - this will be the magic flag that tells us that this needs to be turned into a task.  For the actions you want to take on the message, select “stop processing more rules,” “run a script,” “mark it as read,” and “delete it.”  This will handle the auto-processing feature of the message so it doesn’t hang around in your inbox after it’s been taskified.  Finally, for the script you want to run, select “Project1.ThisOutlookSession.ProcessMailItemIntoTask.”  That will call your script to create a task item out of the subject line of the message.

Once you hit Finish, you’re done.  Now when you mail yourself a message with the subject line like “TASK: Take shirts to cleaners” you’ll get a task added to your task list with the subject “Take shirts to cleaners.”  Pretty simple.  The only drawback is that it’s a client-side rule so you have to have Outlook running to process the rule.  That’s pretty simple, though - even if you don’t have Outlook running all the time, when the client starts up it runs rules and will process all of the appropriate emails next time you fire it up.

Note that if this script tries to read the body of the message, you’ll get that annoying “Something is trying to read email addresses in Outlook - allow for X minutes” dialog popping up.  Not sure why it thinks we’re looking at addresses if we’re only looking at the body, but oh well.

If you have trouble getting this to work, check two things:

First, make sure you’ve restarted Outlook once before trying it.  For some reason Outlook needs to shut down and restart to take macro changes into effect.

Second, you may need to change your macro security level.  Go to “Tools -> Macro -> Security…” to see your security level.  This will only run in “Medium” or “Low” setting because it’s not signed.  If you change your security level, you do so at your own peril.  I’m not responsible if you get hit by the next big Internet worm.  If you don’t want to change your security level, you can digitally sign your macro project.  The digital signature route is the recommended way to go to stay safe, but it’s the biggest pain, too.