Sequential Logic

Where software engineering meets online marketing


The Fine Print

There’s always something in the fine print of the digital download services that are coming out these days that show the big media companies “Just Don’t Get It”, and Amazon Unboxed is no different.

I was looking into the Tivo/Amazon Unboxed integration, thinking how cool it is that you can remotely buy a movie, and it will be on your Tivo when you get home, when I spotted this gem:

What is the “Pay-TV Blackout Window”?
Due to restrictions from the video rights holders, most newly released movies will occasionally become temporarily unavailable for re-download from Your Media Library—even after they’ve already been purchased.

During this “Pay-TV Blackout Window” certain programs will be temporarily unavailable from the Unbox catalog and Your Media Library. This happens during the program’s run on a pay-cable channel.

The video will be automatically replaced and made available to you through Your Media Library once the “Pay-TV Blackout Window” has ended.

Does this sound utterly ridiculous? That’s because it is.

This is the equivalent of buying a DVD, being able to watch it for a few weeks, then having a Showtime/HBO/Cinemax representative show up at your door and take away your DVD until their channel is done running that movie. I can see that the original intention was for the pay-TV channel to be able to secure exclusive rights to a movie via “digital distribution to a video signal-viewing device” (my legal mumbo-jumbo), but this goes a bit too far. As far as I can see, this doesn’t serve anyone’s best interest, and only serves to make the Unboxed service less attractive.

View Comments

Good writing is valuable, good art is not …?

Yahoo’s upcoming You Witness News will allow user-generated photos and video to be uploaded to the service, to be used in news stories that will be posted on the site. Natali Del Conte’s post about this new service runs happily along until smashing headlong into a brick wall in the last sentence. She states that “As long as they’re just soliciting art and not writing, I’m okay with it.”

I’ll give her the benefit of the doubt, and assume that because she’s a writer, she wants to protect her little corner of the world, and let the photojournalists fend for themselves. To not stand up for other professionals, especially those so closely tied to syndicated/published writing, seems incredibly shortsighted to me. If the aim of You Witness News is to devalue well-constructed art, it can only be a matter of time before they will attempt to devalue well-constructed writing, and she will have then sold herself out.

We have said it time and time again on The Podcast Brothers that when negotiating the value of your content, you owe it to yourself and the podcasting/user-generated content community at large to make sure your content is not undervalued by those who would attempt to undervalue it in their own self interest. It seems Natali could use a bit more of this attitude, rather than throwing her photo-taking counterparts to the wolves.

At best, her attitude is selfish; at worst, it is a slap in the face to those who have an eye for “the shot”.

View Comments

Album art trouble with the Samsung YP-Z5AS

We’re becoming experts in troubleshooting MP3 album art problems with various MP3 players. This time, a listener of one of our podcasts informed us some of our shows were causing his Samsung YP-Z5AS MP3 player to lock up when it tried to play some of our MP3 files. We got the exact model number from the listener, and purchased an identical one online. It came via Fed Ex today, and we got down to business.

What we discovered was that it was the album art image we were using that was causing the problem. By removing the album art, the YP-Z5 played the file just fine. In a code editor, we opened the JPG file we were using as album art, and discovered something interesting:

JPG with Photoshop metadata

What we’re seeing there is metadata embedded by Photoshop in the JPG file itself. Using Photoshop’s “Save for web” functionality, we produced a JPG file with no metadata in it. Using this “saved for web” file as album art in the MP3 file caused the YP-Z5 to work properly. The wildest thing is that we had been using the JPG with metadata as album art for a long time, and a lot of other MP3s with that JPG played just fine on the YP-Z5. There must be some combination of JPG file and other data in the MP3 that sets the YP-Z5 off.

The takeaway from this: always use the “Save for web” functionality in Photoshop if you are saving a JPG for use as album art in an MP3 file. Using the “Save as” functionality in Photoshop, then saving as a JPG embeds metadata in the JPG file, which can cause MP3 players to choke.

View Comments

A subtle shift in strategy

I just finished installing Internet Explorer 7, and noticed something interesting during the installation screens:

Installing IE7 #1

Installing IE7 #2

Notice anything interesting? I’ll give you a hint, here’s the IE6 home page at Microsoft.com (red rectangle inserted by me):

IE6 Website

and here’s the IE7 home page at Microsoft.com (again, red rectangle inserted by me):

IE7 Website

That’s right, up until now, Internet Explorer was called “Microsoft Internet Explorer”, meaning “The web browser that is created by Microsoft”. Now, Internet Explorer is called “Windows Internet Explorer”, meaning “The Web browser that belongs with/is intended for Windows”.

Here’s a couple more screen snippets, from the browsers themselves:

IE6, a.k.a. Microsoft Internet Explorer

IE6 Browser

IE7, a.k.a. Windows Internet Explorer

IE7 Browser

See the difference? It’s a subtle shift in Microsoft’s strategy in the ongoing browser wars, which I believe is meant to stop the advance of Firefox. For the technically savvy, Firefox will always be an option, but now, for the uninitiated, Firefox won’t look as attractive as “the browser that was meant for Windows”.

Edit: Ok, so I’m a little slow…Wikipedia’s entry on Internet Explorer first notes “Internet Explorer (known as Windows Internet Explorer in Windows Vista)…” on November 24, 2005

View Comments

Workaround for Yahoo Mail’s hack

It appears that Yahoo Mail doesn't want you pulling in outside stylesheets. When our Trader Interviews email arrived in a Yahoo Mail account, the <link> tag to our CSS was replaced with an <xlink> tag, rendering it unusable. Googling around, it appears that xlink is a valid XHTML tag, but it appears that Yahoo is using it just to break links to outside stylesheets, since they also replace a <body> tag with <xbody>. Our workaround is to replace any <link> tags to outside stylesheets with the contents of that outside stylesheet, before an email is sent. Below is a test file with the function we use to do such a thing.

CODE:
  1. <?php
  2.  
  3. $text = '<LINK href="http://www.traderinterviews.com/main.css"type=text/css rel=stylesheet>Some more text';
  4.  
  5. echo StylesheetLink_Replace($text);
  6.  
  7. /*------------------------------------------------------------------------------
  8. Name:      StylesheetLink_Replace
  9. Arguments: html: The HTML to search for <link> tags in
  10. Returns:   The HTML passed in, with <link> tags to external stylesheets
  11.            replaced with the contents of that file
  12. Purpose:   Replaces links to external stylesheets with the actual contents of
  13.            the stylesheet. Yahoo changes the <link tag to <xlink, making the
  14.            CSS not work. Embedding it gets around the problem.
  15. Notes:     
  16. ------------------------------------------------------------------------------*/
  17. function StylesheetLink_Replace($html)
  18.    {
  19.    /* Find links to CSS files */
  20.    preg_match_all('/<LINK.*href="{0,1}.+\.css"{0,1}.*>/i',
  21.                   $html, $whole_links);
  22.  
  23.    /* Process each css link found */
  24.    foreach($whole_links[0] as $whole_link)
  25.       {
  26.       /* Find the css file path in the match */
  27.       preg_match('/href="{0,1}(.+\.css)"{0,1}/i', $whole_link, $paths);
  28.  
  29.       /* Open the file and read it into a variable */
  30.       $handle = fopen($paths[1], 'rb');
  31.  
  32.       /* If the remote file could be opened, do the replacement */
  33.       if($handle)
  34.          {
  35.          $contents = stream_get_contents($handle);
  36.          fclose($handle);
  37.  
  38.          /* Replace the found string with the contents */
  39.          $html = str_replace($whole_link,
  40.                              '<style type="text/css">'.$contents.'</style>',
  41.                              $html);
  42.          }
  43.       /* Otherwise, remove the CSS link, since it couldn't be opened anyway */
  44.       else
  45.          {
  46.          $html = str_replace($whole_link, '', $html);
  47.          }
  48.       }
  49.  
  50.    return $html;
  51.    }
  52.  
  53. ?>

View Comments

We have our landlord to thank for this.

For the last two days, the SBC Global network has been having severe problems, cutting us off from our server for most of the business day:

failed traceroute to tncnewmedia.com

We would love to have a redunadant cable modem link to the Net via Cox, except for one small problem; our landlord refuses to let Cox onto the premises. Cox has said they "don't have an agreement with the landlord", so they can't provide us service. We're guessing that the landlords have some sort of "agreement" (kickback) with SBC that they don't have with Cox, so they line their pockets, and we feel the pain. I wonder if the Public Utilities Commission would have some jurisdiction there? Has anyone else had this experience, where essentially a monopoly is created by your landlord's business practices?

You'll notice I don't blame SBC for this. I guess it's because I've come to accept flaky Internet service from any provider, and our solution has become to get redundant flaky links, in an attempt to create one good one.

View Comments

Please allow 10 days…

I received an SMS message on my cell phone today, informing me that Cingular (my carrier) had a free phone for me, all I had to do was stop by my local Cingular store and .... etc. It also nicely told me to reply with 'STOP', and I would not receive marketing messages from them anymore. I did so, and was instantly sent another SMS message informing me I would "no longer receive marketing messages from Cingular. Please allow 10 days for your preferences to be updated".

You have to be kidding me. 10 days? Nothing takes 10 days anymore, especially when it comes to updating my SMS preferences. In 1860, the Pony Express got someone's 'preferences' (mail) from Missouri to California in the same amount of time.

View Comments

No border around images in Wordpress sidebar

Update: In WordPress 2.1.x, the code below is now in the file wp-includes/bookmark-template.php

I wanted to put an image in the sidebar of this blog, but the default code puts a border around the image, because it's also a link. I think that's generally unattractive, but even the link editor didn't allow me to set the border to 0, so into the code we go.

In wp-includes/links.php, lines 247-249, change this:

PHP:
  1. $output .= "<img src=\"$bookmark->link_image\" $alt $title />";
  2. else // If it's a relative path
  3. $output .= "<img src=\"" . get_option('siteurl') . "$bookmark->link_image\" $alt $title />";

to this:

PHP:
  1. $output .= "<img src=\"$bookmark->link_image\" $alt $title border=\"0\" />";
  2. else // If it's a relative path
  3. $output .= "<img src=\"" . get_option('siteurl') . "$bookmark->link_image\" $alt $title border=\"0\" />";

and now the images under the Links sidebar won't have a border around them. Yes, I understand the border is supposed to be a visual cue that the image is also a link, but these days, most people know that things in the sidebar are generally links, plus the visual cue of the pointer changing when a user hovers over the image seems to be enough.

View Comments

Compiling mod_ruby 1.2.5 under Fedora Core 5

When compiling mod_ruby under Fedora Core 5, and thus Apache 2.2, configure.rb assumes an incorrect path for the apr* files, and make kicked out the following errors:

# make
In file included from /usr/include/httpd/httpd.h:43,
from mod_ruby.h:49,
from mod_ruby.c:33:
/usr/include/httpd/ap_config.h:25:17: error: apr.h: No such file or directory
/usr/include/httpd/ap_config.h:26:23: error: apr_hooks.h: No such file or directory
/usr/include/httpd/ap_config.h:27:32: error: apr_optional_hooks.h: No such file or directory
...

The problem is that the apr* files are in /usr/include/apr-1, which is not where make is looking. (In order to compile mod_ruby, the httpd-devel, apr-devel, and apr-util-devel packages are required, so doing a "yum install httpd-devel" installs these three packages).

To fix the problem, run the configure.rb command like this:

./configure.rb --with-apr-includes=/usr/include/apr-1

and then the "make" command will run without error.

View Comments

Downloads of RSS file versus audio file

Scott Whitney had a question for us regarding the number of downloads of your RSS (XML) file versus the number of downloads of the actual audio file (Podcast) identified within it:

Do you have any data regarding the normal ratio between number of feed downloads (the XML file) versus the actual number of audio downloads? And, any explanation why there would be a measurable difference?

Our response covers a couple of the many reasons why it will be different:

The number of downloads of the XML file versus the audio file is almost always very different, for several reasons. In a perfect world, all RSS aggregators would make use of the feature in which the aggregator asks the web server “Has this feed changed since I last downloaded it at time X ?”. If there was no new audio program in the feed, the server would respond “No”, and the XML file would not be downloaded. Only when there was a new post/program would the XML file be downloaded, as would the audio file, and there would be a 1:1 ratio between the two.

However, many aggregators do not use this feature, and just blindly pull the XML file every time, new or not. This, coupled with the fact that most aggregators can be changed by the user as to how often they check the XML file (anywhere from every minute to once a day), leads to the XML file being downloaded many more times than the audio file itself. Also, things like people opening the XML file in a browser, etc., lead to many more hits on the XML file than the audio.

I don’t have any hard data on the ratio of XML versus audio downloads, because it is all over the map depending on which podcast, time-period, etc. is looked at.

On a related note, inferring subscriber statistics from the number of hits on the XML file is very inaccurate, because of the same reasons. The number of downloads of the audio file itself is more accurate, but still not completely accurate, because of multiple downloads of the file by the same aggregator/person (more downloads than real subscribers), and services like iTunes and Odeo that cache your audio file for their users (less downloads of the file from your server than actual subscribers).

Comments Off
Rss Feeds