Wednesday, December 10, 2008

Blogger.com and the Broken Comment Form: Third Party Cookies

A while ago, I noticed that, for some reason, when I was on a Blogger blog on the blogspot.com domain (such as this one), I was no longer seen as "logged in", even though when I went to the Blogger home page, or clicked the "Sign in" link on the upper right hand corner (or the "B" icon on the upper left), I was automatically signed in with my Google account. This was only a minor annoyance to me (it prevented the "edit" icons from showing up for me on the widgets my own blogs) until I started using the in-line comment form for my blogs. This feature puts the comment form right below the post on its page, in stead of opening a separate window or navigating away to a special comments page. I like it because it allows for immediate comment gratification, and a smooth user experience. The problem was that now my comment forms seemed to be broken if I was signed in with my Google account. (Google owns Blogger, and they transitioned away from the old Blogger IDs to Google accounts a while ago.) After doing some research on this problem, I came to the conclusion that the source of the problem was Firefox: specifically that Firefox (since version 3.0) has the default setting of blocking all third-party cookies. (However, if you upgraded your profile from a previous version, you may still have the old default setting left over.) A cookie is a bit of text that a web site can store (in order to read back later) to track information about a visitor to that website. A third-party cookie is a cookie that is loaded by a script that is not hosted on the same domain as the site that you are visiting. Most third party cookies come from advertisers, whose ads are loaded and, in the background, like to keep track of which ads a user has seen and at which sites they have visited. There are a few companies that like to collect as much information as possible, and the fact that they have their advertising tendrils on so many sites gives them a disturbingly extensive ability to track users' browsing habits. This is why the makers of Firefox decided to block third party cookies, except for those sites that the user has specifically granted permission to allow access from other sites. I agree with their assessment, and don't want to re-enable all third-party cookies, but I also want to allow certain sites that I trust to know who I am. Blogger is not nefarious in its desire to "track" me on blogs: it simply wants to let me log in, manage my blogs, and post comments. So, how do I let Firefox know that blogger.com should be allowed to track me on non-blogger.com sites? Here is the answer: Go to the settings menu. This can be found under Tools -> Options on Windows and Edit -> Preferences on Linux. I'm not sure where it is on Mac OS X, but I'm sure it's not hard to find. Once you're there, select the Privacy panel, and under "Cookies", click on the "Exceptions..." button:
Type "blogger.com" into the text field and click "Allow":
You're done. Click Close and exit the settings menu.
The next time you log in to Blogger, external blogger sites (such as those on blogspot.com, as well as custom domains) will know who you are.

Thursday, December 04, 2008

Google Reader vs. FriendFeed

It seems that I've been introducing some of my friends to the features of various online tools a lot lately. Not that I've been going out of my way, but it seems that I'm "that guy" who is both "in the know" about tech stuff and willing to answer questions. A friend of mine recently asked me about Gmail. Her frustration was with the fact that the inbox was perpetually cluttered, and there was no way to clear out the old e-mails she had already dealt with without deleting them. So she thought, that is, until I told her what that "Archive" button does. Without it, there is no difference between the Inbox and "All Mail". Labels (aka "Tags") are also an indespensible feature of Gmail when used properly, but that's not my topic. Recently, I started using FriendFeed, and I thought I would explain what how I got there, what it is, and how its niche differs from that of Google Reader. Recently, I started using Twitter. It began with just subscribing to a friend's Twitter feed in Google Reader (my feed (i.e., RSS, Atom) reader of choice), but it would only refresh the Twitter content about once every couple of days, so I would get nothing for a while, and then about ten posts all at once. When things come in little bits, they're time-sensitive, and so I decided to get a Twitter account of my own in order to keep track of my friends' feeds in a timely manner, and be able to reply if desired. Thus, I became a Twitter lurker. However, it didn't take me long to figure out how to hook up Twitter to my Facebook status, making my "tweets" (another 'word' I dislike) a replacement for updating my Facebook status, and transforming me into a 'real' Twitter user. That wasn't enough, however. Apparently, my pallet for up-to-the-minute online content would not be satisfied until I found FriendFeed. When I first encountered FriendFeed, it looked redundant to Twitter's funcitonality, with the added detriment that none of my friends (and only one of my acquaintances) actually used it (at the time). This turned out not to be the case upon further inspection. FriendFeed is to Twitter what Google Reader is to Blogs. Yes, it will keep you informed of your friends' latest updates to Twitter, but it will also keep you informed of their activities on Digg, Reddit, Flickr, Picasa Web, their shared articles (on any number of services), and absolutely anything else that can be accessed through a feed. The problem was, since none of my friends were using FriendFeed, that none of their content and activity was available there. Enter the "imaginary friend" feature. Say I have a friend who uses Blogger, Google Reader, Facebook, Twitter, and Digg, but this Friend does not use FriendFeed. I can create an "imaginary friend", complete with nickname and profile picture, that aggregates this friend's content from all the various sites and makes it visible in myfeed exactly as if that friend had signed up and entered all those services as their own. All I need to provide, depending on the service, is their account's display name or feed URL. But why, you might ask, would I need yet another feed aggregator, when I am already using Google Reader? The difference in the way that these two services are used is that while Google Reader provides a hub for consuming content, FriendFeed provides a hub for observing events. Google Reader is all about pulling in the meaty content: reading the whole article. Google Reader, therefore, displays all of the text and multimedia that it can, and keeps track for you of what you have and haven't read. FriendFeed, on the other hand, is a stream of things that "happened": so-and-so posted on their blog, this person updated their status, that person posted a photo or video. The substance of the content is not displayed on FriendFeed: only that it happened and a title, short snippet, or small thumbnail. When an event occurs, it appears as quicly as possible at the top of the page. Once something drops off the page, it's irrelevant. There are items that appear both in Google Reader and FriendFeed, but there are also items that only appear on one or the other. FriendFeed is all about, well, friends, therefore news sites, webcomics, and blogs by people I don't know are much better suited exclusively to Google Reader, where nothing is skipped, and information is handled exhaustively. By contrast, items with very little content, or of a transient nature, are better suited to FriendFeed, where they can be noticed and optionally interacted with should the occasion arise to do so.