It looks like I didn't get an Extreme XML column out last month. Work's been hectic but I think I should be able to start on a column by the end of the week and get it done before the end of the month. I have a couple of ideas I'd like to write about but as usual I'm curious as to what folks would be interested in reading about. Below are three article ideas in order of preference. 

  1. Using Javascript, XMLHttpRequest and RSS to create an MSN Spaces photo album browser: The RSS feed for a space on MSN Spaces contains information about the most recent updates to a user's blog, photo album and lists. RSS items containing lists are indicated by using the msn:type element with the value "photoalbum". It is possible to build a photo album browser for various spaces by using a combination of Javascript for dynamic display and XMLHttpRequest for consuming the RSS feed. Of course, my code sample will be nowhere near as cool as the Flickr related tag browser.

  2. Fun with operator overloading and XML: This would be a follow up piece to my Overview of Cω article. This article explores how one could simulate adding XML specific language extensions by overloading various operators on the System.Xml.XmlNode class.

  3. Processing XML in the Real World: 10 Things To Worry About When Processing RSS feeds on the Web: This will be an attempt to distill the various things I've learned over the 2 years I've been working on RSS Bandit. It will cover things like how to properly use the System.Xml.XmlReader class for processing RSS feeds in a streaming fashion, bandwidth saving tips from GZip encoding to sending If-Modified-Since/If-None-Match headers in the request, dealing with proxy servers and authentication.

Which ones would you like to see and/or what is your order of preference?


 

Categories: XML

Lenn Pryor who until quite recently was the Director of Platform Evangelism at Microsoft has left the company for greener pastures. If you don't know of Lenn you should read the notes on Lenn Pryor from Robert Scoble's book blog. Lenn was the guy who came up with Channel 9 and was instrumental in Microsoft hiring Robert Scoble. Particularly interesting is the following description from Robert Scoble's book blog about Lenn's day job

Much of Pryor's job is to serve as a bridge between Scoble and other company elements, such as PR where he has worked to help each to see the other's value and respect each other's turf.

So one might wonder why a guy who was probably been most responsible for the increased corporate transparency at Microsoft would want to leave the company. The answer is in his blog post Goodbye Microsoft, Hello Skype where he writes

I have a lot to say about both companies right now. Microsoft lost me for many reasons, Skype gained me for many reasons. I will let you draw your own conclusions rather than disparage my Microsoft colleagues or over hype my new colleagues and company. I don't believe in writing diatribes and manifestos when moving on from a job so I will spare you the soapboxing. Microsoft has its challenges, we all know what they are, they are more than apparent these days. Skype has its opportunties we all know what they are, who wouldn't like to see the communication and collaboration technologies in their lives get much much smarter and cheaper?

I decided to swap problem sets from one that I am not passionate about any more to one that I AM deeply passionate about. I just couldn't go on being an evangelist for a gospel that I don't believe I can sing. I am returning to focus on what I enjoy most, building amazing things that make people happy, change lives, and make money. In this case Skype was a better place for me to do this and one that shares my core values and beliefs in how the future of both software and business will unfold.

I know lots of people at Microsoft who have voiced the same sentiments that Lenn has. Some like the Mini-Microsoft blogger are anonymous voices in the wilderness begging for change, some like Mark Lucovsky [and Lenn Pryor] leave for other companies that they feel can still make a difference while others have tried to find somewhere at Microsoft that isn't overwhelmed by the current malaise that has smothered main campus. I'd count myself in the latter camp.

At least once a week I want to post a blog entry about how much my job rocks. Unfortunately I haven't found a way to do this that doesn't paint a negative picture of other parts of the company. Our VPs get it and are very open to communication, the product teams have a vision of what they want to build and they want to build it as quickly as possible, and we literally have millions of happy users who are excited about our products. In the places where we are lagging, we have lots of efforts under way to reverse the trend.

I didn't get that feeling when I worked on main campus nor do I see it the few times a month I have to go down there to meet with various folks. However unlike the Mini-Microsoft blogger I don't think Microsoft is Better Off Without Ballmer but I do think something should be done about the company's current funk and it definitely should involve some executive heads rolling.

I hope it doesn't take the stock hitting $10 before some action is taken.


 

Categories: Life in the B0rg Cube

My mom is a journalist so I tend to take the responsibilities of the media very seriously. Unfortunately, I live in the United States where it seems the American media does not. An excellent description of the malaise that has spread across the American media landscape can be found in Laurie Garrett's memo to Newsday colleagues upon her resignation. She wrote

The deterioration we experienced at Newsday was hardly unique. All across America news organizations have been devoured by massive corporations, and allegiance to stockholders, the drive for higher share prices, and push for larger dividend returns trumps everything that the grunts in the newsrooms consider their missions. Long gone are the days of fast-talking, whiskey-swilling Murray Kempton peers eloquently filling columns with daily dish on government scandals, mobsters and police corruption. The sort of in-your-face challenge that the Fourth Estate once posed for politicians has been replaced by mud-slinging, lies and, where it ought not be, timidity. When I started out in journalism the newsrooms were still full of old guys with blue collar backgrounds who got genuinely indignant when the Governor lied or somebody turned off the heat on a poor person's apartment in mid-January. They cussed and yelled their ways through the day, took an occasional sly snort from a bottle in the bottom drawer of their desk and bit into news stories like packs of wild dogs, never letting go until they'd found and told the truth. If they hadn't been reporters most of those guys would have been cops or firefighters. It was just that way.

Now the blue collar has been fully replaced by white ones in America's newsrooms, everybody has college degrees. The "His Girl Friday" romance of the newshound is gone. All too many journalists seem to mistake scandal mongering for tenacious investigation, and far too many aspire to make themselves the story. When I think back to the old fellows who were retiring when I first arrived at Newsday — guys (almost all of them were guys) who had cop brothers and fathers working union jobs — I suspect most of them would be disgusted by what passes today for journalism. Theirs was not a perfect world — too white, too male, seen through a haze of cigarette smoke and Scotch — but it was an honest one rooted in mid-20th Century American working class values.

Honesty and tenacity (and for that matter, the working class) seem to have taken backseats to the sort of "snappy news", sensationalism, scandal-for-the-sake of scandal crap that sells. This is not a uniquely Tribune or even newspaper industry problem: this is true from the Atlanta mixing rooms of CNN to Sulzberger's offices in Times Square. Profits: that's what it's all about now. But you just can't realize annual profit returns of more than 30 percent by methodically laying out the truth in a dignified, accessible manner. And it's damned tough to find that truth every day with a mere skeleton crew of reporters and editors.

This is terrible for democracy. I have been in 47 states of the USA since 9/11, and I can attest to the horrible impact the deterioration of journalism has had on the national psyche. I have found America a place of great and confused fearfulness, in which cynically placed bits of misinformation (e.g. Cheney's, "If John Kerry had been President during the Cold War we would have had thermonuclear war.") fall on ears that absorb all, without filtration or fact-checking. Leading journalists have tried to defend their mission, pointing to the paucity of accurate, edited coverage found in blogs, internet sites, Fox-TV and talk radio. They argue that good old-fashioned newspaper editing is the key to providing America with credible information, forming the basis for wise voting and enlightened governance. But their claims have been undermined by Jayson Blair's blatant fabrications, Judy Miller's bogus weapons of mass destruction coverage, the media's inaccurate and inappropriate convictions of Wen Ho Lee, Richard Jewell and Steven Hatfill, CBS' failure to smell a con job regarding Bush's Texas Air Guard career and, sadly, so on.

What does it mean when even journalists consider comedian John [sic] -- "This is a fake news show, People!" -- Stewart one of the most reliable sources of "news"?

I'm surprised I haven't seen this letter floating around the blogosphere. Then again I don't read political blogs so for all I know this is last month's news. I suggest reading the entire letter, it is quite sobbering.


 

Evan Williams recently met with Jim Allchin and wrote about in his blog post Dinner with Jim Allchin. Evan writes

One of Jim's repeated statements was that he wanted to bring "this stuff" to the masses. I asked for clarification because, in a lot of Microsoft's talk, they speak of RSS and blogging as the same thing. He agreed they weren't the same thing, and it seemed to be RSS he was talking about implementing in a variety of ways throughout Windows (e.g., built-in readers, automatic feed generation from a variety of lists...). While Microsoft does have a blogging tool, that's MSN—not Jim's department.

We discussed, briefly, how cool it would be if Windows had, say, the Atom API built in—and then that, it already would had the Atom API been built on WebDAV. Hmmm...I've heard that before.

It seemed pretty clear to me that it is not in Allchin's edict to create web services that bridge the gap between the desktop and the web—which, to me, seems like the future of computing (not to mention, the real potential power play against Google, et al). His job is to create another Windows. They will make more plumbing for others to plug in such services—and I assume it will be within MSN's edicts to do so. But they didn't do much (nor has anyone else) to take advantage even of the stuff that's in XP (such as Save to Web via WebDAV), to Allchin's dismay, it seemed.

I have seen a lot of interest across Microsoft for bringing RSS to the masses and all of us working on MSN Spaces definitely do want to bring blogging to everyone. There are definitely  cool things coming up in the next year or two.

As to whether MSN takes advantage of the various WebDAV related features of Windows XP? I suggest taking a look at the article on Publishing Web Site Content with Windows XP specifically at the section entitled Publishing to Remote Locations Using WebDAV. Not only do we support the WebDAV functionality in Windows XP in our properties such as MSN Groups but since there are so many Windows XP users out there, we don't dare change it without risking causing a negative user experience for a lot of people.

Guess who has to deal with the WebDAV legacy as part of his day job? :)


 

Categories: Life in the B0rg Cube | MSN

April 15, 2005
@ 07:39 PM

I've been bemused by a number of posts attacking Volvo by Henry Copeland who runs BlogAds.com. In his recent posts, such as Volvo buys safety, gets dreck and Volvo Whiplash, Henry Copeland attacks Volvo for sponsoring MSN Spaces where most blogs have a small readership as opposed to paying him to put ads on the weblogs of "A-List" bloggers such as Dave Winer and Andrew Sullivan which have a larger number of readers than the average MSN Spaces blog.

I could write an entire essay refuting this type of thinking but Chris Anderson has already done so in his article The Long Tail. It is a very insightful look at how to view audiences for  content and the fallacy of chasing after the big hits or popular content to garner success in the market place.


 

Categories: MSN

I've recently ben thinking about the problems facing search and navigation systems that depend on metadata applied to content provided by the creator of the content. This includes systems like Technorati Tags which searches the <category> elements in various RSS feeds and folksonomies like del.icio.us which searches tags applied to links submitted by users.

A few months ago I wrote a post entitled Technorati Tags: Why Do Bad Ideas Keep Resurfacing? which pointed out that Technorati Tags had the same problems that had plagued previous metadata self-annotation schemes on the Web such as HTML META tags. The main problem being that People Lie. Since then I've seen a number of complaints from developers of search engines that depend on RSS metadata.

In a comment to a post entitled Blogspot Spam in Matthew Mullenweg's weblog, Bob Wyman of PubSub.com writes

A very high percentage of the spam blogs that we process at PubSub.com also come from blogspot. We’ve got more serious “problems” in Japan and China, however, for the English language, blogspot is pretty much “spamspot.” It is, as always, disappointing to see people abuse a good and free service like that offered by Google/Blogspot in such a way.

In a post entitled Turning Blogspot Off Scott Johnson of Feedster wrote

All Blogspot blogs right now are included in every Feedster search by default. And now, due to the massive problems with spam on Blogspot, we're actually at the point of saying "Why don't we make searching Blogspot optional for all Feedster users". What's going on is that spammers have learned how to massively exploit Blogspot -- to the point where at times 90% of the blog traffic we get from Blogspot is spam.

Now that's bad. Actually this spam issue just plain sucks. And its starting to ruin the user experience that people have with Feedster.

The main reason these spam blogs haven't started affecting the Technorati Tags feature is that Blogspot doesn't support categories. However it is clear that the same problems search engines faced when they decided to trust HTML metadata are beginning to show up when it comes to searching RSS metadata. This is one place where established search engines would have a leg up on upstarts like Feedster and PubSub if they got into the RSS search market since they've already had to adapt to all sorts of 'search engine optimization' tricks.

On a related note, combining the above information about the high number of spam blogs on Google's Blogspot service with the recent article Bloggers Pitch Fits Over Glitches which among other things states

In fact, enter "Blogger sucks" in Google and you get 720,000 results, with most of the entries on the first few pages (read: the most popular) dedicated to these exasperating tech snafus. It can make for some pretty ugly reading. Imagine what they might say if they actually paid for the service?

But if you look at Blogger's status page, which lists service outages, you can see why they are so mad.

It seems that Doc Searles may have been onto something about Google quiting innovating in Blogger.  


 

My friend Derek, who's the dev lead for MSXML (the XML toolkit used by practically every Microsoft application from Office to Internet Explorer), has a blog post entitled XML use in the browser where he writes

C|Net has an article on what people have started calling AJAX. 'A'synchronous JavaScript and Xml. I have seen people using MSXML to build these kinds of web-apps for years, but only recently have people really pulled it all together enough, such as GMail or Outlook Web-Access (OWA). In fact, MSXML's much copied XMLHTTP (a.k.a. IXMLHttpRequest) (Copied by Apple and Mozilla/Firefox) was actually created basically to support the first implementation of OWA.

I've been thinking about what our customers want in future versions of MSXML. What kind of new functionality would enable easier/faster developement of new AJAX style web applications? XForms has some interesting ideas... I've been thinking about what we might add to MSXML to make it easier to develop rich DHtml applications. XForms is an interesting source of ideas, but I worry that it removes too much control. I don't think you could build GMail on XForms, for example.

The most obvious idea, would be to add some rich data-binding. Msxml already has some _very_ limited XML data-binding support. I have not looked much into how OWA or GMail work, but I bet that a significant part of the client-side jscript is code to regenerate the UI from the XML data behind the current page. Anyone who has used ASP/PHP/etc is used to the idea of some sort of loop to generate HTML from some data. What if the browser knew how to do that for you? And knew how to push back changes from editable controls? You can do that today with ADO.

Any other ideas? For those of you playing with 'AJAX' style design. What are the pain points? (Beside browser compatibility... )

If you are building applications that use XML in the browser and would like to influence the XML framework that will be used by future versions of Microsoft applications from Microsoft Office to Internet Explorer then you should go over to Derek's blog and let him know what you think.


 

Categories: XML

A recent favorable review of RSS Bandit on About.com pointed out a missing feature that I've seen more and more of our users asking for. The bottom line of the review reads

RSS Bandit is a nice and very capable feed reader that lets you browse news in an organized fashion. Its flexibility, virtual folders and synchronization abilities are great, but it would be even greater if it integrated with Bloglines and NewsGator Online, too.

Although we have various options for using RSS Bandit from multiple computers, many users find them inaccessible because they don't have access to an FTP server or a WebDAV server. Also in certain cases, one may not want to install RSS Bandit on a machine that was being used temporarily but instead use a Web application which could then be synchronized with RSS Bandit later on.

The main reason I didn't include syncing to Bloglines in the Wolverine release is that the Bloglines sync API is not very rich. RSS Bandit users can flag posts, delete them, mark read posts as unread and so on. None of this functionality is supported by the Bloglines sync API. Similarly users cannot add or delete feeds using the Bloglines sync API. This means that there really isn't any way I could fully synchronize the state of an RSS Bandit instance with a person's Bloglines subscriptions. It seems the API was designed with the assumption that the user would be using Bloglines as their primary RSS reader not the other way around.

The way FeedDemon got around this problem was to create a separate channel group for Bloglines subscriptions which has limited functionality compared to other channel groups but is synchronized with the user's Bloglines subscriptions. This looks like the only reasonable approach as opposed to waiting indefinitely for the Bloglines sync API to develop more functionality.

The above argument also applies to syncing with the Newsgator Online service.

In the Nightcrawler release I'll ensure that we provide syncing to both Bloglines and Newsgator Online. However this will be via synchronized channel groups which won't be compatible with the existing synchronization mechanisms that use FTP and WebDAV today.


 

Categories: RSS Bandit

April 12, 2005
@ 05:21 PM

This morning I found an interesting article about the growth of blogging entitled The Blogging Geyser: Blogs Blast from 31.6 Million Today to Reach 53.4 Million by Year End. Below is an excerpt about various blogging services which I found interesting  

Perseus prepared a segmentation of the key blog hosts by analyzing the sites on two dimensions - momentum (new user accounts averaged over the life of the service) and longevity (length of time operational) - establishing four key segments: Leaders, Challengers, Upstarts and Niche Players.

The leaders (high momentum, long-time players) were BlogSpot, LiveJournal and Xanga, all launched in 1999. At the end of the first quarter of 2005, each had between 6.6 and 8.2 million accounts. The primary challenger (high momentum, new player) is MSN Spaces , which launched in North America in December 2004 and was closing in on 4.5 million accounts at the end of the first quarter .

Upstarts (moderate momentum, new players) included Six Apart's TypePad and Greatest Journal among others. Niche players demonstrated longevity but little momentum.

Blogging Is A Feature, Too

One of the newer aspects of blogging is that it's now an added feature being incorporated into other web applications. Social networking sites like the reinvented MySpace.com and teen sites like Bolt.com now offer blogging as a standard feature of their online accounts. Blogging appears to be used by just 4.7 percent of Bolt's 4.5 million accounts and by a somewhat greater percentage of MySpace.com's 12 million accounts. While neither service has been included in this study, they are testaments to the continued expansion and growth of web logs.

A lot of us working on MSN Spaces have been pretty humbled and impressed by how quickly the service has grown. During the beta period the service was acquiring users at the rate of about a million signups a month. When the site had about 4.5 million users we were seeing about 160,000 to a 180,000 updates a day which is about 4% of blogs being updated a day. These numbers compare quite favorably with LiveJournal's statistics which currently show they have 6.7 million blogs with 350,000 to 370,000 updates a day which is about 5% of blogs being updated a day. Given that LiveJournal is one of the most active and tight-knit blogging communities on the Web, it seems that MSN Spaces is definitely doing some things right.

Given that the service is now out of beta along with MSN Messenger coming out of beta I expect that its growth rate will increase over the next few months. It is pretty exciting to realize that the stuff I'm currently working on as part of my day job will directly affect millions of people. 

Totally...freaking...awesome.   

PS: A minor clarification to the article. Spaces actually launched in 14 languages and 26 markets worldwide last year, not just North America. 


 

Categories: MSN

April 12, 2005
@ 04:44 PM

This is primarily a bug fix release that fixes a couple of issues that weren't caught in beta testing for the previous release.

Download the installer from here. Differences between v1.3.0.26 and v1.3.0.29 below.

----

FEATURE: The 'Take over proxy settings from Internet Explorer' feature now supports proxy configuration scripts.

FEATURE: Traditional Chinese translation added.

FIXED: Application would crash on startup with the following error message; "ArgumentOutOfRangeException: Length cannot be less than zero"  

FIXED: Dates in the RFC 822 format not containing the seconds caused problems

FIXED: Search scope settings in search folders are lost after restart of the application

FIXED: A web search engine cannot be removed from the list of defined search engines

FIXED: Column layouts not synchronized during remote storage

FIXED: RSS 2.0 feeds with extension elements before the <rss> element could not be read

FIXED: HTTP Digest authentication was not supported for feeds

FIXED: Enable Alert Windows for New Items setting resets on remote feedlist download or on restart

FIXED: Feed Desktop Alerts now display the newest item(s) first

FIXED: Feeds with invalid value in the HTTP "Last-Modified" header could not be read.

FIXED: Application would crash with the following error message; "NullReferenceException caused in WinGuiMain.SaveUIConfiguration() at ThreadedListView.FeedColumnLayoutFromCurrentSettings()"


 

Categories: RSS Bandit