Nick Bradbury has a post entitled An Attention Namespace for OPML where he writes

In a recent post I said that OPML would be a great format for sharing attention data, but I wasn't sure whether this would be possible due to uncertainty over OPML's support for namespaces.
As I mentioned previously, FeedDemon already stores attention data in OPML, but it uses a proprietary fd: namespace which relies on attributes that make little sense outside of FeedDemon. What I propose is that aggregator users and developers have an open discussion about what specific attention data could (and should) be collected by aggregators.

Although there's a lot of attention data that could be stored in OPML, my recommendation is that we keep it simple - otherwise, we risk seeing each aggregator support a different subset of attention data. So rather than come up with a huge list of attributes, I'll start by recommending a single piece of attention data: rank.

We need a way to rank feeds that makes sense across aggregators, so that when you export OPML from one aggregator, the aggregator you import into would know which feeds you're paying the most attention to. This could be used for any number of things - recommending related feeds, giving higher ranked feeds higher priority in feed listings, etc.

Although user interface and workflow differences require each aggregator to have its own algorithm for ranking feeds, we should be able to define a ranking attribute that makes sense to every aggregator. In FeedDemon's case, a simple scale (say, 0-100) would work: feeds you rarely read would get be ranked closer to zero, while feeds you read all the time would be ranked closer to 100. Whether this makes sense outside of FeedDemon remains to be seen, so I'd love to hear from developers of other aggregators about this.

I used be the program manager responsible for a number of XML technologies in the .NET Framework while I was on the XML team at Microsoft. The technology I spent the most time working with was the XML Schema Definition Language (XSD). After working with XSD for about three years, I came to the conclusion that XSD has held back the proliferation and advancement of XML technologies by about two or three years. The lack of adoption of web services technologies like SOAP and WSDL on the world wide web is primarily due to the complexity of XSD. The fact that XQuery has spent over 5 years in standards committees and has evolved to become a technology too complex for the average XML developer is also primarily the fault of XSD.  This is because XSD is extremely complex and yet is rather inflexible with minimal functionality. This state of affairs is primarily due to its nature as a one size fits all technology with too many contradictory design objectives. In my opinion, the W3C XML Schema Definition language is a victim of premature standardization. The XML world needed experiment more with various XML schema languages like XDR and RELAX NG before we decided to settle down and come up with a standard.

So what does this have to do with attention data and XML? Lots. We are a long way from standardization. We aren't even well into the experimentation stage yet. How many feed readers do a good job of giving you an idea of which among the various new items in your RSS inbox are worth reading? How many of them do a good job suggesting new feeds for you to read based on your reading habits? Until we get to a point where such features are common place in feed readers, it seems like putting the cart way before the horse to start talking about standardizing the XML representation of these features.

Let's look at the one field Nick talks about standardizing; rank. He wants all readers to track 'rank' using a numeric scale of 1-100. This seems pretty arbitrary. In RSS Bandit, users can flag posts as Follow Up, Review, Read, Reply or Forward. How does that map to a numeric scale? It doesn't. If I allowed users to prioritize feeds, it wouldn't be in a way that would map cleanly to a numeric scale. 

My advice to Nick and others who are entertaining ideas around standardizing attention data in OPML; go build some features first and see which ones work for end users and which ones don't. Once we've figured that out amongst multiple readers with diverse user bases, then we can start thinking about standardization.


We are getting down to the end game for getting the Nightcrawler release of RSS Bandit. This is where all the more unfun parts of the release happen such as dealing with translations and tracking down performance bugs such as memory leaks or issues with multithreading. To take my mind of some of the tedium I'm going to have to deal with today, I've decided to spend some time thinking about the Jubilee release of RSS Bandit which should ship sometime next year

One of the features I'm evaluating is Reading lists for RSS which was discussed by Nick Bradbury in a blog entry he posted last month where he wrote

Last week Dave Winer proposed the idea of reading lists for RSS, which are more-or-less OPML subscriptions. I like this idea - a lot - and in fact a few FeedDemon customers have requested this feature in the past.

In a nutshell, the idea is that you'd subscribe to an OPML document which contains a list of feeds that someone is reading, some organization is recommending, or some service has generated (such as "Top 100" list). Changes to the source OPML document would be synchronized, so that you're automatically subscribed to feeds added to the reading list. Likewise, you'd be unsubscribed from feeds removed from the original OPML.

There are a number of implementation details that would need to be worked out (ex: would a FeedDemon user really want to be automatically unsubscribed from feeds dropped from the source OPML, especially if that user had flagged some posts in those feeds for future reference?), but details aside, I'm curious whether this is something you'd like to see, and if so, how do you think the idea can be improved upon?

This feature initially made me skeptical since it seems like a solution looking for a problem. Then again I thought the same thing about enclosures in RSS and I've been proved wrong by the podcasting phenomenom. So instead of ignoring the idea I'd like to see whether our users think this feature makes sense and if so how they expect us to resolve certain problems that would arise from implementing such a feature.

The first problem that comes up in implementing RSS reading lists based on OPML is what to do when a feed is pulled from the list by the owner of the feed list. Do we automatically delete the subscription? Do we prompt the user and if they decide to stay subscribed to the feed, move it out of the reading list? Another question is how to deal with feeds that the user is already subscribed to that are in the reading list?

What do you think?

November 20, 2005
@ 04:19 PM

Given the very negative beef that offshoring has in the U.S. technology industry I've found it interesting how favorable Microsoft employees are towards the practice. From reading the blogs of various Microsoft employees, it seems a number of different products now have part of their development team in Asia. Below are excerpts from a few of blog posts that highlight this trend.

In his post Some Kahuna Stuff, Omar Shahine of Hotmail Windows Live Mail writes

Finally, Aditya announced that he will be moving to Shanghai, to work in our MSN Shanghai Tech Center. We actually have a small team of really smart developers and testers over in Shanghai that are working on various aspects of Kahuna. For those of you that have Kahuna accounts, they are responsible for getting the MSN Calendar into the M3 release of Kahuna which is a project I worked on in my "spare time" while also working on Kahuna M3. I'll be going over to Shanghai in a few weeks to hang with them.

Aditya (who is one of the folks I manage) is one of the co-creaters of FireAnt, the technology that we built Kahuna on. While he'll be missed around the hallways of our campus, he'll be continuing to do some great stuff over in China. It's an amazing opportunity, and I'm really excited about growing and building a strong product development team there.

In his post Travel and Books Chris Anderson of Avalon Windows Presentation Foundation writes

Just got back from China. I spent last week visiting the Microsoft office in Beijing. The Avalon team is partnering with a group in China to produce some of the control and features in Avalon. It was great to get to meet all the folks over there. So, over the past 3 weeks I've spent 1 in LA, 1 in Seattle, and 1 in Beijing.

In the post IE Development in China, Christopher Vaughan of the Internet Explorer team writes

Tony Chor, Rob Franco, and myself are in Beijing today as we make our way to Kuala Lumpur for the Hack-In-The-Box conference. We have a great team over here in what we call the ATC (Advanced Technology Center). In the past 6 months they’ve gone from just starting to adding serious value to IE 7. The folks over here have already contributed to IE 7 by re-writing the select control which Chris Wilson alluded to in his post from the PDC. Other improvements that we’ll see come out of the ATC for IE include improving our bi-directional font support, font linking and fallback improvements, and increased accessibility support. Watch for more blog posts in the future from our teammates here in China covering the kinds of things they’re working on.

I think it's really cool that Microsoft employees are comfortable with the fact that it is a global company. I've seen some of the emotion and rhetoric around offshoring and U.S. companies get ugly which is unfortunate. Of course, Microsoft has a rather diverse and international work force which probably helps a lot.


Categories: Life in the B0rg Cube

November 20, 2005
@ 03:58 PM
In his post Dinner with Dan'l Lewin of Microsoft Dan Bricklin writes
I was invited to a little dinner tonight, along with John Landry and some others, with the visiting Dan'l Lewin of Microsoft...Earlier in the dinner we all introduced ourselves and Dan'l answered some questions about Live...Basically, he sounded like he couldn't say much and/or didn't know the answers and that we'll find out more in the spring (and is probably pretty happy the recording didn't come out...). He didn't seem keen on the idea of OWA-like (Outlook Web Access) versions of Word, Powerpoint, and Excel. Some of us let him know that's what we expected him to say but were surprised because it's what people want. (I had already told him some about wikiCalc.)

I can understand the Office guys aren't keen on building Web-based versions of their flagship apps but they are going to have get over it. They will eventually have to do it. The only question is whether they will lead, follow or get the hell out of the way.


Categories: Life in the B0rg Cube

I wrote my first gadget for yesterday; the MSN Spaces Photo Album Browser. Screenshot below

It didn't take that long but it was a frustrating experience trying to find documentation. I resorted to a combination of combing the Microsoft Gadgets forums, reading the source code of existing gadgets and reading the sparse documentation at We definitely have a lot of work to do in making this stuff more accessible to developers.

While working on it, I did get a fantastic tip for debugging Javascript from Matt. I didn't realize that I could use Visual Studio to debug any Javascript currently running in Internet Explorer in three steps. This is also explained in the IE blog post Scripting Debugging in Internet Explorer

  1. In Internet Explorer, select Tools->Internet Options…->Advanced->Disable Script Debugging
  2. In Visual Studio, select Debug->Processes
  3. In the Processes dialog, select the IE process you want to debug and then click the Attach button

That's it. Now you can set breakpoints and party like its 1999. Being able to debug script in this manner saved me hours of wasted time because it let me know that the object models exposed by and are different. Somebody definitely needs to hustle and get some documentation updated.


Categories: Web Development | Windows Live

November 19, 2005
@ 02:54 AM

Another Windows Live service shipped this week, From the site

Already own your own Internet domain name?

Have us host e-mail and IM for you in a domain you already own.

  • Create up to 20 e-mail accounts within your domain
  • Get a 250 MB inbox for each account*
  • Check your e-mail from any Web-enabled PC
  • Junk e-mail filter protection using Microsoft SmartScreen technology
  • Virus scanning and cleaning of e-mail
  • Seamless access with MSN Messenger, MSN Spaces, etc.
  • This is a pretty cool service and one I've been wanting for a while. Now I can provide email addresses for myself and others without actually having to host a mail server. Sign me up, baby. 


    Categories: Windows Live

    I found an interesting comment by someone named Dave in response to Shelley Powers's post Always in Alt. Dave wrote

    Microsoft made the bed they are now laying in.

    (1) As Shelley put so well, they abandoned an exceptionally large group of developers when they moved to .NET - I should know, I was one of them. (Don’t worry for me… I’ve moved onto greener, less proprietary pastures. Screw me once MS, shame on you. Screw me twice, shame on me.)

    (2) Worse yet, they are looking to do it again with the latest “Live” demo and supposedly-leaked emails about changing directions. This is one part of what MS has shown us alot of since 2000… they can’t stay in a single direction!

    (3) But the larger part of their problems is this insistent craving they have to make bold announcements of products that, well, NEVER see the light of day in a timely manner. Let’s compare….

    This year alone Apple announced three new iPods models, one brand-new Mac model, one new software suite, an upgrade to their other suite, delivered a major upgrade to their OS - two months ahead of time.

    Microsoft? Well, after underwhelming the media with some pre-beta Longhorn bits (about 2 years late I might add) and holding their PDC which finally showed us developers something of which _might_ be released in another 12 months, they finally delivered - about 18 months late - upgrades to MSSQL and VS.NET. Office got a decent upgrade but users have little compelling reason to spend money on it. There’s XBox of course. And then they delivered the worst demo anybody has ever seen about a change in directions.

    Where does this leave us developers? Very unhappy. Of course, as Scoble would put it - “real soon now” that will change. Of course, he said that 2 years ago too. In the meantime, I have to make a living. Can I do it using Microsoft Live products? Um, “real soon now”. How about using the - actually, quite excellent - new features of ASP.NET 2.0? Well, since they were promised back in 2004….

    LOL. I guess I would have needed to tell my kids _12 months ago_ that I’d put food on the table “real soon now” if I depended on such PR talk.

    PR talk…. now THAT is what is very wrong with Microsoft nowadays.

    There are a couple of themes here that should be addressed. The first is that Microsoft abandoned developers with its .NET strategy. In the move to managed code, I believe Microsoft could have done a better job of satisfying large bodies of its developer constituents such as VB6 users. The classic VB petition is probably the most visible manifestation of this feeling of abandonment by our customers. As Soma pointed out in the discussion around his post "Rumors of my (VB6) demise...", the leap the incompatibility between VB6 and Visual Basic.NET was not a decision taken lightly by the Microsoft Developer Division but was deemed necessary to advance the platform.

    The next point that Dave brings up is that the latest "Live" announcements are a radical change of direction that will cause disruption among our developer customers. I think this isn't right on two counts. First of all, the announcements aren't that radical a shift. A number of industry watchers such as Mary Jo Foley and Joe Wilcox have rightfully focused on this being more of a "sharpening of focus" for Microsoft than a radical new strategy. A significant number of the "Live" offerings are existing offerings that have been given new purpose and clearer goals. As time progresses, the Windows Live platform will unfold. This platform isn't a new set of developer tools and runtimes that will obsolete the .NET framework. That would suck. Instead these are APIs built around the Windows Live offerings and more that will give developers more opportunities to build interesting applications that delight users. A taste of this platform is at and we will be announcing more details in the coming months. 

    Dave's final point is that Microsoft is fond of announcing stuff years before it is ready. That is true and as a Microsoft employee I hate it a lot. I was talking to Brian Arbogast about this on Monday, and he agreed that we should endeavor to only announce things that people can use right away or can shortly thereafter. This is the philosophy around  

    There definitely is a lot of confusion out there about Microsoft's "Live" strategy and exactly what the "supposedly-leaked memos" mean. Now that Ray Ozzie has started back blogging, I assume he'll be taking a personal role in clarifying what his "Live" strategy means to Microsoft, its partners and its customers. I've subscribed to his blog. Have you?


    Categories: Windows Live

    November 16, 2005
    @ 11:45 PM

    I finally got to try out Google Base and it does seem to be an interesting experience. It reminds me a lot of Of course, it's missing key functionality like web feeds and a proper API, but if I was told to build the next version of it would probably look a bit like Google Base. The three key improvements to being

    1. Supporting more item types beyond "favorite link". This means supporting metadata fields beyond title, link and description.
    2. Allowing users to define their own fields
    3. Adding  much better search capabilities
    This definitely looks like an experiment by Google to see what people do with the service which might explain it's unpolished look. It's not clear how people will end up using it but I'm sure they will since its the latest new thing from Google.


    Categories: Web Development

    November 15, 2005
    @ 04:03 PM

    I rarely repost comments I made in other blogs but this is one of those times. In his post I gave Douglas Englebart a mouse and a book Robert Scoble writes

    It all started earlier this afternoon when Buzz Bruggeman asked me in an email “want to have dinner with Douglas Englebart?”

    First of all, if you don’t know who Douglas Englebart is you better do some reading. He invented the mouse and many of the concepts that you are now using to read my words. And he did that 40 years ago. Yes, he was that far ahead.
    Some key things stuck with me.

    1) Doug is a frustrated inventor. He was frustrated over and over again during his career by people who just didn’t get his ideas. 2) He says he has many ideas that he hasn’t shared yet. We talked about the way the system could change from how it sees what you’re paying attention to, for instance. 3) He repeated for us the creation of the mouse. Said they still don’t know who came up with the name “mouse.” That was the part of the dinner I filmed. 4) He challenged the business people at the table (specifically looking at Andy and me) to come up with a way to increase the speed that innovations get used. He didn’t say it, but his eyes told me that taking 25 years for the world to get the mouse was too long and his career would have been a lot more interesting if people could have gotten his ideas quicker. I told him that ideas move around the world a lot faster now due to blogs and video (imagine trying to explain what Halo 2 was going to look like if all you had to describe it was ASCII text).

    The most interesting writing I have seen on the adoption of ideas is Malcolm Gladwell's Tipping Point. I read it this summer as part of my excercise in figuring out why MySpace was so successful and the book was full of insight and interesting examples of idea propagation. If  Doug hasn't read it, I'd suggest that he read it.

    I agree that it takes too long for innovations to make it into the mainstream. Ethernet, SQL databases, and object oriented languages running on garbage collected VMs, are all two or three decades old but only started really affecting the mainstream in the last decade. AJAX which is all the rage this year was invented last century. Dave Winer first started talking about payloads for RSS in 2001 but podcasting only took off over the last year.

    We are closing the gap from innovation to adoption but it definitely could be better. I agree with Robert that blogs and other forms of mass communication being available to the general public will only accelerate this trend.


    Categories: Technology

    November 14, 2005
    @ 06:16 PM

    Due to Windows Live, a bunch of us at MSN (the Windows Live division?) have been inundiated with lots of internal marketing and presentations around branding. One thing that this has convinced me of is that we (Microsoft) are totally inept when it comes to branding. The fact that till today nobody can quite answer What is .NET? (a managed runtime? server software? web services? all of the above?) is a testament to our generally cluelessness in this area. I sincerely hope the same thing doesn't happen with "Live" but only time will tell.

    On a related note, for some reason I've had a couple of idle lunchtime conversations with different people on what they think about XBox. Somewhat surprisingly to me, many employees at Microsoft are quick to deride MSN for being a "money losing division" even though we are now profitable but yet in the same breath have nothing but praise for XBox which is billions of dollars in the red. When I've probed for reasons for this disconnect, the answer has been usually one of either (i) it was a "big bet" to get Microsoft in the living room or (ii) it adds something cool to the Microsoft brand. The latter is what I find interesting. Since people started mentioning this I've started paying attention to mentions of Microsoft in XBox ads and websites. 

    What I've noticed is that there is little mention of Microsoft when it comes to XBox. If you visit, you have to scroll down before you see a mention of Microsoft and even then it's in the small print. TV spots for XBox 360 such as Jump In and Water Balloons don't mention Microsoft at all. Why not? My pet theory is that the guys behind XBox know the truth. XBox is cool. Microsoft is not. Thus mentioning Microsoft in XBox ads would actually taint their brand. Of course, if I'm right there goes the theory of a bunch of my coworkers about XBox boosting the "cool factor" of the Microsoft brand.


    Categories: Life in the B0rg Cube