MyBlogLogSpace? A widget hack.

UPDATE: Looks like MyBlogLog has implemented my idea. Horay!



I love MyBlogLog. It’s a simple elegant idea perfectly executed. You can see their widget on the side of my blog, listing the last 8 people who’ve been here.

The thing is, the “people-watching” aspect of it has a distinct MySpace flavor, but MySpace is the one place where their widget won’t work. (Because it’s in JavaScript.)

About a week ago I woke up in the middle of the night with an idea of how MBL could work on MySpace. I just got off the phone with founder Eric Marcoullier and he thought it should work too. Maybe we’ll see it in action someday? Would be awesome.

So excuse me while I geek out for a bit!

  • On MySpace, you can’t use JavaScript and Flash movies can’t “phone home” to your server.
  • You can however, have images that are pulled from off-site.
  • The server which supplies the image can set a cookie on the viewer’s brower.
  • So, your “widget” then becomes 5 (or whatever) images wrapped in link tags, numbered 1 to 5. This is the HTML you have folks copy onto their page.
  • When a page is viewed and the images are displayed, the server performs the following when serving the first image:
    • Looks for a cookie identifing the person viewing the page
    • Looks in DB to find the last 5 viewers and get their avatars.
    • Records this list of 5 in a newly set cookie. (Or alternatively stores it in a special table in DB) This is the important step–we’ll need this record when someone clicks.
    • Serves up the avatar image along with the needed cookies
  • Sometime later, the page viewer may click on one of the images.
    • The server will only know that the viewer was on page X and that they clicked on (e.g.) user image #3. At this point we don’t know which avatar was in that #3 slot.
    • It is possible that other people may have looked at the page since the images were served, so the avatar they clicked on may no longer be #3. E.g. maybe they’ve been bumped to #5. So we can’t look in the master DB.
    • The solution is to look in the cookie we set (or in the special table). This will tell us which 5 avatars where served up to this particular viewer
    • Do the cross reference and take them to user page of the avatar they clicked on.

You can see how it might look like on my MySpace page. So that’s my geek-out for the day. I’m really fascinated with widgets in general and think they are a good thing; a de-centralizing of the web. With any luck, walled gardens like MySpace will soon be forgotten. But until then…