Today on the Facebook blog I spotted a post entitled FQL which contains the following excerpt

Two and a half months ago, a few of us were hanging out in the Facebook TV room, laying on the Fatboys and geeking out about how to move forward with the API for the Facebook Platform. We had a beta version that was fully functional, but we kept wishing that the interface were cleaner, more concise, and more consistent. Suddenly it occurred to me – this problem had been solved over 30 years earlier by database developers who came up with SQL – the Structured Query Language. What if we could use the same time-tested interface as the way for developers to access Facebook's data?
This isn't a simple problem – with millions of users and billions of friend connections, photos, tags, etc., Facebook's data doesn't exactly fit into your average database. And, even if it did, we still have to carefully apply all of those complicated privacy rules. Facebook Query Language would have to take those SQL-style queries from developers, figure out what data they're actually looking for, figure out if they're allowed to actually see the data, figure out where the data is stored, and then finally go and get the data to return back to the developer. I knew building FQL would be hard, but that's why I couldn't wait to do it.

This is one of those things I used to think was a great idea when I was on the XML team at Microsoft. Instead of exposing your data using APIs, why not expose your data as XML then allow people to perform XQuery operations over the data. In reality, this often isn't really feasible because you don't want people performing arbitrary queries over your data store that may request data too much data (SELECT * FROM blog_posts) or are expensive computationally.

Looking at the FQL developers guide it states that a typical queries look like

SELECT name, pic FROM user WHERE uid=211031 OR uid=4801660

SELECT name, affiliations FROM user
WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=211031)
AND "Facebook" IN AND uid < 10

SELECT src, caption, 1+2*3/4, caption, 10*(20 + 1) FROM photo
WHERE pid IN (SELECT pid FROM photo_tag WHERE subject=211031) AND
pid IN (SELECT pid FROM photo_tag WHERE subject=204686) AND

and return results as XML. I've assumed that what is supported is a simple subset of SQL, perhaps written with Lex & Yacc or ANTLR but it still seems somewhat problematic to move away from the constrained interface of an API and provide access via a query language. It is definitely a lot cooler and more consistent to work with a query language than an API though. Later on when I have some free time, I'll see if I can deduce the grammer for FQL by trying out queries in the Facebook API test console. It looks like there goes one of my evenings this week.

Nice work.


February 27, 2007
@ 06:15 PM

With the hubbub now settling down down I decided to go back and try out Yahoo! Pipes. For a while, I've wanted a feed for articles by Chris Kelly over on Huffington Post so I decided to build that.  After a couple of false starts I created the feed which currently doesn't have any items because there aren't any posts by Chris Kelly in the Huffington Post feed.

Now that I've actually used the service I'm pretty surprised that anyone thinks that this is a service that non-geeks will use. Programming with flowcharts to process RSS feeds seems even geekier than having a Star Trek wedding which was my previous bar for geekiest thing ever.


From the Microsoft press release Microsoft Demonstrates Further Commitment to Healthcare Market With Planned Acquisition of Web Search Company we learn

NEW ORLEANS — Feb. 26, 2007 — Microsoft Corp. today announced that it has agreed to acquire Medstory Inc., a privately held company based in Foster City, Calif., that develops intelligent Web search technology specifically for health information. The acquisition represents a strategic move for Microsoft in the consumer health search arena and signals a long-term commitment toward the development of a broader consumer health strategy. Medstory employees will join the Health Solutions Group, a recently formed division at Microsoft that will manage product development and delivery. Financial terms were not disclosed, as part of the agreement between the organizations.

This reminds me of the post Thoughts on health care, continued from Google's Adam Bosworth which stated

As I indicated in my post last week, I've been interested in the issue of health care and health information for a while. I just spoke at a conference about some of the challenges in the health care system that we at Google want to tackle. The conference, called Connecting Americans to Their Health Care, is a gathering focused on how consumers are transforming health care through the use of personal health technologies.

This speech will give you some insight into the problems that we believe need our attention.

It is also interesting that Adam Bosworth had been billed with the title Architect, Google Health for a while. I'd once heard that the the market for medical related keywords is one of the most lucrative for search engines which may explain the interest. However if you look at the list of most expensive adwords it would seem that building a vertical search engine targetted at debt consolidation is the real goldmine. :)


I'm almost caught up on my blog reading since getting back from vacation and I've spotted a couple of items I'd have blogged responses to if I was around. Since I don't have the time to write full blog posts on each of these items, here are links to the posts and brief outlines on what I thought about them

  • Harish Mallipeddi has a blog post entitled Measuring efficiency of tagging with Entropy links to the paper Understanding Navigability of Social Tagging Systems by Ed Chi and Todd Mytkowicz of Xerox Parc which excerpts the key findings from the paper. One result of their research which seems obvious in hindsight and shows one of the issues that social software has to deal with as its community of users grows was

    The way he does that is to measure entropy (yup that same old same old Claude Shannon’s information theory which you learned in one of the CS courses) of entities like documents (D), users (U) and tags (T). His research group crawled the entire archive and then calculated the entropies. Here’s what they found:

    • H(D|T) specifies the social navigation efficiency. How efficient is it for us to specify a set of tags to find a set of specific documents? We found that in that it is getting less and less efficient.

    This makes sense when you think about it. Let's say the first set of users of came from a homogenous software development background and started applying the tag "xml" to mean items about the eXtensible Markup Language. Later on as the community grew, a number of gamers joined the site and they now use the tag "xml" to refer to items about the game X-Men Legends. Now if you are one of the original geek users of the site, the URL no longer is just about markup languages but also about video games. To actually find items strictly about the eXtensible Markup Language you may have to add other tags as refinements such as

    What this means is that to the oldest users of the site, the quality of the tagging system will seem to degrade over time even though this is a natural consequence of growth and diversifying its user base. Of course, this is only a problem if a lot of people use to find all items about a topic (i.e. browsing by tags) as opposed to just storing their individual bookmarks or subscribing to the bookmarks of people they know and trust.

  • It seems Google announced some sort of Microsoft Office killer last week. You can read Don Dodge's Why Microsoft will not fall into the Innovators Dilemma and Robert Scoble's Microsoft has no innovator’s dillema? for two conflicting opinions on how this affects Microsoft. Personally, I think I've overdosed on the amount of times I've read the words innovator's dilemma in association with this announcement while catching up on email and blogs. What is funny about this situation is that almost everyone I've seen who throws the term around doesn't seem to have read the book. It is quite interesting to see Don Dodge write sentences like

    Microsoft will do everything possible to preserve these businesses while transitioning to the new Live strategy.
    and then follow that up with "No Innovators Dilemma here" without seeing the obvious contradiction in his words. Lots of  doublethink at work it seems.

    A side effect of reading this set of blog posts is that I found Don Dodge's Innovate or Imitate...Fame or Fortune? which praises being a fast follower as being more valuable than being an innovator. I've found that a lot of people at Microsoft point to past and recent successes such as XBox, Microsoft Office and Internet Explorer as proof that being a "fast follower" is the best strategy for Microsoft. There are three key problems with this kind of thinking

    1. It assumes your competitors are incompetent. This may have worked in the old days but with competitors like Google and Apple Inc, it isn't the case anymore.
    2. It requires that you have an ace up your sleeve that significantly one ups the competitors when you ship your knock off (e.g. integrating disparate applications into an Office Suite and pricing it lower than competitors, integrating product into the operating system, integrating a rich and social online experience into what was previously a solitary experience etc).
    3. It ignores the fact that "first mover advantage" is actually true for applications that have network effects which is definitely the case for social software which a lot of software has become today.

  • The "diversity in conferences" recurring debate was kicked off again by a blog post by Jason Kottke entitled Gender Diversity at Web Conferences which encouraged the interesting responses from folks like Eric Meyer, Anil Dash and Shelley Powers. They are all good posts with stuff I agree and disagree with in them but I wasn't moved to write until I read the post Why are smart people still stuck on gender and skin-color blinders? by Tantek Çelik where he wrote

    Why is it that gender (and less often race, nay, skin-color, see below) are the only physical characteristics that lots of otherwise smart people appear to chime in support for diversity of?

    E.g. as long as we are trying for greater diversity in superficial physical characteristics (superficial because what do such characteristics have to do with the stated directly relevant criteria of "technical expertise, speaking skills, professional stature, brand appropriateness, and marketability" - though perhaps I can see a tenuous link with "rainbow" marketing), why not ask about other such characteristics?

    Where are all the green-eyed folks?

    Where are all the folks with facial tattoos?

    Where are all the redheads?

    Where are the speakers with non-ear facial piercings?

    Surely such speakers would help with "hipness" marketing.

    I found this post to be disingenious and wondered how anybody could downplay the gender and racial bias in the "Web 2.0" technology conference scene by equating it to a preference for green eyed speakers. So I decided to throw in my $0.02 on this topic...again.

    After the last ETech, I realized I was seeing the same faces and hearing the same things over and over again. More importantly, I noticed that the demographics of the speaker lists for these conferences don't match the software industry as a whole let alone the users who we are supposed to be building the software for.

    There were lots of little bits of ignorance by the speakers and audience which added up in a way that rubbed me wrong. For example, at the 2005  Web 2.0 conference a lot of people were ignorant of Skype except as 'that startup that got a bunch of money from eBay'. Given that there are a significant amount of foreigners in the U.S. software industry who use Skype to keep in touch with folks back home, it was surprising to see so much ignorance about it at a supposedly leading edge technology conference. The same thing goes for how suprised people were by how teenagers used the Web and computers. Additionally, there are just as many women using social software such as photo sharing, instant messaging, social networking, etc as men yet you rarely see their perspectives presented at any of these conferences. 

    When I think of diversity, I expect diversity of perspectives. People's perspectives are often shaped by their background and experiences. When you have a conference about an industry which is filled with people of diverse backgrounds building software for people of diverse backgrounds, it is a disservice to have the conversation and perspectives be homogenous. The software industry isn't just young white males in their mid-20s to mid-30s nor is that the primary demographic of Web users.

    Personally, I've gotten tired of attending conferences where we heard more about technologies and sites that the homogenous demographic of young to middle aged, white, male computer geeks find interesting (e.g. and tagging) and less about what Web users actually use regularly or find interesting (hint: it isn't and it sure as fuck isn't tagging).


Every once in a while someone asks me about software companies to work for in the Seattle area that aren't Microsoft, Amazon or Google. This is the first in a series of weekly posts about startups in the Seattle area that I often mention to people when they ask me this question.

Jott is described as voice-powered, hands-free messaging and to do lists on the front page of the site. Jott is primarily a voice to text service with two main features

  1. You can call 1 877 568 8486 and leave a voice memo that is converted to an email and sent to your email address.
  2. You can call 1 877 568 8486 and leave a voice memo that is converted to an email or SMS text message and sent to one of your contacts

I don't have much use for the first feature but the second is quite useful for sending text messages while in traffic instead of trying to futz around typing with T9.

The founders of Jott are John Pollard and Shreedhar Madhavapeddi who are both ex-Microsoft folks. I worked with Shree briefly as part of the MSN Windows Live Messenger server team before he left Microsoft. He was a smart guy and someone I regretted not working with more before he left the company. 

Press: Seattle Times on Jott Networks

Number of Employees: 5

Location: Fremont, WA

Jobs:, current open positions are for a VP of Marketing and a Software Development Engineer


February 25, 2007
@ 04:37 PM

Twice this week, I've been impressed by how some rant I made in my blog turned into an implemented feature in Web software that hundreds of thousands of people use. The first incident comes from my blog post Why Feedburner Doesn't Count Outlook 2007 Subscribers where I wrote about the fact that FeedBurner doesn't track subscribers to my feed who're using Outlook 2007 because it uses the same user agent string as Internet Explorer 7. Thus I was pleasantly surprised when I logged into FeedBurner and saw the following

It seems that while I was on vacation the folks at FeedBurner decided to implement a solution to the problem I pointed out even though it isn't their fault. Nice.

The second incident comes in response to my post MSN SoapBox in Public Beta where I mentioned that neither Google Reader nor Bloglines would display videos from MSN Soapbox embedded in a blog post. Yesterday Mihai Parparita who works on Google Reader let me know that they added support for that while I was on vacation. That means if you are reading this in Google Reader you should see a video on the next line

Thanks to the Google Reader team for implementing this so quickly.


February 23, 2007
@ 04:36 PM

I'm back from vacation at Disneyland. My pictures are at

What did I miss?


Categories: Personal

February 19, 2007
@ 07:36 PM

I should be on my way to the airport but this was just too good to share. Below are the opening paragraphs of a LiveJournal post by chalain entitled So Beautiful, So Disturbing

I wake. For a moment, I stare at the ceiling trying to remember something. Something important. Something important happened last night, but the details escape me. Something fascinating yet sinister, like touring the CIA offices. Something exotic yet somehow familiar, like putting hot sauce on meatloaf. I wonder if I have a hangover. I wonder why I am thinking about the CIA and meatloaf. I roll onto my side.

There is a strange woman in bed with me.

A lot of things happen at once. First, I realize that this is the most beautiful woman I have ever seen, and I am a lucky, lucky man. Second, I realize that this is not my wife, and I panic. Third, I realize that she's awake, has been watching me sleep. Fourth, before I can really react to thoughts 1 and 2, she smiles at me and speaks with a lovely accent I can't quite place: "So. You like new wife, yes? Yes. Up now, I make breakfast."

She gets out of bed and stretches, perfect curves sliding under silky lingerie and momentarily making me forget about breakfast, meatloaf, and whoever it was I was married to before last night. She seems to know this, and smiles at me again, but apparently she's serious about making breakfast. She turns and strides confidently from the room. As she does, I see for the first time the large Microsoft logo splayed across her back. My stomach lurches as I suddenly remember everything.

Windows Vista. I bought a new computer yesterday... and it came with Windows Vista.

Read the entire thing here. It's pretty good stuff and is kinda cool that software can invoke such positive and negative emotions from its users.


February 19, 2007
@ 04:28 AM

Mary Jo Foley has a blog post entitled Ballmer’s list: Microsoft’s CEO shares his top nine Microsoft growth picks where she writes

Ballmer's guaranteed nine growth spots:

1. Windows client revenues from OEMs (PC makers and system builders)

2. "Desktop value" revenues derived from corporations (big enough to have an IT department). This sounded like Office revenues

3. Server revenues — Windows Server, database, security products. Ballmer said he sees this as an arena where Microsoft has a good opportunity to grow its business vis-a-vis Linux

4. "Mature desktops" — i.e., add-on revenues in corporations where there's already some penetration of Windows and Office. Client-access licenses are a key growth driver here.

5. Emerging market savings — especially due to Genuine Advantage Initiative anti-piracy crackdown campaigns/mechanisms

6. Advertising — especially via adCenter, Microsoft's online ad system — and the properties fueled by it

7. Xbox, particularly in dollars derived from Xbox Live, attached hardware and attached software

8. Sales of Office to small businesses and consumers

9. Windows Mobile operating system sales to cell-phone and PDA makers
I was surprised that Windows Live — supposedly one of Microsoft's most important strategic efforts — didn't make either of Ballmer's lists. Ballmer did mention services, but talked about it more from a platform perspective, than as a bunch of individual point products.

Am I the only one who's wondering why Mary Jo Foley didn't realize that #6 refers to Windows Live?


Categories: Windows Live

While everyone else was raving about the fact that Feedburner can now count RSS subscribers coming from Google reader I've been noticing that there was another discrepancy in the Feedburner data that didn't seem to be accounted for. Below is a screenshot of number of hits from Web browsers on my RSS feed

It seems pretty unlikely that people have clicked on my RSS feed over 5000 times today. At first I thought Feedburner was miscounting feeds that had been subscribed from IE 7 but a quick look in Fiddler shows that IE 7 requests feeds using Windows-RSS-Platform as the User-Agent and is correctly counted by Feedburner.

So I sent some mail to Eric Lunt who's a co-founder and the  CTO of Feedburner to see if he knew what was wrong. He let me know that the problem is that Outlook 2007 doesn't identify itself in the User-Agent string and instead pretends to be Internet Explorer 7. This means there is no way to separate out accesses of your feed from Outlook 2007 from people clicking on your feed in IE 7.

This seems like a fairly rookie mistake to ship in a bigtime product like Outlook. I don't have the latest version installed so I can't confirm that this is truly the case but if it is I hope they plan to fix this soon. It's really lame to not identify your product correctly in the User-Agent string.
Oops. I should have done a search before sending out mail. It looks like this was already covered in a blog post entitled Outlook, RSS, & the user-agent string by Michael Affronti who was the PM for RSS in Outlook 2007. He wrote

For Outlook 2007 we will unfortunately not be able to report any custom user agent string for our RSS aggregation.  Due to the way we integrate with IE across many parts of the application (the WININET stack is the underlying infrastructure for all of Outlook’s internet communication), we cannot easily and safely change the way we broadcast ourselves when connecting to external servers.  To do so would require a fundamental change in the way the WININET stack is called from Outlook and could affect all of the Office applications.  The scope of this fix is unfortunately outside of what we can provide this release.

I guess this won't be fixed anytime soon, if ever. Anyway, I hope this post helps out other users of Feedburner who've also been curious about their weird number of hits supposedly from IE 7. 


February 18, 2007
@ 11:39 AM

Mini-Microsoft has a blog post entitled Where's Ray? Where's the Vista Campaign? where he claims that Ray Ozzie has been AWOL when it comes to presenting a vision for Microsoft as it's Chief Software Architect. There is an interesting comment in response to his post from an ex-Microsoftie which is excerpted below

>We need more engagement from Ray and his brigade about what's happening and what kind of coherent vision is coming about.

I'm sorry, but this is NOT what you need. You do NOT need vision from Ray. At this point, what you need from Ray is code!

I have a very long history with Microsoft, and I am no longer a softie. One of the reasons I left is the whole vision/strategy vs. code problem. In the old days, production quality code really mattered a ton. In the new Microsoft, from Forum 2000 onward, code was much less important. What really mattered was laying down a vision and a strategy.

I wrote a longish post in response to this comment then realized no good could come from posting it here. Suffice to say I agree with the sentiment in the comment. Somewhere along the line VISION became more important than SHIPPING CODE at Microsoft. This really became a problem when the gap between our vision (or should I say BillG's vision) and our ability to ship code widened a lot more than we realized leading to unpleasant results (e.g. Longhorn). 

What the company needs now is more focus on shipping code and less focus on vision. Quite frankly, I'd be quite happy to never get another vision memo or speech from Ray as long as I'm sure he's out there making sure we aren't working on any more obviously bad ideas. One of the reasons I'm still at Microsoft [specifically Windows Live] is that I believe that our current leadership believes in shipping code. I've also gotten the same vibe from Ray which is also goodness in my book. Time will tell whether my confidence is warranted or not.

PS: Is it me or are there shades of markl in that comment on Mini's blog?

Categories: Life in the B0rg Cube

A few weeks ago I announced the availability of the release candidate for the Jubilee release of RSS Bandit. We got a lot of good feedback from our users on that release and have fixed a ton of bugs based on that feedback. With the addressing of these bugs we believe the product is now stable enough for a final release. Thus we have refreshed the release candidate installer and made it available at Our plan is to watch for feedback on this release candidate and if there are no major issues left, then we will release a final version with a version number of v1.5.0.10 on March 3rd, 2007.

Below is an exhaustive list of the bugs that have been fixed in the past three weeks. Since there are quite a number of them, I've highlighted the fixed issues that were particularly annoying to users based on the amount of feedback we got on them.

Change Log for RSS Bandit (Jubilee Release Candidate 2)

  • Fixed: RSS 0.91 DTDs now fetched from local machine instead of to cope with announcement made by Netscape that the file will stop being available on July 1, 2007.
  • Fixed: Custom actions in installer prevent installation on Windows Vista.
  • Fixed: security exception on opening Options dialog if UAC is activated or a user does not have admin privilegs
  • Fixed: Scrolling through newspaper can mark items unread if they were marked as read outside the newspaper view(bug 1641219)
  • Fixed: Selecting multiple items then right-clicking on them, deselects them (bug 1642463)
  • Fixed: Size limit on podcast folder wasn't being honored (bug 1642923)
  • Fixed: The search index somehow becomes corrupted then every couple of minutes a dialog box would pop up with the error message "Unexpected Exception on SaveApplicationState() ---> System.IO.FileNotFoundException"
  • Fixed: Marking an item as read in a search folder doesn't mark it as read in the main feed.
  • Fixed: Some feeds refuse to display with the following error message - "Error retrieving feed ... from cache: Item has already been added".
  • Fixed: Save Search button was not working in the search panel
  • Fixed (completed): Back button chevron should be removed when web browsing
  • Fixed: Feed Subscriptions Panel width was not remembered on restart (bug 1647343)
  • Feature: search folders now have a context menu entry to toggle display of full item texts (somewhat slower than show summaries)
  • Feature: the font style and color used for watched news items are now configurable via Options|Fonts dialog
  • Feature: the font style and color used for unread counters in the subscription tree is now configurable via the configuration file options (sample enables rendering similar to outlook express)
  • Feature: Open browser tabs are remembered on restart
  • Fixed: Newly launched browser tabs grab the focus instead of opening in the background (multiple related bugs reported at sourceforge)
  • Fixed: Url combobox not always in sync. with the current displayed tab
  • Partially fixed: Back button chevron should be removed when web browsing (bug 1638805)
  • Fixed: Feed with initial focus is always refreshed on startup (bug 1634694)
  • Fixed: Sometimes the toolbars replaced by giant red 'X' while browsing the Web from within the application.
  • Fixed: Option "Initiate download feeds at startup" was not being honored
  • Fixed: Restore from system tray doesn't always re-display window (bug 1641837)
  • Fixed: Upgrade IE 6 to 7: cannot use ALT-Tab to switch tabs anymore (bug 1602232)
  • Fixed: mouse wheel support for treeview re-activated (wheel-scroll while not focused)
  • Fixed: The "On initial subscription: Only download X items" setting was not obeyed.
  • Feature: Can now drag multiple urls separated by newlines to the treeview for "batch" subscribe


Categories: RSS Bandit

The intrepid investigators over at LiveSide seem to have stumbled upon a Digg-like site created by Microsoft called MSN Reporter. From their post MSN enter social news arena with Digg competitor - MSN Reporter we learn

As an ongoing part of MSN's efforts to increase the amount of user generated content on its network, the Dutch MSN team has created MSN Reporter, a social news site similar to the likes of digg and reddit. Available in beta since October 2006, currently MSN Reporter has launched only in three markets, Netherlands, Belgium and Norway.

Allowing users to share and rate news on the site, it has a simple interface, much like the Digg of old. It also has Windows Live integration, with Alerts, add to and with a BlogIt! option sending posts straight to Windows Live Spaces. With buttons that says "Kicken!" and "Dumpen!" who doesn't feel the urge to participate?

So far there has been considerable interest in the new service, with reportedly 500,000 and 800,000 users visting the site in the 1st and 2nd months respectively.  With articles getting upto 10,000 votes and 1,000 comments, this is a on a completely different level to most existing social news sites.

This is a pleasent surprise. I've been wanting Microsoft to do a Digg-like site for a while but gave up on it after I stopped being able to figure out whether I should be pitching the idea to folks at MSN or Windows Live. It looks like the folks at MSN have not only taken the initiative and built a social news site but it seems to be capitalizing on the popularity of the MSN brand in Europe given some of those stats above.

PS: In other Windows Live MSN news LiveSide is claiming that Windows Live Wifi Suite will rebrand to MSN. They even post a link to which is still Windows Live branded at the moment. It looks like they even scooped the product team's blog. I'm not sure if this is just a rumor or a leak since I have no insight into what goes on at MSN but it would make sense if the LiveSide story is true. . 


Categories: MSN | Windows Live

February 16, 2007
@ 02:04 AM

It seems that I must have missed some key conference or memo sometime this year because all of a sudden I see a lot of blogs dropping the term social media and I have no idea what it means. I tried reading the wikipedia entry for social media but ended up more confused than ever. The first paragpragh seems OK and it reads

Social media describes the online tools, platforms and practices that people use to share opinions, insights, experiences, and perspectives with each other. Social media can take many different forms, including text, images, audio, and video. Popular social mediums include blogs, message boards, podcasts, wikis, and vlogs.
This seems like an explanatory definition until you consider that this pretty much describes the majority of the Web today. We have moved from the read-only Web of the 1990s to the read-write Web of today where personal publishing is king from self indulgent blogs and ugly MySpace pages to home made rap videos and amateur photo journalism. Personal publishing and the editable Web is here to stay. Thus this term seems pretty redundant especially since the odious "Web 2.0" still seems to have legs. Did the pundits get tired of "Web 2.0" and decide they needed to create a new buzzword to yank our chains with? Seriously...WTF?

PS: Is it just me or does most of the Wikipedia entry seem like a cleverly disguised ad for a PR firm with references to "Social Media Press Releases" and "Social Media Campaigns". Double WTF?

PPS: The tipping point for me with regards to this silly term was reading the TechCrunch article about Microsoft hiring Michael Gartenberg and trying to parse "Hiring social media power users to evangelize for your company’s product" into a statement that made sense and failing. Woefully.


Categories: Current Affairs

February 15, 2007
@ 04:21 PM

I feel like I've been getting a little complacent about trying out new experiences in recent years. My new year resolution was to learn new technologies outside my comfort zone and try out new experiences. So far I think I'm doing OK on the new experiences front. I've had a podcast interview with .NET Rocks show (Show #218, Scheduled Air Date: March 13th 2007) , I've tried to buy a house and learned why so many people rave about Zillow, and will be going to the happiest place on earth next week.

To keep my programming chops fresh I'd like to spend the next couple of months of my hobby time learning a new programming language and perhaps catching up on old ones which have evolved since I last paid them any attention. But first I have to get a Jubilee release of RSS Bandit out of the door. Torsten and I have been fixing bugs like mad over the past few weeks and I think we're about done with any more major code changes for this release. The last major issue is the fact that the RSS Bandit installer crashes on some versions of Vista. I've talked to Rob Mensching about this issue and my conclusion was to move a bunch of code out of the installer and into the first run experience. I'll be making that change this week and then will publish a Release Candidate 2. This RC 2 of the Jubilee release is to validate that we've fixed all of the issues that were found by our early adopters in the previous release candidate. I estimate that should take about two weeks and then we'll publish the release version of Jubilee release on March 3rd 2007.

Once this release goes out I plan to take 2-3 months off of working on RSS Bandit. During the first month and a half I plan to catch up on changes in Java and C# I haven't been keeping up on by updating my C# From a Java Developer's Perspective article I wrote when I was in college. I'm also interested in catching up on recent debates on concurrency models in programming languages such as the ones references in posts like Neil Mix's What Mean You, Threads?, Brendan Eich's Threads suck and Patrick Logan's Misguided: The Road Not To Be Travelled. I need to resubscribe to Lambda the Ultimate.

During the second half of my RSS Bandit sabbatical I plan to learn the Python programming language, specifically IronPython. To make sure I actually learn the language I need an actual programming project. I plan to build a meme tracker in Python hopefully by combining code from RSS Bandit and [OSS licences permiting] Sam Ruby's Mememe code

Once the summer hits, it'll be time to start work on the Phoenix release of RSS Bandit. My goal with this release is to solve the problems I have with due to the monstrous number of posts a day. I'll tackle this in multiple ways including incorporating meme tracking as well as introducing a page model to newspaper view so that I don't have to deal with slowdowns when the embedded browser tries to render the content of 500 - 1000 blog posts at once. There will also be UI work done such as adding a podcast inbox as well as jumping on the Office 2007 ribbon bandwagon.

Now that I've actually written this down in public, I have to actually get it done. :)


Categories: Personal | RSS Bandit

February 15, 2007
@ 03:36 AM

The MSN SoapBox team has a blog post entitled Soapbox Now in Public Beta which states

We just flipped the switch from an Invitation Only, to a Public Beta.
No need to request an invitation and sign in to watch videos on Soapbox anymore!

Cool. I guess it's now OK to start petitioning the developers of Bloglines and Google Reader to show embedded MSN Soapbox videos like in my those in my post Ads: Vista vs. Mac OS X.

I'm still not sure how I feel about MSN SoapBox. Besides the obvious branding questions, I question the wisdom of building a YouTube clone as opposed to building an experience more like MySpace Video which would leverage our existing brand and investments in offerings like MSN Windows Live Spaces. Whatever, I guess.

The site is still a rather snazzy use of Flash and there are a couple of things in the interface I think existing sites like Google Video and YouTube could learn from. Check it out at


Categories: MSN

February 15, 2007
@ 03:15 AM

I've been using Live Search for Mobile for the past 24 hours and it is hot, hot, hot. I was in the car just now and wanted to call the Metropolitan Grill to confirm our dinner reservations. Usually this involves calling 411, talking to some lame voice recognition system and then repeating myself to a human while getting charged mucho dinero for this "service". With Live Search for Mobile, it was dead easy to select "Seattle, Washington" from the canned list of metropolitan areas, type my search term ("metropolitan grill") and then call the number in the search results.

I thought this was cool but was going to criticize the product for only supporting major metropolitan areas but it seems I was mistaken. There is a comprehensive list of the major cities in every U.S. state. For Washington state they have local listings from Aberdeen to Yakima. Crazy.

Seriously, if you have a Windows Mobile or J2ME phone, you should go to This is the coolest download I've gotten from my phone since Smartphlow. Kudos to team for creating such a useful product. It's rare for me to blog about one of our product announcements and follow it up with another blog post so soon afterwards but this product is that good.  


February 14, 2007
@ 03:24 AM

Danah Boyd has a blog post entitled Facebook's little digital gift where she writes

Last week, Facebook unveiled a gifting feature. For $1, you can purchase a gift for the person you most adore. If you choose to make the gift public, you are credited with that gift on the person's profile under the "gift box" region. If you choose to make the gift private, the gift is still there but there's no notice concerning who gave it.
Unlike Fred, i think that gifts make a lot more sense than identity purchases when it comes to micro-payments and social network sites. Sure, buying clothes in virtual systems makes sense, but what's the value of paying to deck out your profile if the primary purpose of it is to enable communication? I think that for those who actively try to craft a public identity through profiles (celebrities and fame junkies), paying to make a cooler profile makes sense. But most folks are quite content with the crap that they can do for free and i don't see them paying money to get more fancified backgrounds when they can copy/paste.
Like Fred, i too have an issue with the economic structure of Facebook Gifts, but it's not because i think that $1 is too expensive. Gifts are part of status play. As such, there are critical elements about gift giving that must be taken into consideration. For example, it's critical to know who gifted who first. You need to know this because it showcases consideration. Look closely at comments on MySpace and you'll see that timing matters; there's no timing on Facebook so you can't see who gifted who first and who reciprocated. Upon receipt of a gift, one is often required to reciprocate. To handle being second, people up the ante in reciprocating. The second person gives something that is worth more than the first. This requires having the ability to offer more; offering two of something isn't really the right answer - you want to offer something of more value. All of Facebook's gifts are $1 so they are all equal. Value, of course, doesn't have to be about money. Scarcity is quite valuable. If you gift something rare, it's far more desired than offering a cheesy gift that anyone could get. This is why the handmade gift matters in a culture where you can buy anything.

As usual I agree 100% with Danah. A few years ago Ze Frank was here at Microsoft talking to some folks in the Social Computing Group of Microsoft Research and he talked about a service that allowed users to give virtual gifts to each other which was making money hand over fist. I can't remember the name of the service but the logic for why virtual gifts were popular on the service made sense. As Danah points out, paying to pimp out your profile (i) gets old quick and (ii) is something that most people don't care much for. On the other hand gifting is an activity that a user can perform repeatedly since there are milions of people out there they can give gifts to compared to only having one avatar/profile to pimp out.

As Jamie Zawinski pointed outed out in his rant Groupware Bad,

"How will this software get my users laid" should be on the minds of anyone writing social software.

and Facebook which is primarily used by people who are still indulging in the mating rituals of early adulthood needs to keep this foremost in their minds. The gifting feature meets this need of their users quite well. A "virtual gift" is the equivalent of eye contact or a wink in a crowded bar that shows your interest in another. It makes the receiver feel special because someone thinks they are cool enough to spend money on [even if it is a micropayment] and the sender feels good because it is an almost risk-free gesture of sexual interest which doesn't cost much economically or socially. After all getting dissed by someone at a bar or dance club is a lot more damaging to the ego than someone not reciprocating your virtual gift or ignoring your friend request after you bought them a $1 "virtual rose bouquet".

I also agree with Danah that Facebook should stratify the gifts. Hot chicks would compete with each other for how many $5 gifts of "virtual bling" they had compared to $1 gifts of virtual flowers. Flirting guys trying to stand out in the crowd would throw down a $10 virtual gift of a 'cadillac escalade with spinners' to show that they were ballers. If this sounds outlandish to you, then you probably haven't looked at online dating sites like whose "browse for free but pay to message those you like" highlights the demand for this in online mating rituals. As well as the fact that "virtual gifts" are actually a staple of dating sites like such as MatchDoctor and Cheeky Flirt.

Making it easy for college kids to hook up and party is what Facebook is about and this move is a step in the right direction by facilitating a new kind of online mating ritual for many of their users. Good move on their part.


Categories: Social Software

February 13, 2007
@ 10:25 PM
Vista Ad

Mac OS X Ad

Which do you prefer and why?


From the press release Microsoft Announces Three New Windows Live Products for Mobile Devices we learn

Today at 3GSM World Congress 2007, Microsoft Corp. announced three new Windows Live™ for mobile services that provide search and communications capabilities to help people access their world of relationships, information and interests from their mobile device. Now available in the United States and the United Kingdom, Live Search for Windows Mobile® and Live Search for Java provide customers with advanced local search and mapping capabilities on their mobile device. In conjunction with the availability of Windows Mobile 6, Microsoft also introduced Windows Live for Windows Mobile — a rich set of Windows Live services including e-mail, instant messaging and search — uniquely designed to work with Windows Mobile powered devices.

You can download the search clients for Java or Windows Mobile phones by going to from your desktop or from your phone. I downloaded the client app onto my Cingular 3125 and it is quite snazzy. Traffic and local business search in my phone, all for free. My only gripe is that there doesn't seem to be GPS integration in the local results presented which may be a limitation of my phone as opposed to the software.

It looks like you can only get Windows Live for Mobile with integration with Windows Live Spaces, Windows Live Hotmail and Windows Live Messenger when you get a new Windows Mobile phone with Windows Mobile 6.0 or can figure out how to upgrade your phone's OS. In the meantime, you can drool over the features at official website for Windows Live™ for Windows Mobile®.


Categories: Windows Live

February 12, 2007
@ 11:59 PM

Via the LiveSide post entitled to get social - share your own pages I noticed that we've finally shipped collections. The official description of the feature is excerpted below

Collections are pages of gadgets and feeds created and shared by users. Add your favorite Collections to your own page, or share one of your pages with the community.

This is a pretty sweet feature because it allows people to build 'templates' which others can use. For example, I can create a page which has  subscriptions to TechCrunch, Mashable, Read/Write Web and as well as a couple of relevant gadgets then share that with coworkers who are interested in subscribing to the latest goings on in the Web 2.0 blogs. Much better than sharing OPML files, isn't it?

There is more about this feature and others in the Windows Live Gallery team's blog post entitled Another release goes out the door!. So far, it seems that user-created collections haven't yet been enabled although you can try out some of the collections that have been published by Microsoft. If you are interested in when this feature will be enabled for all users to share their customized and pimped out homepages with others, then head over to the Gallery and team blogs with your questions. 


Categories: Windows Live

February 12, 2007
@ 08:13 PM

A couple of weeks ago I read a blog post by Matt Cutts entitled What did I miss last week? where he wrote

- Hitwise offered a market share comparison between Bloglines, Google Reader, Rojo, and other feed readers that claimed Bloglines was about 10x more popular than Google Reader. My hunch is that both AJAX and frames may be muddying the water here; I’ve mentioned that AJAX can heavily skew pageview metrics before. If the Google Reader team gets a chance to add subscriber numbers to the Feedfetcher user-agent (which may not be a trivial undertaking, since they probably share code with other groups at Google that fetch using the same bot mechanism), that would allow an apples-to-apples comparison.

As I was thinking about the fact that Google Reader can't make changes to the FeedFetcher user agent without tightly coupling a general platform component that likely services Google Reader, Google Homepage, Google Blog Search and other services with their own. I realized that by using one user agent for all of this servides, it pretty much makes it impossible for Web masters to exclude themselves from some of Google's crawlers.

Exactly how one would go about creating a robots.txt file that limits your feed from showing up in Google Blog Search results but doesn't end up exlcuding you from Google Reader and Google Homepage as well? I can't think of a way to do this but maybe it's because my kung fu is weak. Any suggestions? 

PS: This isn't work related.


Categories: Web Development

February 12, 2007
@ 07:55 PM

Nick Carr has a blog post entitled Googlegate in North Carolina where he writes

North Carolina's Senate Finance Committee is hastily arranging hearings for next week on the state's use of tax incentives to lure businesses, as public outrage mounts over disclosures that Google was granted as much as a quarter billion dollars in secret tax breaks for a plant expected to employ approximately 200 workers. There's no word yet on whether any Google officials will be asked to testify.
The Googlegate controversy is unlikely to abate any time soon. Troubling new details of the secret deal-making continue to emerge. Today's Charlotte Observer features a long article describing how public officials leaned on some local residents to sell their homes to make way for the Google plant. The mayor of the town of Lenoir, Davis Barlow, and the county commissioner, Tim Sanders, were among the officials who, according to the paper, went "door-to-door on behalf of the Internet giant Google. In some cases, officials returned to homes four or five times. Barlow and Sanders effectively used the personal touch, avoiding a drawn-out public debate that Google was secretly telling them would scuttle the deal. That personal touch enabled some residents to feel comfortable in selling their property."

This reminds me of a comment I once heard about why the deal makers at GOOG are such hardball players. It goes back to the Google Founders' Awards which were intended to be a way to significantly reward people who add value to the company's bottom line.  Since this award is worth millions of dollars, there is a lot of stiff competition and I'd heard that it ended up the sales folks, acquisitions experts and other deal makers who end up as the primary contenders for the award.

I guess it makes sense, which other job functions can say that they directly save or benefit the company a quarter of a billion dollars on the bottom line? Not the lead developer of Google Calendar or the PM who wrote the spec for Google Base, that's for sure. :)

Unfortunately, when you put millions of dollars in incentives in front of your employees you shouldn't be surprised if they start cutting ethical corners to make things happen. Even CEOs and CFOs aren't immune from this which is why we have Sarbanes Oxley today.


During my morning workout I was watching stories on Iran on both Good Morning America and CNN. GMA had an exclusive interview with the President of Iran and interviewed some of the citizens in a move which made it seem like "the Iranian people" love America and it is their leaders that hate the United States. My favorite quote was one of the burkha clad ladies being quoted as saying "I'd like to go Las Vegas" [sic]. CNN on the other hand was all about the recent "news" that Iraqi insurgents are being armed and trained by elite Iranian troops. I'm now going through a serious case of déjà vu, it's like 2003 all over again.

Dave Winer does a good job of calling bullshit on this snow job in his post Iranian weapons? BFD where he writes

The NY Times ran this story on Saturday, today there's a mysterious US press briefing announcing that they had discovered that weapons imported from Iran to Iraq are killing American soldiers. So what exactly are we supposed to conclude from this? They don't say.

On the Sunday talk shows, the politicos don't say what's obvious to this voter.

1. If you don't want Americans blown up by Iranian weapons, get them out of Iraq.

2. It's a big surprise? We're calling them names, threatening them, moving our aircraft carriers into their ports, and we're supposed to be shocked that they're helping people who are fighting with us in Iraq? I would be surprised if it were otherwise, if they weren't helping them.

3. Who's providing more weapons to our enemies, Iran or the U.S.? I don't have the slightest doubt that the American taxpayer is the largest single source of support for people killing Americans in Iraq. We're pumping billions of dollars into Iraq every month, a lot of that must be in the form of weapons. Our supposed allies in Iraq are actually Sunni or Shi'ite militia. There are virtually no non-partisans in Iraq, everyone is on some side, and aside from the Americans and British, they're all trying to blow our guys up.

4. We'll leave behind a power vacuum in Iraq if we leave now? Seems doubtful to me. The place is already in chaos. We have 150,000 troops in Iraq (or thereabouts) in a country of 27 million people.

I agree with a lot of what Dave Winer has to say although I disagree that pulling out is the right course of action since the country is likely to devolve further into a state of civil war which the United States is directly responsible for. Unfortunately, it seems that while the congress is endlessly debating whether to issue the equivalent of a press release that expresses mild indignation at the president's troop surge in Iraq, he has already moved on and is planning how he'll expand his invasion and occupation of the Middle East into Iran.

The phrase to hell in a handbasket never seemed so accurate.


Categories: Current Affairs

Niall Kennedy has a blog post entitled Netvibes module developer collects web credentials, personal content where he writes

A developer created a Netvibes module and submitted it for inclusion in the Netvibes Ecosystem module directory. A Netvibes employee examined and approved the submitted module for inclusion in the directory. The remotely-hosted module was then altered by the developer to retrieve stored preferences from other configured modules and store information from other modules loaded in the page such as the contents of a webnote, the user's latest Gmail messages, upcoming appointments and contacts, etc. The developer stored this data in a remote database and later examined his collected findings.

Each Netvibes module is rendered inline, meshing the markup generated by the module with the rest of the page's content. A module developer is encouraged to access only their own module's content using a special Netvibes variable, but any developer can request other content on the page through standard JavaScript or the Prototype JavaScript framework.

I talked to Niall about this on IM and upon reading the blog post from the Netvibes team as well as Niall's summary of the situations it seems they are doing at least three things wrong from a security perspective.

  1. 3rd party gadgets hosted inline within the page instead of within iframes which means the gadget can walk the DOM and interact with other gadgets on the page.
  2. 3rd party gadgets are fetched from 3rd party domains instead of a snapshot of the code being run from their domains which means malicious developers can alter their gadgets after they have been submitted
  3. 3rd party gadgets not hosted on a separate top level domain which means gadgets may may be able to set and read cookies from the * domain

All of these are safeguards that we take in Windows Live Gallery, Windows Live Spaces and to prevent malicious gadgets. I'm stunned that the response of the Netvibes developers is to change the text of their warning message and allow user rating of gadgets. Neither of are significant mitigations to the threats to their service and I'd recommend that they reconsider and actually secure their service instead of pushing this onto their users.


Categories: Web Development

Richard Sim over on the Hotmail/Windows Live Mail team's blog has posted an entry entitled We Heard You Loud and Clear which states

To do this, we started from scratch and built a whole new service from the ground up – and we called this Windows Live Mail. As we brought users onboard to this new service and had them kick the tires, we learned quickly that users loved it. We knew we were onto a good thing. We also found that many users were extremely loyal to the Hotmail brand and perceived the beta as an upgrade to Hotmail. In fact, our most loyal users have been very happy with Hotmail for years and while they loved the improvements in the beta, some were a bit confused by name change. 
As we prepare to launch the final version of our new web mail service, we recognize the importance of ensuring that our 260+ million existing customers come over to the new service smoothly and without confusion. By adopting the name “Windows Live Hotmail”, we believe we’re bringing together the best of both worlds – new and old. We’re able to offer the great new technology that Windows Live has to offer while also bringing the emotional connection many existing and loyal users have with Hotmail.

I'm glad to see that a lot of the unwise decisions around branding that originally infested Windows Live are beginning to fade. First Windows Live Local switched to Windows Live Maps. Now Windows Live Mail is Windows Live Hotmail, which builds on a brand that is about a decade old instead of throwing it away.

What we need now is a campaign to rename Windows Live Mail desktop to something less unwieldy which also respects our brand with lots of mindshare. Perhaps Windows Live Outlook Express? :)  


Categories: Windows Live

I've mentioned in the past that I like the SessionSaver extension for Firefox and would like to implement similar functionality for RSS Bandit. I finished up this feature last night but I kept getting weird behavior. The expected behavior is that when RSS Bandit is launched it remembers the application state from the last time it was closed such as whether it was minimized to the system tray, open browser tabs, what nodes in the feed subscription tree were expanded and what news item(s) were selected. 

The weird behavior was that every once in a while when the application restarted, I'd get an InvalidActiveXStateException which was thrown from the IWebBrowser2.Navigate method when restoring the open browser tabs from the previous time the application ran. Further investigation narrowed the issue down to only showing up when the application had been minimized to the system tray when it was closed and thus being immediately minimized to the system tray when the application was restarted. 

I managed to read a comment on some forum that indicated that the problem is that IWebBrowser2.Navigate method doesn't work if the WebBrowser control isn't visible. This means that this feature won't work as smoothly as I'd like when the application is restarted after being closed from the system tray but it does get rid of the ugly exception.

I hope this blog post explains why the feature will seem wonky in this situation for our users and may prove useful to developers who come across this weird error in the future.


Categories: Programming | RSS Bandit

A couple of blogs I'm subscribed to are pimping the brand new Yahoo! Pipes which I unfortunately can't seem to access right now. You can read some of the hype in blog posts like Jeremy Zawodny's Yahoo! Pipes: Unlocking the Data Web and Tim O'Reilly's Pipes and Filters for the Internet where it is described as "milestone in the history of the internet". I'd have loved to try out the service giving my interest in mashups and feed syndication but the site seems to be down or is just really, really slow.

As Dave Winer writes in his post Pipes Investigation

I see that Yahoo has a new web app, called Pipes, that looks to me like a feed construction kit. It takes RSS inputs, processes them in ways that are specified by the user, and produces feeds as its output.
From a quick persual of the functionality last night and the fact that the server isn't responding right now (5:45AM Pacific), it seems this app uses lots of CPU on the server

As someone who works on large scale online services for a living, Yahoo! Pipes seems like a scary proposition. It combines providing a service that is known for causing scale issues due to heavy I/O requirements (i.e. serving RSS feeds) with one that is known for scaling issues due to heavy CPU and I/O requirements (i.e. user-defined queries over rapidly changing data). I suspect that this combination of features makes Yahoo! Pipes resistant to popular caching techniques especially if the screenshot below is any indication of the amount of flexibility [and thus processing power required] that is given to users in creating queries.

Really interesting idea though. I agree with Dave Winer that this is definitely fodder for geeks and not the average Web user. After all, RSS still hasn't crossed the adoption chasm with average Web users let alone an RSS feed remixing service.


It looks like we just announced that we'll be supporting OpenID at the RSA conference. Official details are in the press release Microsoft Outlines Vision to Enable Secure and Easy Anywhere Access for People and Organizations which states

To further enable the vision of secure and easy anywhere access, Microsoft today announced the following product milestones and industry alliances:
On the heels of the Windows® CardSpace™ general availability launch in Windows Vista™, Microsoft demonstrated momentum with industry partners that are working to apply this technology to help consumers realize a more confident online experience. This includes the announcement of collaboration on use of Windows CardSpace with the OpenID 2.0 specification. Through the support of the WS-Trust-based Windows CardSpace experience, consumers can take advantage of increased security against phishing attacks without adding complexity to their identity management experience. Also at the conference, Wachovia Corp., Arcot Systems Inc. and Corillian Corp. showcased a proof of concept demonstration using Windows CardSpace to deliver a simpler and safer online banking experience for customers.

I'm glad to see the Web platform teams at Microsoft getting better at watching what's going in the Web developer community and adapting their plans to accomodate them. AJAX, RSS, and RESTful Web Services are all trends that started outside the B0rg cube that the platform teams have embraced after some initial resistance. With OpenID it didn't take as long for us to go through the NIH<->FUD<->Acceptance<->Approval<->Adoption cycle that I've come to expect from my fellow B0rg. It seems we have adapted.

You can get some more details about the announcement from Kim Cameron's blog post CardSpace / OpenID Collaboration Announcement which has more details on which companies are collaborating with Microsoft in this effort.

It looks like another collection of links have piled up in my "to blog" list which I don't have enough thoughts on to warrant an entire blog post.

  • Help Find Jim Gray - Jim Gray has been missing for about a week and the efforts to find him by various technology companies has been impressive. From the post "Through a major effort by many people [ed - from NASA, Digital Globe, Microsoft, Google, Oracle, Amazon and others] we were able to have the Digital Globe satellite make a run over the area on Thursday morning and have the data made available publicly. We have split these images into smaller tiles that can be easily scanned visually and stored into the Amazon S3 storage service. We then created tasks for reviewing these images and loaded then into the Amazon Mechanical Turk Service.".

    This is a rather powerful use of Amazon's technology platform and the wisdom of the crowds to try to save a life. If you'd like to help in reviewing sattellite images on the Amazon Mechanical Turk service to help locate Jim Gray go here.

  • The Limits of Democracy - I read this article at the gym last week and the following excerpt stung like a body blow, "Bush's arrogance has turned people off the idea of democracy," says Larry Diamond, co-editor of the Journal of Democracy.But he goes on: "There's a lot more to it than that. We need to face up to the fact that in many developing countries democracy is not working very well." Diamond points to several countries where elections have been followed by governmental paralysis, corruption and ethnic warfare. The poster child for this decline has to be Nigeria, a country often lauded for its democracy. In fact, the place is in free fall—an oil-rich country with per capita GDP down to $390 (from $1,000 20 years ago), a ranking below Bangladesh on the United Nations Human Development Index, and with a third of the country having placed itself under Sharia."

    I've wrote a blog post in response to this article but decided against posting it for obvious reasons. The only observation I'll make in public is that it is unfortunate that the problems with Bush's [lack of a] strategy in Iraq has now moved the Overton Window to a place where people talk wistfully about when the United States supported brutal dictatorships which supported its policies instead of trying to encourage democracy in developing countries. Especially since a lot of the current ethnic woes facing many emerging democracies trace their roots back to meddling by colonial powers.

  • Position Paper For the Workshop on Web of Services for Enterprise Computing - The problem summary for the paper is "Web Services based on SOAP and WSDL are 'Web' in name only. In fact, they are a hostile overlay of the Web based on traditional enterprise middleware architectural styles that has fallen far short of expectations over the past decade". Wow, a VP at Gartner submitting a position paper with the above summary must be a sign of the end times.

  • Here, women propose marriage and men can't refuse. From the story highlights "Woman presents special plate of fish to man; he takes a bite and is engaged. Matriarchal society exists in archipelago of 50 islands off Guinea-Bissau. Missionaries bring new concept of men proposing, causing strife in families".

    I thought the days of missionaries coming to Africa and destroying centuries of African culture converting the heathens to the ways of Christianity ended in the 19th century. Are we in a time warp here?

  • In wake of 2 fatal shootings, some question police tactics - Undercover cops pretending to be drug dealers end up shooting an 80 year old man who confused them for actual drug dealers selling drugs on his property. The statement from the police makes it seem like they consider this the equivalent of a bureaucratic foul up. Sad.


I'm a little late in blogging this but last week the Windows Live SDK silently launched. What's in the SDK? All of this goodness

Kudos to Jim Gordon, Kevin Ledley, Koji and all the others who pulled together to get this out. I actually did some work on this as well. I updated the documentation on the Windows Live Spaces MetaWeblog API to account for the very recently announced Windows Live ID 1.0 Client SDK. Finally, non-Microsoft applications can talk to Windows Live and MSN services that require Passport Windows Live ID authentication without having to sell their souls to the B0rg cube. Now we just ask for a pound of flesh. ;)

Seriously though, I'd been watching Yahoo! and Google's forays with BBAuth and Google Account Authentication with some jealousy so it is with a lot of gladness that I welcome this move. If you are an application developer that is interested in building an application that accesses user data from Windows Live services then download the Windows Live ID Client SDK 1.0 alpha release and share your feedback with the Live ID folks on the Windows Live ID development forum. Authentication is a fundamental building block of any API story that we have with regards to accessing and manipulating user data so it is important that we get it right and get feedback from developers out there.

Let us know what you think.


Categories: Windows Live

There's a theme that I've seen recurring over the past few weeks that I thought would be good to expand upon in my blog so that next time it comes up I can just point people here. It started with a blog post by Joshua Schachter of entitled lessons learned: fidelity where he writes

While software systems tend to strive towards accuracy and fidelity, I have frequently observed that these exact qualities may hurt social software.
It occurs to me that not every factoid gleaned from the constellation of behavioral data should be presented.

For example, the emminently social Twitter, happily informs me that while 34 people count themselves amongst my friends, only 31 of them care to be informed about I'm up to every day -- and then shows me who those folks are. While these lists are on different actual web pages, it's not a herculean task to figure out the actual people involved. Even though it's possible to show all the information, from a social perspective a degraded view would be better.

This point has come up repeatedly in discussions I've had with people across Windows Live. Just because we have information doesn't mean we should present it to users especially since giving users all the data can sometimes be considered spamming them (e.g. unwanted friend requests in social networking sites) or can be somewhat unsettling to users even if the information is readily available ( e.g. the original implementation of News feeds and Mini-Feeds on Facebook). 

Then there's the reciprocity point that Joshua Schachter brings up. The problem with social networking is that it is all about reciprocity and unfortunately sometimes we have to deal with rejection. How the application displays this rejection to users is key to the user experience. Here is one example taken from the Penny Arcade post The Pilgrimage, Part One

I had hoped that there at CES I would have an opportunity to use the Zune's social features - its "higher brain functions," as I put it - but I was only there Thursday, after the place had largely thinned out. Near the Microsoft booth I was happy to see many devices speaking wirelessly - so many I had to scroll! - until I realized that they were named after genres, and were (in fact) the display units, which added greatly to my shame.

The two times I had an opportunity to share files were interesting - once on the floor itself, and once in the plane on the way back. In both cases, my offer was rebuffed. This actually feels terrible when it happens, because you're trying to show someone something that is important to you and they don't care. But let's be clear: when someone is listening to music, that's private. They are actively eschewing the outside world, and here you are - with some song they've never heard of - interrupting their lives. Let me also state that your music stops when doing this - even for someone that buys into the device philosophically, I mean... Jesus Christ, guys.

Notice that in this case, the rejection is really stark and turns what was meant to be a "social" experience into a negative user experience. We've faced this problem as well in various applications across Windows Live. In Windows Live Messenger [which just hit two milestones] we cushion the pain of rejection by not telling you if the person you made a buddy request to said Yes or No. Instead, we add them to your buddy list right away but in the offline state and you can't communicate with them or see their online presence until they accept your request. So we leave it ambiguous if your request was ever answered or the person is just never online when you are. Of course, this isn't full proof but it significantly cushions the blow of rejection. We do the same for when someone adds you to their friends list on Windows Live Spaces. However one place where I still think we get the social nuances wrong is that when someone deletes you from their friend list in the social networking experience, you can tell because they get removed from your list as well since the relationship is reciprocal. Still trying to figure out a good way to deal with that although it happens infrequently enough not to be a showstopper. 

Finally, you have to be clear about what your goals are when showing users data. Are you trying to generate page views by giving them more stuff to click on? Are you trying to encourage a particular type of behavior? Or is it just data pr0n? And even when you think you have clear goals, they should be constantly be revisited as the site matures. Take this example from today's post by Kevin Rose of Digg entitled A couple updates… where he writes

Which leads me to a disappointing trend that we’ve noticed over the past several months. Some of our top users – the people that have spent hundreds if not thousands of hours finding and digging the best stuff – are being blamed by some outlets as leading efforts to manipulate Digg. These users have been listed on the “Top Diggers” area of the site that was created in the early days of Digg when there was a strong focus on encouraging people to submit content. The list served a great purpose of recognizing those who were working hard to make Digg a great site, as well as a way for new users to discover new content. Now, as the site has matured and we regularly get 5,000+ content submissions per day, we believe there are better ways to discover new friends based on your interests and what you’re digging. So if you have been digging stories about digital cameras and Oolong tea, you will be introduced to other top users with those interests.

So what does this all mean? After considerable internal debate and discussion with many of those who make up the Top Digger list, we’ve decided to remove the list beginning tomorrow. As for what’s next, we’re currently working on designing and refining the technologies required that will help enable our nearly 900,000 registered users to make real connections that we believe will greatly enhance the Digg experience – whether you’re brand new to the site or have been on Digg since the beginning.

This is part of the natural evolution of social news sites. I remember when Slashdot instituted the karma cap because of Signal 11 about six years ago because of similar reasons. Ranking users and turning participating in the community into a game complete with a high score list may be a cheap way to incentivize your users but it becomes problematic once your site matures and has hundreds of thousands of users.

All of these issues should be kept in mind when considering how much information should be shown to users instead of just focusing on whether it is possible to show them the information.


Categories: Social Software

It's unfortunate that when people become successful, there are always the jealous waiting on the wings to tear them down and exaggerate every flaw. Today was one of those days for Flickr. You can tell things are fishy when the people complaining loudest about a company aren't its users but its competitors. We have

  1. There's Thomas Hawk who writes There's Some Mighty Pissed Off Flickr Members Right Now

    [I am CEO of Zooomr]

    Flickr needs to reverse the asinine decisions made today to force people to merge their accounts with Yahoo and to place new limits on your contacts and tags.

    Here are some of the more interesting comments pulled over the past few hours from two flickr forums where they are taking a beating over this right now.

    People are pissed.

  2. And There's Don MacAskill who doesn't just stop at gloating stoking the flames reporting on the problems at a competitor's service. In his post The Dark Side of the Flickr Acquisition where he writes

    You asked for it, you got it: SmugMug is offering 50% off to all Flickr refugees. Just sign up for our free trial using the coupon code flickr and if you like what you see, you’ll get 50% off your first year.

    We’re getting some email from ‘Old Skool’ Flickr users asking us if they can get a discount because Yahoo’s making some changes they don’t like. Thomas Hawk has more coverage over on his blog, you can read the Flickr Forums for more reactions, and even check out the Flick Off group (aka the Flickr Accounts Mass Suicide Countdown group).

I looked at the announced Flickr changes and didn't see anything particularly shocking. For performance/architectural reasons, they are limiting people to having 3000 buddies and 75 tags. That sucks but it isn't the end of the world. If anything, it just points out the architectural limits of Flickr's backend to competitors but those limits should be fine for most users. The second issue seems to be that you'll soon need a Yahoo! ID to access Flickr. As Anil Dash states in his post I am okay with my Yahoo sign-in, people have known this for months so it shouldn't be a surprise and they've encouraging people to get a Yahoo! login on the sign-in page for a while now.

I wouldn't be surprised if a lot of the "aggrieved users" are actually astroturfers from competing Web 2.0 photo sharing sites.


February 1, 2007
@ 01:19 AM

Miguel de Icaza of Gnumeric, GNOME and Ximian fame has weighed in with his thoughts on the FUD war that is ODF vs. OOXML. In his blog post entitled The EU Prosecutors are Wrong Miguel writes

Open standards and the need for public access to information was a strong message. This became a key component of promoting open office, and open source software. This posed two problems:

First, those promoting open standards did not stress the importance of having a fully open source implementation of an office suite. Second, it assumed that Microsoft would stand still and would not react to this new change in the market.

And that is where the strategy to promote the open source office suite is running into problems. Microsoft did not stand still. It reacted to this new requirement by creating a file format of its own, the OOXML.

The Size of OOXML

A common objection to OOXML is that the specification is "too big", that 6,000 pages is a bit too much for a specification and that this would prevent third parties from implementing support for the standard. Considering that for years we, the open source community, have been trying to extract as much information about protocols and file formats from Microsoft, this is actually a good thing.

For example, many years ago, when I was working on Gnumeric, one of the issues that we ran into was that the actual descriptions for functions and formulas in Excel was not entirely accurate from the public books you could buy.

OOXML devotes 324 pages of the standard to document the formulas and functions. The original submission to the ECMA TC45 working group did not have any of this information. Jody Goldberg and Michael Meeks that represented Novell at the TC45 requested the information and it eventually made it into the standards. I consider this a win, and I consider those 324 extra pages a win for everyone (almost half the size of the ODF standard).

Depending on how you count, ODF has 4 to 10 pages devoted to it. There is no way you could build a spreadsheet software based on this specification.
I have obviously not read the entire specification, and am biased towards what I have seen in the spreadsheet angle. But considering that it is impossible to implement a spreadsheet program based on ODF, am convinced that the analysis done by those opposing OOXML is incredibly shallow, the burden is on them to prove that ODF is "enough" to implement from scratch alternative applications.
The real challenge today that open source faces in the office space is that some administrations might choose to move from the binary office formats to the OOXML formats and that "open standards" will not play a role in promoting nor open source.

What is worse is that even if people manage to stop OOXML from becoming an ISO standard it will be an ephemeral victory.

We need to recognize that this is the problem. Instead of trying to bury OOXML, which amounts to covering the sun with your finger.

I think there is an interesting bit of insight in Miguel's post which I highlighted in red font. IBM and the rest of the ODF opponents lobbied governments against Microsoft's products by arguing that its file formats where not open. However they did not expect that Microsoft would turn around and make those very file formats open and instead compete on innovation in the user experience.

Now ODF proponents like Rob Weir who've been trumpeting the value of open standards now find themselves in the absurd position of arguing that is a bad thing for Microsoft to open up its file formats and provide exhaustive documentation for them. Instead they demand that Microsoft  should either  abandon backwards compatibility with the billions of documents produced by Microsoft Office in the past decade or that it should embrace and extend ODF to meet its needs. Neither of which sounds like a good thing for customers. 

I guess it's like Tim Bray said, life gets complicated when there are billion$ of dollars on the line. I'm curious to see how Rob Weir responds to Miguel's post. Ideally, we'll eventually move away from these absurd discussions about whether it is a bad thing for Microsoft to open up its file formats and hand them over to an international standards body to talking about how we office productivity software can improve the lives of workers by innovating on features especially with regards to collaboration in the workplace.  After all everyone knows that single user, office productivity software is dead. Right?


Categories: Technology | XML