A few months ago I wrote a blog post entitled What Blog Posting APIs are supported by MSN Spaces? which explained the various options we saw in providing an API that would allow desktop tools and web applications interact with MSN Spaces programmatically. Since I wrote that post I've had a number of people inquire about when we'd provide an API and what form the API will take.

Our current plan is to provide an implementation of the MetaWeblog API with some methods from the Blogger API while using HTTPS/SSL for security. These APIs are widely supported by various weblog applications and already have a vibrant developer ecosystem around them. The API will enable people to create, edit and delete posts on the blog in their space. One of our goals is to ensure that bloggers who are already using blog posting tools such Blogjet or w.bloggar can use them to interact with MSN Spaces when we launch the API without having to upgrade or switch clients. Similarly web sites which allow users to post to their blogs such as Flickr and Zoto should be able to support our API without making significant changes.

The launch date of the API is yet to be determined but will be in the near future. In the meantime, we'd like to get developers of blog posting tools and web applications that would like to integrate with MSN Spaces into a beta program to test our implementation of these APIs. If you are a developer of a blog posting tool or web application that wants to use our API and don't mind signing an NDA then you should send me mail at dareoATmicrosoftDOTcom to get into our beta program.  

If you are interested in us providing other APIs, such as allowing programmatic access to the photo albums or the various lists on a space, I'd also like to hear from you. Please send me mail about your scenario and what platform/device your application will be running on.


 

Categories: MSN

My friend Kitty has been working on a bunch of cool projects at work over the past year. She was instrumental in the recently announced PC-to-Mobile Instant Messaging Between MSN Messenger and Vodafone Messenger. Her most recent project as part of our team has been in working with other folks at MSN to get http://rockstar.msn.com/ launched.

The details are in the recent press release MSN Launches Official Web Site for Mark Burnett Productions’ “Rock Star: INXS,” Giving Viewers New Ways to Engage With Reality Show which is excerpted below

MSN is giving fans new ways to take part in the reality-show craze by launching http://rockstar.msn.com , the official Web site for Mark Burnett Productions’ "Rock Star: INXS." The show, which aims to find a new lead singer for the multiplatinum rock band INXS, premieres July 11 on the CBS Television Network in the U.S... Rockstar.msn.com extends and enhances “Rock Star: INXS” by giving fans unique opportunities to connect with the contestants and with one another
...
Beginning July 11, viewers can do the following:

  • Vote for their favorite contestants through http://rockstar.msn.com and MSN® Messenger, which allows people to vote while chatting with friends about the show in real time. Wireless voting also will be available.

  • Watch exclusive "Rock Star: INXS" video not seen on TV, available only through MSN Video.

  • Watch streaming video of contestant performances on MSN Video to relive the highlights and the lowlights before casting a vote.

  • Purchase the contestant performances on MSN Music. Not only can fans download and own their favorite musical moments from the show, downloads of the original artists’ versions of contestant performance songs also will be available for purchase on MSN Music.

  • Read contestant blogs on MSN Spaces that tell fans about everything from their backgrounds to what it's really like onstage, offstage and backstage.

  • Chat with other "Rock Star: INXS" fans through MSN Messenger and download special "Rock Star: INXS" emoticons, dynamic display pictures, backgrounds and winks to spice up their instant messaging (IM) conversations.

  • Play rock-and-roll trivia games created by Cranium Inc. for MSN Encarta®.

  • Sign up for MSN Alerts and a weekly newsletter that give fans the scoop on everything related to "Rock Star: INXS."

  • View weekly "Rock Star" photo galleries and rock-and-roll fashion features.

  • Buy merchandise featured on "Rock Star: INXS" through MSN Shopping.

  • Get weekly fashion tips from the "Rock Star: INXS" official show stylist.

I've been watching a lot more reality TV than I care to admit so it is fun to see that lots of us at MSN are also into this guilty pleasure. Now if only we'd come up with an MSN spin on Being Bobby Brown then my reality TV fix would be complete.


 

Categories: MSN

Since Sam Ruby asked, I feel I must oblige. There have been a bunch of posts in Sam's blog pointing out that the RSS parser used by Apple's iTunes handles invalid RSS feeds which in turn encourages content producers to publish invalid RSS feeds which only work in iTunes.

In the post entitled Insensitive iTunes Sam wrote 

Mark Pilgrim: it appears that iTunes uses a real, draconian, namespace-aware XML parser... except that namespaces are case-insensitive.

What’s worse, is that the high profile Disney The Gears Behind the Ears feed appears to be depending on this functionality, as well as on other non- standard element definitions.

There are a couple of more issues with the iTunes parser mentioned by Mark Pilgrim in the comments to that post. The reason this is actually an issue at all is spelled out by Mark in another response to Sam's post where he wrote

Am I the only one who doesn’t think this is such a big deal?

Apple is an 800-lb. gorilla in this space (at least until Microsoft releases an RSS-enabled IE in Longhorn).  iTunes is to podcasting as Internet Explorer is to HTML.  RSS interoperability, at least as far as podcasting goes, now means “works with iTunes.”  Thousands of people and companies will begin making podcasts that “work with iTunes,” but unintentionally rely on iTunes quirks (e.g. Disney’s incorrect namespace).  This in turn will affect every developer who wants to consume RSS feeds, and who will be required to emulate all the quirks of iTunes to remain competitive.

Apple has effectively redefined the entire structure of an RSS feed, added multiple core RSS elements, made all RSS elements case-insensitive, made XML namespaces case-insensitive, created a new date format, made several previously required attributes optional, and created a morass of undocumented and poorly-documented extensions... to what was already a pretty messy format to begin with.

Case in point: my Universal Feed Parser, which already has 2751 test cases and is so incredibly liberal that it can parse an ill-formed EBCDIC-encoded RDF feed with regular expressions, will require hundreds of new test cases to cover all the schlock that iTunes accepts.  And I’m one of the lucky ones.

The supreme irony of all this is that I remember Dave Hyatt (Apple Safari developer) bitching and moaning about all the work he had to do to make Safari emulate the buggy, undocumented behavior of Internet Explorer, and how the world would be so much better if only everything used XML and everyone implemented draconian error handling.  Never mind the fact that the vast majority of problems that iTunes creates have nothing to do with XML well-formedness; iTunes doesn’t even require well-formed XML in the first place.  Utopia, it seems, will have to wait another decade.

Just like the browser wars I suspect this is going to get a lot worse before it gets any better. Hopefully the folks working on RSS at Apple [and at Microsoft] are paying attention to this discussion and will do the right thing.

The main problem is that every RSS reader is "liberal" to some degree. The problem that causes is that aggregator developers end up being asked to be bug compatible with some other popular RSS reader. I get complaints that RSS Bandit is more strict than RSS readers like Sharpreader all the time but often resist making changes to copy every quirk in other RSS readers. Once an RSS reader rises to dominance, the definition of what it means to be a valid RSS feed won't be what is in the spec but will be whatever that reader supports. This is what often happens in the software industry from web browsers to C compilers. It's great to see Sam fighting to prevent this from happening in the RSS space and his Feed Validator has gone a long way in preventing this from happening. I can only hope that the iTunes folks realize that it is best for everyone if they favor spec compliance to being liberal in what they receive.


 

Yesterday while browsing comments on Slashdot I found a link to an article at LinuxToday on Tim O'Reilly's Open Letter: Rethinking the One-Click Patent which contains the following excerpt from a posting by Tim O'Reilly on the Amazon 1-Click patent controversy

People in many areas of commerce, not just on the Web but also TV and radio (as evidenced by some of our prior art submissions), have put a lot of thought into making the shopping experience quicker and easier. And yet none of these folks really managed to simplify it to the same degree that Amazon did with 1-Click. In the end, we did not have a winner, and it doesn't look as if the prior art submitted can "knock out" the 1-Click patent...So I want to offer Jeff something of an apology. At the same time, at the risk of appearing a "sore loser," I want to reiterate that my fundamental issue with Amazon was never the specific claims of the 1-Click patent. Even if Amazon did create a genuine e-commerce innovation, I maintain that it was still a mistake for them to patent it.

I remember the hubbub on Slashdot about Amazon's 1-Click patent and Tim O'Reilly's bounty for prior art but don't remember this ever getting posted. So it seems that despite all the claims of "obviousness" from the Slashdot crowd, no prior art could be found. I guess it is true that all innovations look obvious in hindsight.

Another interesting data point is this post on Slashdot about the various patent lawsuits Amazon is currently fighting. Lots of people like to polarize the debate about software patents but in truth the situation isn't as cut and dried as folks on either side of the debate like to make it seem.


 

It's been hard to escape coverage of the Live 8 concerts since that's all MTV showed over the weekend and the news channels have been covering it in the mornings while I work out. Events like Live 8 always make me end up feeling ambivalent. One the one hand it is great to see people trying to help with the problems people are facing in Africa and on the other it perpetuates the notion that Africa is the world's charity case. After some consideration, I definitely think my feelings about the concerts are mostly positive. 

I've seen some blog posts complain that not enough African artists were included in the concerts and others criticising the concerts by asking what good will a rock concert end up influencing the members of the G8.

My thoughts are similar to those David Weinberger expressed in his post Live 8: Cause or fashion statement? where he wrote

For me it comes down to this: I can't imagine that people going to a big rock concert will change the mind of any G8 leader, but if Live 8 makes debt relief trendy, I'm all for it. After all, trendiness seemed to have an effect on ending Apartheid in the 80s.

In a similar vein I echo the sentiment's from the post in Brian's Black Star Journal entitled Development issues and celebrities where he wrote  

I remember back when Princess Diana got involved in the landmine question. I wondered how those ordinary activists felt. They worked on the issue for years to little effect but then this fancy royal flies in and suddenly it's the cause célèbre du jour.

But on the other hand, at the end of the day, the Ottawa treaty banning landmines was signed. Most countries (not including the US) do not use landmines anymore. Is it really important who gets credit? As an activist, is it about you or the cause? Do you think any anti-landmine activist would say, "I think we should revoke the Ottawa treaty because it wouldn't have passed without star power"? I hope not. If so, they are not real activists.

Despite these sentiments I agree with the economists and aid groups cited in variousnews storiesabout Live 8 that at the end of the day what African nations need more than aid and debt cancellation is better governance and to participate more fully in international trade. Better governance simply cannot be overemphasized. In certain nations African governments have really, really screwed things up. For many nations, without regime change, giving more aid is just sending in good money after bad.

Unfortunately, there are no easy answers.


 

Categories: Ramblings

If you like World of Warcraft and cute asian girls, and cheesy commercials, you will love this World of Warcraft Coke commercial from China.

Via tokyo-genki.com.  


 

Over the weekend, while watching a Game video I started thinking of various beefs across Hip Hop history and came up with a mental list of my favorite diss tracks. Below is my top 5 list in no particular order.

  1. Wit Dre Day by Snoop Doggy Dogg & Dr. Dre - dissing Tim Dog, Luke & Eazy E
  2. Mama Said Knock You Out by LL Cool J - dissing Kool Moe Dee
  3. Backdown by 50 Cent - dissing Ja Rule (honorable mention to the entire Invasion part II mix tape)
  4. Ether by Nas - dissing Jay-Z
  5. Stomp by Young Buck, Ludacris & T.I. - T.I. and Ludacris dissing each other

The last entry isn't as good as the others but the fact that both rappers diss each other on the same track is what propelled it onto the list. What does your list look like?


 

Categories: Music

Last week was the O'Reilly Where 2.0 Conference where a number of players in the online mapping space including Yahoo!, Google and MSN announced API plans for their various services.

The Yahoo! Maps Web Services provides a way display a map on the Yahoo! website populated with locations specified by the caller. To specify the locations on the map, one uses an RSS feed where each item in the feed corresponds to a location on the map and its geographical address is specified using a combination of geoRSS extensions and proprietary Yahoo! extensions. Instead of allowing one to POST the RSS feed to the service, the Yahoo! Maps API requires that a URL to the RSS feed is provided instead. This prevents the API from being used by desktop applications easily or by users who don't have access to a web server where they can place XML files online. Clicking on the following URL should show the API in action; http://api.maps.yahoo.com/Maps/V1/AnnotatedMaps?appid=YahooDemo&xmlsrc=http://developer.yahoo.net/maps/sample.xml 

The Google Maps API allows one to embed Google Maps on specific web pages. To include a map on one's web page, a Javascript file which exposes a complete object model for Google Maps should be included on the target webpage. The Javascript include is of the form

<script src="http://maps.google.com/maps?file=api&v=1&key=abcdefg" type="text/javascript"></script>

file=api indicates that the file being returned is the Google API file, v=1 indicates that version 1 of the API is being requested and key=abcdefg is used to specify the developer key being used to access the service.

Once the script is included, developers can write code such as

var map = new GMap(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);

which results in an effect similar to those at controls.html being created on the Web page.

It's interesting to see how radically different the approaches taken by Yahoo! and Google to  provide what is basically the same functionality. The Yahoo! approach seems to me to be more declarative and straightforward than Google's approach. However, Google's approach is definitely a lot more flexible.

As for MSN, we announced that Virtual Earth will provide an API that will be free for non-commercial use that utilizes both URLs and a JScript Map control. Some of the highlights of the conference presentation are in Chandu Thota's post Where 2.0 and Virtual Earth.


 

Categories: MSN | XML Web Services

The MSN Search team recently silently released http://addins.msn.com which among other things provides the API documentation for Windows Desktop Search that ships with the MSN Search Toolbar. The lowdown on what the API is good for is right at the beginning and is excerpted below

Which Extension Technology to Use?

There are two basic methods for creating add-ins for Desktop Search.

1.     Adding new file types by creating IFilters

  • Extend Desktop Search with an IFilter add-in that knows how to “crack” the contents of a new file type in order to index its text and metadata.
  • To do this, you need to build and register an object supporting the IFilter interface.
  • You can add file-specific icons or context-menu handlers by following this documentation on extending the Windows Explorer file types by creating IContextMenu and IExtractIcon interfaces.
2.     Adding a new store by creating protocol handlers

  • Extend Desktop Search so that it can index a new data store, such as the database of an e-mail application.
  • To do this, you need to build a protocol handler object supporting the ISearchProtocol interface, along with an IUrlAccessor to pull the items. If the contents of the data store are file types not already indexed by Desktop Search, you may also need to implement one or more IFilters..
  • To add icons or context-menu handlers, you need to implement portions of an IShellFolder.

You can also find custom IFilters at http://addins.msn.com including ones for PDF, ZIP, CHM and Mozilla Thunderbird mail formats. If only there were C# wrappers for all the gnarly COM interfaces I'd provide one for indexing and searching the cache file format used by RSS Bandit. Then people would be able to search their feeds directly from desktop search. That would be kinda hot. 


 

Categories: MSN

It seems both Google and Yahoo! provided interesting news on the personalized search front recently.

Yahoo! MyWeb 2.0 seems to merge the functionality of del.icio.us with the power of Yahoo! search. I can now add tags to my Yahoo! bookmarks, view cached versions of my bookmarked pages and perform searches restricted to the sites in my bookmark list. Even cooler is that I can share my bookmarks with members of my contact list or just make them public. The search feature also allows one to search sites restricted to those shared by others. All they need to do is provide an API and add RSS feeds for this to be a del.icio.us killer.

Google Personalized Search takes a different tack in personalizing search results. Google's approach involves tracking your search history and tracking what search results you cliked on. Then when next you perform searches, Google Personalized Search brings certain results closer to the top based on your search history or previous click behavior.

As for this week's news about MSN Search? Well you can catch what our CEO had to say about us in the ZDNet article Ballmer confident, but admits failings. We definitely have a lot of catching up to do but I don't think the race is over yet.


 

Categories: Social Software | Technology