Shoutout to Limelight Networks

I was doing some bookkeeping this evening and was thinking back over the 6+ years since I started IT Conversations. Balancing the bank account reminded me of how much we’ve been able to do with so little money. There are many individuals and corporate partners/underwriters who help us bring The Conversations Network to you for free. But there’s probably none that has been as important to our success as Limelight Networks, our content-delivery network (CDN). If you’ve streamed or downloaded any audio or video file from The Conversations Network in the past five years, it was delivered by Limelight. And since our relationship began in February of 2004 — that’s a whole lot of terabytes ago — we’ve never had a single complaint about performance, reliability or availability of our media files. Oh, and 48% of our visitors are from outside of the U.S. Pretty impressive.

So I’d like to extend a very special Thank You to Limelight Networks for their continued support of IT Conversations and the rest of The Conversations Network. We absolutely couldn’t be doing this without them.

BTW, if you’re wondering why I’m posting this seemingly over-the-top Thanks, it’s because I mean it. It’s entirely unsolicited. Limelight Networks has been awesome, and I hope you’ll consider them for your own content-delivery needs.

It Was 40 Years Ago Today

If you’re at least 50 years old, you probably remember quite well where you were the day that men first walked on the moon. It was an exciting and yet surreal moment. I was working that summer in San Diego, but it was a Sunday so like so many Americans I was glued to the television. After Neil Armstrong stepped off the lunar lander, I walked outside, looked up at the moon (clearly visible mid-day) and just shook my head in near disbelief. Truly amazing. I called my then-girlfriend, Cessna (now my wife of 38 years) in Kansas to compare notes. She was awed as well.

Why San Diego? I was hired by Jan Popper as a production stage manager at what was then known as San Diego International University. I spent most of my summer there directing opera workshop productions and teaching acting to foreign opera students. That was almost as surreal as men walking on the moon.

More Facebook Integration for SpokenWord.org

I’ve added a new feature to SpokenWord.org for Facebook users. When you submit a program to our database or you add a program to one of your SpokenWord.org collections, you’ll be given the chance to post it to your Feed (Wall) on Facebook. Note that this only works if you’ve previously logged into our site using your Facebook ID and your’e currently logged into Facebook.

CHI Conversations Launches

CHI Conversations is a new channel from The Conversations Network, the home if IT Conversations. “CHI” refers to Computer-Human Interfaces and this new channel initially features programs produced by BayCHI, the San Francisco Bay Area chapter of ACM’s SIGCHI. BayCHI has been recording the speakers at their monthly Silicon Valley meetings for many years, but those programs (many with extraordinary presentations by some of the great technologists of our times) have gone unheard by the general public until now.

Those recordings would have been lost forever if it weren’t for the efforts of BayCHI’s Steven Williams, backed by the support of BayCHI’s membership and Board of Directors. Steve has single-handedly pulled together all of the bits and pieces it takes to create a new channel on The Conversations Network. It has taken nearly a year of Steve’s efforts to get to this launch, and we’re indebted to him for his perseverance. Steve is now serving as Executive Producer of CHI Conversations.

Along with the members of TeamITC including new volunteers from BayCHI, Steve plans to publish their new monthly programs as well as work their way through the archives of past-year’s recordings at the rate of two or three programs each week.

Collection Limits for SpokenWord.org

Because SpokenWord.org collections can subscribe to feeds and even follow other collections, they can grow to a size that is unmanageable. We’ve therefore added three ways in which you can keep your collections under control.

  1. Limit the number of programs.
  2. Limit the age of programs.
  3. Limit the size of a collections RSS feed.

On your collection’s page, click the Info link under “Edit This Collection”.

1. “Remove oldest programs when there are more than [count] or [age].” The default value for [count] is 1,000, the maximum number of programs any collection can contain. If you want to keep your collection smaller, select another value: 10, 25, 100 or 250. As you add new programs, earlier-added programs will be removed in order to maintain the maximum size you specify.

2. Likewise [age] tells us how long to keep programs from the date you collect them. The default is never to delete them (by age), but you can change this to automatically remove programs that have been in your collection for more than one week, one month or one year.

3. “Most-recent programs to include in RSS feed: [count].” By default, we’ll include up to 100 programs from your collection in its RSS feed. But you can use this option to change that value to 10, 25, 50, 100, 250 or “all”.

Note: Although you can set all of these values now, only #3 (RSS limits) is operational. We won’t turn on #1 and #2 until at least Wednesday morning (July 15) at 9am Pacific time to allow you time to modify your collections that may be affected by the change.

Facebook Connect for SpokenWord.org

Yesterday I rolled out Facebook Connect for SpokenWord.org, and if you have a Facebook account I urge you to stop by, give it a try, and let us know if it works for you. The integration is about two-thirds done, but you probably won’t notice the missing one-third. It has been an interesting process so far. I previously implemented OpenID, and I expected something similar, but that’s not the case. The concepts of the two systems are similar, but the realities are quite different. For example:

  • Facebook’s documentation is awful. Rather than one or two coherent documents there are dozens of wiki pages written, as far as I can tell, by the developers themselves, not good tech writers. Each page is written in a different style and documents (usually incompletely) one small piece of the big picture. To actually integrate Facebook into an existing identity system, there are many — more than becessary — moving parts.
  • Although a FB user explicitly authorizes your application, FB refuses to supply his or her email address through the API. Instead, there’s a very Baroque system by which you send FB hashed versions of the email addresses of all your existing registered members in advance so that Facebook can then let you know that one of them matches a FB user at the time that user authorizes your application. But if a new (to you) FB user logs into your site, you don’t have that existing data. (OpenId’s API gives you an email address if the user approves.)
  • The Facebook Terms of Service are oppressive. They must have been written by Facebook’s Business Prevention Division. For example, you are not allowed to store (in a database) any personal data you receive from Facebook Connect. When a user authorizes our app, FB sends us the user’s first and last names. We’re allowed to display those while the user is connected, but not thereafter. (We get around this by asking the user to give us this data independently.) I noticed that TechCrunch uses Facebook Connect for comments, so I was curious what would happen if I left a comment on their blog and then de-authorized the TechCrunch app. Sure enough, my comments disappeared from their site, and when I re-enabled the app, the comments re-appeared. Weird.
  • The email thing is particularly nasty, for while we’re not sending FB our users’ emaill addresses unencrypted (which would violate our own Privacy Policy), we are sending an MD5 hash of those addresses. This means FB can compare the hashes we send them to the 100+ million email addresses they already have, allowing them to determine that someone is a registered members on our site even before that person authorizes the use of his/her FB identity to access our site.
  • FB requires that if a user is logged in via Facebook, you display that user’s Facebook photo on every page they view. No reason is given for this requirement, and very few Facebook Connect sites do so. (Digg is an exception.) Note that this (and other ToS issues) requires that you load FB’s supporting JavaScript on every page.
  • Oh, did I mention how bad their documentation is?

All of that said — and there are many more issues — we’ve had many requests for this integration as a way to make it easier to register for and login to SpokenWord.org. I hope you find it valuable.

Email Gremlins

So I’ve been having this realy strange problem. I use OS X’s Mail app along with SpamSieve for spam filtering. But recently I’ve been noticing that the spam detection has been hyperactive: way too any false positives. I tried re-training SpamSieve. No help. So then I shut it down altogether: Whoa! I was *still* getting messages sent to the spam folder. Next, all the usual steps: rebooting, re-initializing this and that. Still no help. With absolutely no spam filtering turned on, stuff was still being flagged and moved. (Any of you email geeks starting to get a clue here?)

For a totally separate reason I pulled out my MacBook Pro, and that’s when it hit me. I even caught the nasty gremlin in the act. What was it?

I use Google as my inbound and outbound email server. Yes, I use their spam filtering, too — it’s much better than SpamSieve — but that wasn’t it. Because I have three different email clients (if you count the iPhone) I use IMAP4 instead of POP3 to communicate between those clients and the Google server and keep things in sync. So here’s what was happening: My MacBook Pro had been on and running it’s own instances of Mail and SpamSieve. Messages would come into Google and, in some cases, my laptop would grab them. The copy of SpamSieve on that computer decided some of them were spam and would move them to the spam folder. And because I’m using IMAP4, this change was sent to the server and then to the email client running on the desktop. It was my laptop, running this other instance of my spam filtering software that was moving messages around on the email server and hence on my desktop client. It was downright spooky to see the messages moving without a clue as to why, but as soon as I realized my laptop was also running email, it became instantly clear.