From the blog post Virtual Earth Team Launches Street-Side Drive-by we learn

The Virtual Earth team is pleased to launch a preview of a new feature we have been working on – interactive Street-side browsing. You can try it out at http://preview.local.live.com Street-side imagery allows you to drive around a city looking at the world around you as if you were in a car. But unlike the real world, you can stop your car anywhere you like and rotate your view around 360degrees. Currently we have street-side imagery for San Francisco and Seattle online, and we are planning to have many more cities added soon.

One of the most interesting features is to put yourself in ‘Street’ view map style. In this mode, all of the street-side images are pasted flat on the map to give you a very unique overview of an area. It takes some getting used to, but once you adjust to it you’ll find it provides a very compelling companion view for our Hybrid maps. Street view helps you orient yourself quickly in an area, while the street side views then show more detail presented as you would see it in the real-world.

This technology preview is just that – a means for us to get a feature we are working on in your hands to play with and provide feedback on, before it is ready for prime time integration into the Windows Live Local site.

Sweet.


 

Categories: Windows Live

The Window Live Messenger team has a blog post about the newest version of the Windows Live beta. My favorite new feature is described below

Live Contacts are Live! Click the button on the back of your contact card to enter in all your information (phone number, address, job, spouse , etc).

With your permission, friends can see your entered info on your contact card. Anytime you update it (new phone? new job? new wife? ) they'll see it.

Similarly, subscribe to get your friends' Live Contact information by clicking the backs of their contact cards.

Live Contacts is a rather cool feature that our team has been working on for a while. It will be integrated across a number of Windows Live properties and is already available in MSN Spaces.

PS: I have a dozen invites for the Windows Live Messenger beta. Send me an email at my work address if you want one.


 

Categories: Windows Live

February 28, 2006
@ 06:57 PM

Recently I've been thinking about digital representations of self. Back in the day, when I thought about digitally representing people, I'd think about the MetaVerse which was described in the novel SnowCrash. Below is an excerpt of the novel

As Hiro approaches the Street, he sees two young couples, probably using their parents' computers for a double date in the in the Metaverse, climbing down out of Port Zero, which is the local port of entry and monorail stop.

He is not seeing real people, of course. This is all a part of the moving illustration drawn by his computer according to specifications coming down the fiber-optic cable. The people are pieces of software called avatars. They are the audiovisual bodies that people use to communicate with each other in the Metaverse. Hiro's avatar is now on the Street, too, and if the couples coming off the monorail look over in his direction, they can see him, just as he's seeing them. They could strike up a conversation: Hiro in the U-Stor-It in L.A. and the four teenagers probably on a couch in a suburb of Chicago, each with their own laptop. But they probably won't talk to each other, any more than they would in Reality. These are nice kids, and they don't want to talk to a solitary crossbreed with a slick custom avatar who's packing a couple of swords.

You can look any way you want it to, up to the limitations of your equipment. If you're ugly, you can make your avatar beautiful. If you've just gotten out of bed, your avatar can be wearing beautiful clothes and professionally applied makeup. You can look like a gorilla or a dragon or a giant talking penis in the Metaverse. Spend five minutes walking down the Street and you will see all of these.

The one problem with the MetaVerse is that it primarily focuses on recreating the world with all of its limitiations when it comes to self expression. appearance. The only way people get to tell more about themselves is by how they look or by being spoken to. This isn't much different from the real world. That sucks.

I've come to realize that a new generation of social networking applications are fixing this problem with online representations of our personalities. I went clubbing this weekend and couldn't help but notice that everyone from the DJ at the techno club (DJ Niros) to rappers pimping their next album at the hip hop club (E 40) had a MySpace profile. I was watching TV and discovered that even movies and TV shows have MySpace profiles. I have a member of my household who obsessively hangs out on MySpace while online chatting with her friends.

Things get even more interesting when you factor in how modern social networking tools have changed dating rituals among young adults.  First of all,  there's the eternal wisdon of Jamie Zawinski who in his article Groupware Bad wrote

So I said, narrow the focus. Your "use case" should be, there's a 22 year old college student living in the dorms. How will this software get him laid?

That got me a look like I had just sprouted a third head, but bear with me, because I think that it's not only crude but insightful. "How will this software get my users laid" should be on the minds of anyone writing social software (and these days, almost all software is social software).

"Social software" is about making it easy for people to do other things that make them happy: meeting, communicating, and hooking up.

Some may laugh but I've met more than one college student who's said that she looks up potential dates in Facebook before going out with them. Or how about this comment from Jim Gilliam where he wrote

All this talk about MySpace lately. As someone who was part of the Los Angeles indie music scene that is now credited with making MySpace cool, I can tell you it was all about hooking up. It started at Friendster, but we broke it cause everyone started using it. So off to MySpace.

That girl you saw at the club? You could probably find her on MySpace even if you didn't know her name.. just by going through your friends and their friends. Then you either started flirting, stalked her, saw she was underage, or hated her musical tastes so much you got over it.

The MetaVerse from SnowCrash could not have enabled this level of insight into people's personalities with the limitations of just focusing on customizing ones appearance. With an online space I can share my thoughts, my music, my friends, my interests and my life with friends, family and strangers. This is a better MetaVerse than what existed in science fiction novels.

The reason I love my day job is that this is the kind of software I get to build. Every day is a holiday.


 

Categories: Social Software

Last week I saw links to Jason Calcanis's post YouTube is not a real business which I didn't read at the time because I wasn't that familiar with YouTube. However, over the past few days I've been watching a ton of videos on the site including the MySpace movie. I have to say I totally agree with what Jason Calcanis wrote below

4. YouTube is not a real business (or an innovative business). This is my main point. Let's not look at YouTube's page views and claim they are some amazing business. Napster and Kazaa had a ton of traffic too--it just wasn't web-based. If you could do an Alexa graph of Kazaa, BitTorrent, Usenet, and the old Napster they would be number one through four on Alexa!

Watching DIGG, Engadget, and MySpace climb in the rankings? Those are real businesses. If those sites added the ability to distribute stolen video in two clicks they would shoot up to the top 10 sites!

Let me break it down: YouTube and other video hosting sites have made it easy to pirate stuff on the web (which is where piracy started), but they shouldn't be positioned as some revolutionary business.

Like the original Napster, YouTube seems to be primarily about making money off of copyright infringement. A lot of the most popular videos don't seem to be have been uploaded by copyright holders unlike other video services like MSN Video or Google Video.

What I wonder is whether copyright infringement lawsuits will eventually shut them down or they'll end up getting both by a major player before that happens. They definitely have become a good brand and they do have some skills when it comes to scaling a popular service [although the server seems to be giving me HTTP 500 errors this morning]. It would be a shame for them to end up like Napster did.


 

One of the interesting side effects of blogs is that it tells you more about people than you can ever learn from reading a resume or giving an interview. This is both good and bad. It's good because in a professional context it informs you about the kind of people you may or should want to end up working with. It's bad, for the same reasons.

Blogs Make Me Sad
I find all the "Web 2.0" hype pretty disgusting. Everytime I read a discussion about what makes a company "Web 2.0" or not, I feel like I've lost half a dozen IQ points. Everytime I see someone lay on the "Web 2.0" hype I mentally adjust my estimation of their intelligence downward. The only folks this doesn't apply to are probably Tim O'Reilly and John Battelle because I can see the business reasons why they started this hype storm in the first place. Everyone else comes of as a bunch of sheep or just plain idiots.

Some folks are worse than others. These are the self proclaimed "Web 2.0" pundits like Dion Hinchcliffe who's blessed us with massively vacuous missives like Thinking in Web 2.0: Sixteen Ways and Web 2.0 and the Five Walls of Confusion. Everytime I accidentally stumble on one of his posts by following links from other's posts I feel like I've become dumber by having to read the empty hype-mongering. Russell Beattie's WTF 2.0 shows that I'm not the only person who is disgusted by this crap.

I was recently invited to Microsoft's SPARK workshop and was looking forward to the experience until I found out Dion Hinchcliffe would be attending. Since the event aims to be audience driven, I cringe when I think about being stuck in some conference hall with no way to escape listening to vacuous  "Web 2.0" hype till my ears bleed. If I had any sense I'd just not attend the conference, but who turns down a weekend trip to Vegas?

If not for blogs, I wouldn't know about Dion Hinchcliffe and could attend this workshop with great expectations instead of feelings of mild dread.

Blogs make me sad.

Blogs Make Me Happy
One of the things I loved about working on the XML team at Microsoft was all the smart people I got to shoot the breeze with about geeky topics every day. There were people like Michael Brundage, Derek Denny-Brown, Joshua Allen, and Erik Meijer who I felt made me smarter everytime I left their presence.

With blogs I get this feeling from reading the writings of others without having to even be in their presence. For example, there are so many lessons in Shelley Powers's recent post Babble that a summary doesn't do it justice. Just go and read it. It made me smile.

Blogs make me happy.


 

Categories: Ramblings

Yahoo! announced some cool stuff last week. In his blog post Yahoo! UI JavaScript treats Simon Willison writes

The Yahoo! Developer Network was updated yesterday with a veritable gold-mine of Exciting New Stuff, coinciding with the launch of the brand new Yahoo! User Interface Blog. #

Here are some of the highlights: #

The code is all under a BSD Open Source license, which means you can use it freely in your own projects, including for commercial development. #

This is a fantastic contribution to the Web developer community by Yahoo!. It's taken me a week to blog about it because I wanted to try it out first. Unfortunately  I still haven't gotten around to trying out the code but I decided to give it a shout out anyway. This is basically what I expected Microsoft to provide developers with Atlas but not only has Yahoo! done it first, it has done so in a way that is completely free (as in speech and as in beer). Wow. 

The folks at Yahoo! are definitely understand what it means to build a developer platform and a developer community on the Web. Kudos to everyone involved in getting this out. 


 

Categories: Web Development

February 23, 2006
@ 10:37 PM

In his post More SOAP vs. REST arguments Stefan Tilkov askes

I just noticed an interesting thing in the most recent iteration of the SOAP-vs.-REST debate: this time, nobody seems to have mentioned the benefit — if you believe that’s what it is — of protocol independence. Why is that?

For the record, I personally believe it’s one of the weakest arguments.

When I was on the XML team, we used to talk about XML infosets and data format independence to imply that it made sense if people could use transfer formats that were optimized for their use cases but still get the benefit of the XML machinary such as XML APIs (DOM, SAX, etc), XPath querying, XSLT transformations, etc. This philosophy is what has underpined the arguments for protocol independence at the SOAP level.

Now that I'm actually a customer of web services toolkits as opposed to a builder of the framework that they depend on, my perspective has changed. Protocol independence isn't really that important at the SOAP level. Protocol independence is important at the programming model/toolkit level. I should be able to write some business logic once and then simply be able to choose to expose it as SOAP, XML-RPC, RSS, or a proprietary binary protocol without rewriting a bunch of code. That's what is important to my business needs.  

It took a while but I eventually convinced some of the key Indigo folks that this was the right direction to go with in the Windows Communication Foundation. I damn near clapped when Doug demoed a WS-Transfer RSS service exposing a HTTP/POX endpoint, a HTTP/SOAP endpoint, and a TCP/Binary SOAP endpoint at an internal summit a couple of months ago.

Bottom Line: Protocol independence is important to providers of Web services. However it isn't required at the SOAP level.


 

Categories: XML Web Services

From Matt Cutt's blog post about the Google Page Creator we learn

Oh, and by the way, it looks like Google has released a tool to make mini-websites. The Google Page Creator at http://pages.google.com/ lets you throw up a quick set of pages without a ton of hassle. Looks like a bunch of different look ‘n’ feel choices:

I feel like I'm in a time warp. Did Google just ship their own version of GeoCities? Isn't this space dead? End users have graduated from personal home pages to blogs and social networking tools which is why sites like MySpace, MSN Spaces and Xanga have tens of millions of users. Business users are likely to want an entire package like Office Live instead of just a web page creation tool.

Who exactly is the target audience for this offering?

Update: I just noticed that username@gmail.com is equal to username.googlepages.com. How do you ship a product with such an obvious privacy bug? I guess if you are creating a 20% project you don't need to have privacy reviews. Doh!


 

Categories: Web Development

When you build web applications that have to scale up to millions of users, you sometimes end up questioning almost every aspect of your design as you hit scalability problems. One thing I hadn't expected was to notice that a number of people in our shoes had begun to point out the limitations of SQL databases when it comes to building modern Web applications. Below are a sampling of such comments primarily gathered together so I have easy access to them next time I want an example of what I mean by limitations of SQL databases when building large scale Web applications.

  1. From Google's Adam Bosworth we have the post Where Have all the Good databases Gone

    The products that the database vendors were building had less and less to do with what the customers wanted...Google itself (and I'd bet a lot Yahoo too) have similar needs to the ones Federal Express or Morgan Stanley or Ford or others described, quite eloquently to me. So, what is this growing disconnect?

    It is this. Users of databases tend to ask for three very simple things:

    1) Dynamic schema so that as the business model/description of goods or services changes and evolves, this evolution can be handled seamlessly in a system running 24 by 7, 365 days a year. This means that Amazon can track new things about new goods without changing the running system. It means that Federal Express can add Federal Express Ground seamlessly to their running tracking system and so on. In short, the database should handle unlimited change.

    2) Dynamic partitioning of data across large dynamic numbers of machines. A lot people people track a lot of data these days. It is common to talk to customers tracking 100,000,000 items a day and having to maintain the information online for at least 180 days with 4K or more a pop and that adds (or multiplies) up to a 100 TB or so. Customers tell me that this is best served up to the 1MM users who may want it at any time by partioning the data because, in general, most of this data is highly partionable by customer or product or something. The only issue is that it needs to be dynamic so that as items are added or get "busy" the system dynamically load balances their data across the machines. In short, the database should handle unlimited scale with very low latency. It can do this because the vast majority of queries will be local to a product or a customer or something over which you can partion...

    3) Modern indexing. Google has spoiled the world. Everyone has learned that just typing in a few words should show the relevant results in a couple of hundred milliseconds. Everyone (whether an Amazon user or a customer looking up a check they wrote a month ago or a customer service rep looking up the history for someone calling in to complain) expects this. This indexing, of course, often has to include indexing through the "blobs" stored in the items such as PDF's and Spreadsheets and Powerpoints. This is actually hard to do across all data, but much of the need is within a partioned data set (e.g. I want to and should only see my checks, not yours or my airbill status not yours) and then it should be trivial.
    ...
    Users of databases don't believe that they are getting any of these three. Salesforce, for example, has a lot of clever technology just to hack around the dynamic schema problem so that 13,000 customers can have 13,000 different views of what a prospect is.

    If the database vendors ARE solving these problems, then they aren't doing a good job of telling the rest of us.

  2. Joshua Schachter of del.icio.us is quoted as saying the following in a recent talk

    Scaling: avoid early optimization. SQL doesn't map well to these problems - think about how to split up data over multiple machines. Understand indexing strategies, profile every SQL statement. Nagios or similar for monitoring.

    Tags don't map well to SQL. Sometimes you can prune based on usage - only index the first few pages for example. This keeps indexes small and fast.

  3. Mark Fletcher of Bloglines wrote the following in his post Behind the Scenes of the Bloglines Datacenter Move (Part 2)

    The Bloglines back-end consists of a number of logical databases. There's a database for user information, including what each user is subscribed to, what their password is, etc. There's also a database for feed information, containing things like the name of each feed, the description for each feed, etc. There are also several databases which track link and guid information. And finally, there's the system that stores all the blog articles and related data. We have almost a trillion blog articles in the system, dating back to when we first went on-line in June, 2003. Even compressed, the blog articles consist of the largest chunk of data in the Bloglines system, by a large margin. By our calculations, if we could transfer the blog article data ahead of time, the other databases could be copied over in a reasonable amount of time, limiting our downtime to just a few hours.

    We don't use a traditional database to store blog articles. Instead we use a custom replication system based on flat files and smaller databases. It works well and scales using cheap hardware.

Interesting things happen when you question everything. 


 

Categories: Web Development

February 21, 2006
@ 06:59 PM

Yesterday, Mark Baker asked Why all the WS Interop problems?.

If you'd have asked me six or seven years ago - when this whole Web services things was kicking off - how things were likely to go with them, I would have said - and indeed, have said many times since - that they would fail to see widespread use on the Internet, as their architecture is only suitable for use under a single adminstrator, i.e. behind a firewall. But if you'd asked me if I would have thought that there'd be this much trouble with basic interoperability of foundational specifications, I would have said, no, I wouldn't expect that. I mean, despite the architectural shortcomings, the job of developing interoperable specifications, while obviously difficult, wouldn't be any more difficult because of these shortcomings... would it?

In my opinion, the answer to his question is obvious. A few months ago I wrote in my post The Perils of Premature Standardization: Attention Data and OPML that

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.

If you read the three posts that Mark Baker links to about SOAP interop problems, you'll notice that two of them are about the issues with mapping xsi:nil and minOccurs="0" to concepts in traditional object oriented programming languages [specifically C#]. If a value is null does that map to xsi:nil or minOccurs="0"? How do I differentiate the two in a programming language that doesn't have these concepts? How do I represent xsi:nil in a programming  language where primitive types such as integers can't be null? 

The main problem with WS-* interop is that vendors decided to treat it as a distributed object programming technology but based it on a data typing language (i.e. XSD) which does not map at all well with traditional object oriented programming languages. On the other hand, if you look at other XML-Web-Services-as distributed-objects technology like XML-RPC, you don't see as many issues. This is because XML-RPC was meant to map cleanly to traditional object oriented programming languages.

Unfortunately I don't see the situation improving anytime soon unless something drastic is done.


 

Categories: XML Web Services

February 21, 2006
@ 06:05 PM

Mike Gunderloy hits a number of my pet peeves in his Daily Grind 823 post where he writes

The Problem with Single Sign-In Systems - Dare Obesanjo attempts to explain why Passport is so annoying. But hey, you know what - your customers don't care about the technical issues. They just want it to work. Explaining how hard the problem is just makes you look like a whiner. This principle applies far beyond Passport.

Pet peeve #1, my name is spelled incorrectly. I find this really irritating especially since anyone who is writing about something I blogged about can just cut and paste my name from their RSS reader or my webpage. I can't understand why there are so many people who mispell my name as Dare Obesanjo or  Dare Obsanjo. Is it really that much of a hassle to use cut & paste? 

Pet peeve #2, projecting silly motives as to why I wrote a blog post. My blog is a personal weblog where I talk about [mostly technical] stuff that affects me in my professional and personal life. It isn't a Microsoft PR outlet aimed at end users. 

Pet peeve #3, not being able to tell the difference between what I wrote and what someone else did. Trevin is the person who wrote a blog post trying to explain the user experience issues around Passport sign-in, I just linked to it.


 

Categories: Ramblings

February 20, 2006
@ 09:14 PM

Patrick Logan has a post on the recently re-ignited discussion on REST vs. SOAP entitled REST and SOAP where he writes

Update: Mike Champion makes an analogy between messaging technologies (SOAP/WSDL and HTTP) and road vehicle types (trucks and cars). Unfortunately this is an arbitrary analogy. That is, saying that SOAP/WSDL is best "to haul a lot of heavy stuff securely and reliably, use a truck" does not make it so. The question is how to make an objective determination.

Mike is fond of implying that you need to use WS-* if you want security and reliability while REST/POX is only good for simple scenarios. I agree with Patrick Logan that this seems to be an arbitrary determination not backed by empirical evidence. As an end user, the fact that my bank allows me to make financial transactions using REST (i.e. making withdrawals and transfers from their website) is one counter example to the argument that REST isn't good enough for secure and reliable transactions. If it is good enough for banks why isn't it good enough for us?

Of course, the bank's website is only the externally focused aspect of the service and they probably do use systems that ensure reliability and security internally that go beyond the capabilities of the Web's family of protocols and formats. However as someone who builds services that enable tens of millions of end users communicate with each other on a daily basis I find it hard to imagine how WS-* technologies would significanlty improve the situation for folks in my situation.

For example, take the post Clemens Vasters entitled The case of the missing "durable messaging" feature where he writes

I just got a comment from Oran about the lack of durable messaging in WCF and the need for a respective extensibility point. Well... the thing is: Durable messaging is there; use the MSMQ bindings. One of the obvious "problems" with durable messaging that's only based on WS-ReliableMessaging is that that spec (intentionally) does not make any assertions about the behavior of the respective endpoints.

There is no rule saying: "the received message MUST be written do disk". WS-ReliableMessaging is as reliable (and unreliable in case of very long-lasting network failures or an endpoint outright crashing) and plays the same role as TCP. The mapping is actually pretty straightforward like this: WS-Addressing = IP, WS-ReliableMessaging = TCP.

So if you do durable messaging on one end and the other end doesn't do it, the sum of the gained reliability doesn't add up to anything more than it was before.

The funny thing about Clemens's post is that scenarios like the hard drive of a server crashing are the exact kind of reliability issues that concern us in the services we build at MSN Windows Live. It's cool that specs like WS-ReliableMessaging allow me to specify semantics like AtMostOnce (messages must be delivered at most once or result in an error) and InOrder (messages must be delivered in the order they were sent) but this only scratches the surface of what it takes to build a reliable world class service. At best WS-* means you don't have to reinvent the building blocks when building a service that has some claims around reliability and security. However the specifications and tooling aren't mature yet. In the meantime, many of us have services to build.   

I tend to agree with Don's original point in his Pragmatics post. REST vs. SOAP is mainly about reach of services and not much else. If you know the target platform of the consumers of your service is going to be .NET or some other platform with rich WS-* support then you should use SOAP/WSDL/WS-*. On the other hand, if you can't guarantee the target platform of your customers then you should build a Plain Old XML over HTTP (POX/HTTP) or REST web service.


 

Categories: XML Web Services

For the past few releases, we've had work items in the RSS Bandit roadmap around helping users deal with information overload. We've added features like newspaper views and search folders to make it easier for users to manage the information in feeds they consume. Every release I tried to make sure we add a feature that I know will make it easier for me to get the information I want from the feeds I am subscribed to without being overwhelmed.

For the Jubilee release I had planned that the new feature we'd add in the "dealing with information overload" bucket would be the ability to rate posts and enable filtering based on this rating. After thinking about this for a few weeks, I'm not sure this is the right route any more. There are tough technical problems to surmount to make the feature work well but I think the bigger problems are the expected changes to user behavior. Based on my experiences with rating systems and communities, I suspect that a large percentage of our user base will not be motivated to start rating the feeds they are subscribed to or the new items that show up in their aggregator.

On a related note, I've recently been using meme trackers like Memeorandum and TailRank which try to show the interesting topics among certain technology blogs. I think this is very powerful concept and is the next natural evolution of information aggregators such as RSS Bandit. The big problem with these sites is that they only show the current topics of interest among a small sliver of blogs which in many cases do not overlap with the blogs one might be interested in. For example, today's headline topic on Tech.Memeorandum is that a bunch of bloggers attended a house party which I personally am not particularly interested in. On the other hand, I'd find it useful if another way I could view my subscriptions in RSS Bandit pivoted around the current hot topics amongst the blogs I read. This isn't meant to replace the existing interface but instead would be another tool for users to customize their feed reading experience the same way that newspaper views and search folders do today. 

If you are an RSS Bandit user and this sounds like a useful feature I'd like to hear your thoughts on what functionality you'd like to see here. A couple of opening questions that I'd like to get opinions on include

  • Would you like to see the most popular links in new posts? For an example of what this looks like, see the screenshot in Nick Lothian's post on  Personalized meme tracking
  • How would you like to classify new posts; unread posts or items posted within the last day? The reason I ask this is that you may already have read a few posts that linked to a very popular topic, in which case should it be ranked higher than another link for which you haven't read any of the related posts but hasn't been linked to as much?
  • Would you like a 'mark discussion as read' feature? Would it be nice to be able to mark all posts that link to a particular item as read?

I have a bunch of other questions but these should do for now.


 

Categories: RSS Bandit

February 19, 2006
@ 06:33 PM

This is basically a "me too" post. Dave Winer has a blog post entitled Blogging is part of life where he writes

I agree with the author of the Slate piece that’s getting so much play in the blogosphere, up to a point. The things that called themselves blogs that came from Denton and Calacanis are professional publications written by paid journalists that use blogging software for content management. That’s fine and I suppose you can call them blogs, but don’t get confused and think that their supposed death (which itself is arguable) has anything to do with the amateur medium that is blogging. They’re separate things, on separate paths with different futures.

To say blogging is dead is as ridiculous as saying email or IM or the telephone are dead. The blog never belonged on the cover of magazines, any more than email was a cover story (it never was) but that doesn’t mean the tool isn’t useful inside organizations as a way to communicate, and as a way for businesses to learn how the public views them and their competitors.

Whenever Dave Winer writes about blogging I tend to agree with him completely. This time is no exception. Blogs are social software, they facilitate communication and self expression between individuals. Just like with email and IM, there are millions of people interacting using blogs today. There are more people reading and writing blogs on places like MySpace and MSN Spaces than the populations of a majority of the countries on this planet. Blogs are here to stay. 

Debating on whether companies that build companies around blogs will survive is orthogonal to discussing the survival of blogging as a medium. It's not like debating whether companies that send out email newsletters or make mailing list software will survive is equivalent to discussing the survival of email as a communication medium. Duh. 


 

Categories: Social Software

Recently there was a question asked on the RSS Bandit forums from a user who was Unable to Import RSSBandit-Exported OPML into IE7. The question goes

I exported my feeds from RSSBandit 1.3.0.42 to an OPML file in hopes of trying the feed support in IE7. IE7 seems to try to import, but ultimately tells me no feeds were imported. The exported file must have over a 100 feeds, so it's not that. Has anyone else been able to import feeds from RSSBandit into IE7?

I got an answer for why this is the case from the Internet Explorer's RSS team.  The reason is provided in the the RSS Bandit bug report, Support type="rss" for export of feeds, where I found out that somewhere along the line someone came up with the convention of adding a type="rss" attribute to indicate which were the RSS feeds in an OPML file. The Internet Explorer RSS team has decided to enforce this convention for indicating RSS feeds in an OPML file and will ignore entries that don't have this annotation.

Since RSS Bandit supports both RSS/Atom feeds and USENET newsgroups, I can see the need to be able to differentiate which are the feeds in an OPML file without having applications probe each URL. However I do think that type="rss" is a misnomer since it should also apply to Atom feeds. Perhaps type="feed" instead?


 

One of the more thankless jobs at MSN Windows Live is to work on the Passport team. Many of the product teams that are customers of the service tend to view it as a burden, myself included. One of the primary reasons for this is that instead of simply being the username/password service for MSN Windows Live it is actually a single-sign in system which encompasses a large number of sites besides those owned by Microsoft. For example, you can use the same username and password to access your email, travel plans or medical information.

Trevin Chow of the Passport team has written a blog post entitled Why does Passport sign-in suck? where he addresses one of the pain points its customers face due to its legacy as a single sign-in system. He writes

Q: Why do you keep asking me to sign in over and over again even though I've checked "automatically sign me in"?  What don't you understand about "automatic"?!
 
One of the biggest problems with see in the network of MSN, Windows Live and Microsoft sites is that Passport sign-in is seen way too often by users.  It appears as if we are disregarding your choice of "automatically sign me in" and randomly asking you to sign in when we want with no rhyme or reason...
 
Passport sign-in 101
Passport sign in is based on cookies. Because HTTP is stateless, we have only 2 ways of persisting information across requests -- the first being to carry it on the query string, and second via HTTP cookies.  The first method (query string) isn't useful across browser sessions (open IE, close it, and re-open), which leaves us only option 2 (cookies).  Cookies are the mainstay of modern web sites, and allows very powerful personalization and state management.  Passport leverages this to provide the world's largest web authentication (aka sign-in) system in the world.
 
Passport first validates your identity by validating your "credentials" (email address and password combination) that you typed in on our sign-in UI.  Once validated, Passport uses cookies in the passport.com and the partner's domain (eg. www.live.com, MSN Money, MSDN) to vouch for your identity.  The cookies in our partner's domain act as assertions that you are who you say you are.    Because each partner site trusts Passport, the sign-in authority, assertions about a user's identity from Passport are also trusted by the partner.
...
After you sign into one partner site in the "passport network", users can freely go to subsequent partner sites and sign in. This is where the magic of Passport comes into play and single sign-on is achieved.  When you visit another partner site, and click "sign in" you are redirected to Passport servers. Because you already authenticated once to Passport (represented through your passport.com cookies), we don't need to validate your credentials again and can issue a service ticket for this new partner website.
 
But Trevin, you just said that "because you already authenticated once to Passport <snip>, we don't need to validate you credentials again...".  That clearly isn't the case since I seem to keep getting asked for my password!
 
In the last section, especially the last paragraph, I purposely left out some detail for simplicity. We can dive into more detail now that you have a better high-level understanding of the flow of passport sign-in.
 
In order to have a secure single sign-on system, you simply cannot have one prompt for a login then be able to access any site.  It sounds counter-intuitive, since that's what "single sign-on" seems to imply.  This would only be possible if every single website you accessed had the same level of security and data sensitivity.  We all know that this is not the case, and instead, sites vary in the level of security needed to protect it. 
 
On the lower end of the spectrum (least sensitive), we have sites like www.live.com, which is merely personalization.  In the middle, have sites like Live Mail, which has personal information such as email from your friends.  On the extreme end of the scale (most senstitive) we have sites like Microsoft Billing which contains your credit card information.  Because of this varying levels of data sensitivity, each site in the Passport network configures what we'll call their "security policy" which tells passport parameters to enforce during sign in which is supposed to be directly related to their data sensitivity -- the more sensitive the information therein, the "tighter" the security policy.
...
All our partner websites currently have a mis-matched set of security policies, each set at their own discretion of their team's security champ.  It's because of the inconsistent security plicies, you keep getting asked for your password over and over.
 
Wow, so this sounds like a tough problem to solve.  How are you going to fix this? 
 
Our team is absolutely committed to make the sign in experience the best on the internet.  To fix this specific problem, our team is moving to a centralized definition of security policies.  What does this mean? Instead of each partner website telling us the specific parameters of the security policy (such as time window), they instead will tell us an ID of a security policy to enforce, whose definition will be on the Passport sign-in servers.  This means, that by offering a limited set of security policies we limit the mistakes partner websites can make, and we will inherently have more consistency across the entire network for sign in.  Additionally, it gives us more agility to tweak both the user experience and security of the network since Passport is in total control of the parameters.

This is just one consequence of Passport's legacy as a single-sign in system causing issues for MSN Windows Live sites. Another example of an issue we've faced was when deciding to provide APIs for MSN Spaces. If you read the Getting Started with the MetaWeblog API for MSN Spaces document you'll notice that instead of using the user's Passport credentials for the MetaWeblog API, we instead use a different set of credentials. This is because a user's Passport credentials were deemed to be too valuable to have them being entered into random blog editing tools which may or may not be safeguarding the user's credentials properly.

I now consider identity systems to be one big headache based on my experiences with Passport. This is probably why I've steadfastly avoided learning anything about InfoCard. I know there are folks trying to make this stuff easier at Microsoft but it seems like everytime I think about identity systems it just makes my teeth hurt. :(


 

Categories: Windows Live

Don Box has an excellent post on the entire REST vs. SOAP debate entitled Pragmatics where he writes

The following design decisions are orthogonal, even though people often conflate two or more of them:
 
  1. Whether one uses SOAP or POX (plain-old-XML).
  2. Whether or not one publishes an XML schema for their formats.
  3. Whether or not one generates static language bindings from an XML schema.
  4. The degree to which one relies on HTTP-specific features. That stated, screw with GET at your peril.
  5. Whether one adopts a message-centric design approach or a resource-centric design approach.
           
Some of the decisions (specifically 5) are architectural and sometimes philosophical.
 
Some of the decisions (specifically 1-2) are simple business decisions that are determined by who your target audience is.
 
  1. If you want a great experience for .NET/Java devs, you’ll typically publish schemas (through wsdl) and support SOAP.
  2. If you want a great experience for LAMP folks, you’ll support POX messages and will provide a non-XSD description of your formats.
  3. If you want to reach both audiences, you’ll do both #1 and #2.
  4. If you want to reach both audiences before your competition does, you'll avoid indulging in religious debates and ship something.

This is so true it hurts. Most of the discussion around XML Web services has unfortunately been driven by platform vendors in either the Java or .NET camps which has unnecessarily skewed the discussion. When you are an actual business decision maker faced with building services on the Web, a lot of the silly dogma around REST vs. SOAP simply dissipates. Instead it boils down to deciding how broad of an audience you want to reach and how much work you want to do to reach that audience.

That said, I'd quibble about needing to do both REST and SOAP if you want to reach both the enterprise developer crowd (i.e. Java/.NET developers) and the LAMP crowd. One counter example to this theory is RSS, it is a RESTful web service which hasn't needed to be SOAP based to result in lots of great apps built on it using the .NET Framework such as SharpReader, RSS Bandit and NewsGator Outlook Edition. From my perspective as an RSS reader developer, I will admit that it would have taken a lot less code to handle the feed processing in RSS Bandit if it was SOAP-based. On the other hand, from my perspective as a service provider I'd note that the amount of work needed to implement and support two APIs that do the same thing is often not worth it.

Coincidentally, today is the date of my semi-regular lunches with Don and now he's provided some good fodder for us to chitchat about over MSFT's cafeteria grub.


 

Categories: XML Web Services

February 17, 2006
@ 02:23 AM

For those who missed it, the MSN AdCenter team now has a blog at http://blogs.msdn.com/adcenter. The most recent post is about the New adCenter Release Coming Up and it reads

You may be asking yourself, "Why a new version?" Well, our goal is both to make your adCenter campaign management easier and to improve your user experience. We've learned a lot from the customer feedback we've gotten so far, and now we're ready to share our ideas with you.

Updates include:
1. Order creation process simplified into 4 steps
2. Broader differentiation between campaigns and orders  
3. New pricing tab includes all budget, bidding, and incremental pricing
4. Negative keywords can be applied at the order level
5. Keyword / ad rejections include reason codes

 and lots of other cool changes - I'll post more details here later in the week so you'll know what to expect when you login after the release - and when the release will happen.

This is one product I can't wait for Microsoft to ship. It's cool that we want to improve our search engine and other online properties to be more competitive but it is all for naught if we don't have a good story around how we and our customers make money from our services. AdCenter to the rescue...


 

Categories: MSN

February 16, 2006
@ 06:03 PM

Jason Fried of 37 Signals has a post critical of Office Live entitled Microsoft Office Live is "web based" where he writes

Office Live, Microsoft’s entry into the web-based office application space, went beta today.

Check out some of the system requirements for certain features of this “web-based” service:

  • To use the Edit in Datasheet feature within the Business Applications and Shared Sites areas requires Microsoft Office 2003.
  • To export to Business Contact Manager requires Microsoft Office 2003, Microsoft Office XP, or Microsoft Office 2000.
  • To import contacts from Microsoft Office Outlook requires Microsoft Office 2003 or Microsoft Office XP.
  • To link contacts to Microsoft Office Outlook requires Microsoft Office 2003.

And of course you must use IE. I never thought I’d see a web app suite that has more system requirements than a desktop app, but I guess I should never underestimate Microsoft.

A number of comments in response to the blog post have pointed out that it is misleading since it implies that Office Live requires Microsoft Office when in truth most of the features mentioned are related to importing and exporting data to and from Microsoft Office products like Outlook. Since the target audience for Office Live is the same as that for the majority of the products of 37 Signals it is unsurprising that they are so hostile to the service.

However this isn't to say that there isn't some valid criticism here. Jason is right that Internet Explorer is required to use Office Live. I also had an issue with this especially since in Windows Live we have an explicit goal that Internet Explorer and Firefox users should get an equivalent user experience. When I talked to the Office Live folks about this they pointed out to me that although Internet Explorer is required to create a site using the service, the websites created with it (such as http://daresofficelivesite.com) work fine in all major Web browsers. This is a good step but they know they can do better.

As it is with all feature requests in product development, the best way to get Firefox support to show up in Office Live is for users demand it. That's what happened with Windows Live and I'm sure the same will end up happening for  Office Live. I'm sure the question won't be if but rather when it shows up. 


 

Categories: Office Live | Windows Live

February 16, 2006
@ 05:22 PM

A few days ago, I asked Edgeio: An eBay Killer or Just Another Lame Startup? which seems to be a question that was asked by several other bloggers. On the Edgeio blog there is a post entitled More Bloggers Discuss Edgeio which promises to address some of the questions raised about the service. The blog post states

There are three key things people bring up when questioning whether or not edgeio will be successful.

1. Will bloggers want to post classified listings on blogs?

2. How to deal with the inevitable spam onslaught?

3. Assuming 1 & 2 are overcome, what stops everyone from entering the market?

These are all great questions whose answers I'd love to see. For #1 the edgeio folks have to convince vendors of blogging tools and hosted blogging services to make it easy for people to mark up their blog posts as auction listings. I called this a 'Make this blog post a classified listing' checkbox in my previous post on Edgeio. Then there is the task of convincing people that instead of listing items for sale on eBay or Craig's List, they should instead post an entry in their blog. This will be an uphill battle. Assuming they solve that, question #2 points out that the next hurdle is dealing with the inevitable avalanche of splogs which will pollute the system. Blog search engines like Technorati seem to be doing a decent job at filtering out splogs so this is tough but not an insurmountable problem.

The real doozy is question #3. Once they've convinced the blogosphere to start posting classified listings on their blogs instead of using existing listing sites AND have done a decent job holding down spam, they still have to contend with the Google factor. From my perspective, the functionality Edgeio plans to provide is the kind of feature that could be added to Google Base by an enterprising developer in his or her 20% time let alone if a bigger player like eBay or Craig's List decides to get in this space.  Besides proclaiming that they have patents protecting their business model, I can't see how Edgeio plans to answer question #3 above. I'll be watching their blog to see what their answers to the above questions. My curiousity is definitely piqued. 


 

Categories: Social Software

February 15, 2006
@ 06:04 PM

David Hunter has a blog post entitled Microsoft relaunches bCentral, calls it Office Live where he writes

Press release:

Sept. 23, 1999 — Microsoft Corp. today announced the launch of Microsoft® bCentral, a new portal created specifically to meet the needs of small and growing companies. Microsoft bCentral provides a comprehensive and integrated suite of services to help growing companies leverage the Internet to improve their business. The site delivers services in three key areas: getting a business started online by connecting to the Web and building a Web site; promoting and marketing online to reach new customers; and managing a business more effectively. A beta version of the new site will be available in the United States beginning Sept. 30, 1999, at http://www.bCentral.com/ .
Change the menu a little and call it Office Live and you have today’s announcement:
Feb. 15, 2006 — Microsoft Corp. today announced the beta availability of Microsoft® Office Live (http://www.OfficeLive.com), offering small-business customers a cost-free opportunity to experience the company’s new Internet-based software services firsthand. A milestone for the online services previewed last fall, Microsoft Office Live combines the power of software and services to deliver rich and seamless experiences to small companies that want a presence online.

Microsoft Office Live helps lower the barriers to doing business online by offering small companies a set of Internet-based business services. Designed for ease of use and affordability, the online services are designed to give small businesses the same advantages as larger enterprises by getting them up and running on the Internet quickly, easily and inexpensively.

There were no surprises from the various “preannouncements” yesterday or even from the original Office Live announcement...So what’s with the Office moniker? There had been some expectations, despite all the clues to the contrary, that there were to be online versions of at least some of the Office products. Those hopes were dashed...The use of “Office” in “Office Live” apparently connotes business usage, and that’s it...So I guess we take it for what it is. There may well be a play in the hosted “intranet replacement” offering if they roll out some useful applications, but that’s a story we heard about the now defunct bCentral too (e.g. [1], [2]). Presumably, Microsoft thinks they’ll have more luck this time around, but it’s not clear why.

The folks working on Office Live have big plans for the service. The big question is whether our execs will let them execute on their vision or whether we'll continue to practice death by risk aversion.


 

Categories: Office Live

February 15, 2006
@ 05:27 PM

Office Live is now live at http://www.officelive.com. As I mentioned yesterday, our team has been working closely with the folks behind Office Live. This means that I got the hook up with regards to early access to the service. I've heard it's okay to post screenshots so I'll be posting some with my review of the service. There are 3 basic SKUs of the service

  1. Office Live Basics: This service makes it easy for a small business to create and manage its website. It features all the basics you need to create your first Web site including free Web hosting, Web site statistics, a personalized domain name (bring your own domain or get one through Microsoft), and up to 5 e-mail accounts for your domain.

  2. Office Live Collaboration: This service makes it easy to store, share, and manage your everyday business information in one central online location. Users can create any number of password-protected Web sites for collaborating among internal employees and external customers, suppliers, and vendors. The service provides access to business applications for managing one's customer relationships, employees and project management.

  3. Office Live Essentials:  A combination of the Basics and Collaboration SKUs with a few more benefits such as getting 50 email accounts instead of just 5 with your custom domain. 

Office Live is a mix of a number of core services a small business needs to exist today. It gives them a domain registrar, email hosting, internal and external web site hosting, as well as line of business applications all in a single place.

When I tested the service, I got myself an Office Live Essentials account. The sign up steps including choosing a domain name which was automatically registered for me by the service, providing my contact information, entering my credit card information and agreeing to the terms of use. The domain I created was http://www.daresofficelivesite.com/ which may not be available until a few hours after this posting. Below are some screenshots of the service, click the images for larger versions of the screenshots.


Member Center - Overview


Web Site - Overview


Web Site - Page Editor


Business Applications - Dashboard


Users & Accounts

In general I think Microsoft has a winner here. My girlfriend used to be a professional photographer and she definitely could have used a service like Office Live. It definitely hits the sweet spot for small businesses. 

However there is a bunch of work that needs to be done. As you can see from the screenshots, the service provides a lot of functionality and options. I think perhaps too much which could be overwhelming to the target audience of small businesses that are likely too small to even have an IT staff. I found features such as the business dash board a bit overwhelming. Another small gripe is that I couldn't set up email accounts because it kept giving me an 'invalid password' error when I tried to create an email account. I assume this is because I was using a weak password but it didn't say that. That was rather irritating and I gave up trying to create a new email account. Thus I couldn't get a screenshot to confirm that the user interface for the hosted email is that of Windows Live Mail. I know the folks behind Office Live will be eagerly awaiting feedback on their product, so give it a shot

I should probably see about asking some of these folks to start blogging if they haven't already. :)


 

Categories: Office Live

February 14, 2006
@ 05:55 PM

Our team has been partnering with the Office Live folks and I've been pretty impressed at how far along they have come in a short time. I haven't been able to blog about their product yet but today I saw a post from Joe Wilcox entitled What Office Live Is Not which gives good insight into the goals of the product.

He writes

Last night, Microsoft lifted the NDA for Office Live, so I am rapidly blogging a day sooner than expected. Office Live goes live--at least in limited beta--tomorrow.

So there is to confusion about Office Live:

* Office Live absolutely is not a hosted version of Microsoft Office. People have asked me if Microsoft is hosting Office applications or would do so in the future. Answers are no and highly unlikely. I don't expect Microsoft to offer a hosted version of Office as part of Office Live. Ever. While Microsoft obviously is concerned about the Web 2.0 concept, the company is not going into the hosted applications business.

Most of the extended capabilities do functionally derive from Microsoft server software, such as Exchange, SharePoint and Project. The service provides basic e-mail and calendaring capabilities (such as might be seen from Exchange), collaboration functions (such as come with SharePoint Portal Server) and for working on projects (such as supported by Project Server).

Based on JupiterResearch surveys, Microsoft's target market of businesses with fewer than 10 employees would be highly unlikely to run server software products like Exchange, SharePoint or Project. Microsoft's approach extends those products' capabilities--and their potential benefits--to the smallest businesses. As those businesses grow, Microsoft has created opportunity for its partners to upsell server software that would maintain and extend Office Live capabilities. Smart.

For now, small businesses would largely consume these services in a Web browser. There are some ties back to Office products, and I expect to see more of these ties with the release of Office 12. I will discuss more of this in another post.

* Google isn't the target here and, in many respects, neither is the nebulous Web 2.0 concept. As I wrote back in November, "Microsoft hopes to generate greater customer value and make new-version Office and Windows upgrades more appealing. MSN has done a tremendous job cranking out new products and services, well ahead of the long Office and Windows development cycles. The point: If Google didn't exist, Microsoft probably still would have embarked on a services strategy."

Microsoft is probably more concerned about a Salesforce.com than a Google here. Microsoft's core business is applications and operating systems. Services like Salesforce.com negate the value of both applications and operating systems, territory Microsoft won't easily cede. It's no coincidence that CRM is a major Office Live feature.

Once the product goes into beta I'll probably do a review along with some screenshots [if the team doesn't mind]. There is definitely good stuff coming down the pipe here.


 

Categories: Office Live

February 13, 2006
@ 09:19 PM

Harry Pierson has a blog post entitled SPARK is Out of the Bag where he writes

As part of the new job, I'm involved in the planning a workshop called SPARK, which Dion Hinchcliffe blogged about this morning. (Dion also writes a blog here - bringing the total to three - so I created a combined feed just to keep track of all the places he writes). My new boss Mike also mentioned SPARK this morning. In the hopes of sparking futher interest (pun intended), here's the overview of SPARK:

SPARK is the first in a series of high-level forums hosted by Microsoft that use a workshop setting to examine “the issues that matter most” in the practice of strategic architecture and produce guidance for the industry as a whole.

Today, new social movements, advances in technology, and forces within business are overlapping to create a landscape glutted with challenges and opportunities. In many cases, these forces have driven the deployment of new technologies and the adoption of new behaviors, adding multiple layers to an already complex set of issues that must be navigated. Architects are searching for a solution that helps manage this complexity.

SOA, Software as a Service, Web 2.0, and Edge are all elements of the solution, but are they the complete picture? Are they a sufficient answer to the issues?  Can they be used together in a productive and efficient fashion? What matters most?

SPARK is an invite-only event and it looks like I was invited. I'm not sure what to expect. On the one hand it looks like one giant game of buzzword bingo with Web 2.0 hypesters and SOA propaganda-ists trying to outdo each other throwing out spurious buzzwords and grand proclamations. On the other hand some of the invitees have me intrigued and it would be good to compare notes on building services for the World Wide Web in today's world with other folks facing the same kind of issues I do in my day job.

I'll definitely be attending this workshop but not the accompanying MIX '06 conference. However I still plan to flip the bozo bit on any idiot that tries to talk to me about Web 2.0 while at this workshop.


 

Categories: Web Development

From the USA Today article Bill would keep servers out of China we learn

Now, Congress is stepping in with proposed legislation that could hobble the companies as they plunge deeper into one of the world's hottest economies. This is Round 2 for Congress. Last year, it scrutinized and slowed other business deals with ties to China's government among oil companies and computer makers.

Rep. Chris Smith, R-N.J., is drafting a bill that would force Internet companies including Google, Yahoo and Microsoft to keep vital computer servers out of China and other nations the State Department deems repressive to human rights. Moving servers would keep personal data they house from government reach. But that also could weaken the firms' crucial Internet search engines. (Related: AOL tries to speak Chinese.)
...
Google last month launched Google.cn, a version of its No. 1 search engine that prevents Chinese residents from seeing, for example, photos of tanks confronting Tiananmen Square protesters in 1989. Also last month, Microsoft acknowledged shutting down a blog run by a Chinese journalist critical of the government.

Last fall, Yahoo acknowledged giving information to Chinese officials that led to a 10-year prison sentence for a journalist accused of divulging state secrets. Last week, Reporters Without Borders, a journalism group critical of Yahoo's cooperation with Chinese officials, accused it of working with the Chinese government in another case that led to a dissident being jailed. Yahoo said it was unaware of the case.

The companies say they are unhappy with the restrictions yet must honor local laws.
...
Google's site launch came days after it rebuffed a U.S. Justice Department subpoena demanding that it turn over data on how millions of users search the Internet.

In contrast, Yahoo, Microsoft and America Online all cooperated with Justice.

Since this affects my day job I won't comment on it other than to say I find this entire debate very interesting. I will mention that unlike the USA Today reporter who wrote this story I'm not sure that the U.S. government's interest in the IBM/Lenovo or Unocal/CNOOC deals last year is comparable to the current efforts by members of congress.


 

Categories: Current Affairs

February 13, 2006
@ 04:54 PM

Last month, Dave Winer wrote the following in a post on his blog

Today's been a day for epiphanies, small and large. A small one is that tech.memeorandum.com is not really about technology, it's about the business of technology. Actually it's narrower than that, it's the West Coast-centered technology business. I'd love to see a Memeorandum-like service that focused on technology, the ones and zeroes, and left out the fluff and the bubbles.

I agree a 100% with Dave Winer here. I think the concept and implementation of tech.memeorandum.com is nothing short of fantastic. On the other hand, the content typically leaves much to be desired. For example, this morning's top story is that some analysts are now pessimistic on Google's stock price because they just realized they have competitors like Microsoft and Yahoo. As a technology geek, I couldn't care less about such mindless crap. Like Dave Winer I'm more interested in what programmer types are currently geeking about as opposed to what pundits pontificating on Google vs. Microsoft vs. Yahoo are gabbing about.

I gather that the tech.memeorandum.com algorithm is based on figuring what the current hot topics are among certain A-list bloggers. The problem with this is that most A-list technology bloggers are pundits not technologists. This means they spend most of their time talking about technology companies not technology. There's a big difference between what you'll find on Robert Scoble or John Battelle's blogs versus what you'll see on the blog of Simon Willison or Don Box. I personally would rather see a tech.memeorandum.com that was based on showing me what was hot amongst technology implementers like Simon and Don versus among technology watchers like Scoble and Battelle.  

Ideally, I should be able to customize tech.memeorandum.com so I can treat it as a personal aggregator. I'd love to be able to provide it the OPML for blogs.msdn.com and have it show me what the hot topics were among Microsoft bloggers. From my perspective,  tech.memeorandum.com is a good implementation of a great idea. However it is just the beginning. I wonder who will be first to take it to the next level and enable us to build personalized meme trackers? 


 

Categories: Technology

Work has been quite hectic the past few weeks so I've gotten behind on checking out the sexy new startups coming out of Silicon Valley. The startup that has recently caught my interest is Edgeio, the brain child of Mike Arrington of TechCrunch.

The most succint post I've found on the company is Edgeio - Mike’s Little eBay Killer by Pete Cashmore where he writes

Essentially, Edgeio is an aggregator for classified listings. You can write a classified ad on your blog, tag it with "listing" and let Edgeio pick it up from your feed. Add a few more tags to describe your ad and Edgeio will grab those too. The service will pick up anything tagged with "listing" and obviously that raises the question of spam. But after speaking to Mike, I’m pretty sure he’s on top of it. For instance, you can claim your blog on Edgeio, just like on Technorati. Claiming your blog means that you are now a "member" and your listings are considered more trustworthy. There are also automated ways to remove the worst of the spam. And then there are the user-powered methods - "report spam" buttons and the like.
...
Last of all: the business model. Unlike about 90% of the stuff that gets labelled (tagged?) Web 2.0, Edgeio actually has one. Actually it has a few, but the main monetization method appears to be sponsored listings - pay 25 cents a day to get your listing bumped up to the top. I would have been tempted to pursue a transaction-based model (ie. you take a cut from every sale), but I can see why Edgeio isn’t taking that path for now - handling transactions is a huge job and requires a reputation system, among other things. (And if Edgeio did build a reputation system, I’m pretty sure it would be portable).

Calling Edgeio an eBay killer is probably a bit hyperbolic, but I do think it points the way to how decentralization will undermine the centralized business models of old. Your little walled garden will never be as large, rich and varied as the content that exists out on the open web.

As you can expect from a "Web 2.0 blog", Pete Cashmore's post is full of hyperbole and leaps of faith but there are some interesting ideas here nonetheless. From a technology perspective I assume that Edgeio depends on microformats just like other metadata-in-your-blog-post initiatives such as Structured Blogging. This indicates to me that there now seems to be general consensus amongst the Silicon Valley startup crowd that building a company based on searching blogs and screen scraping their HTML such as PubSub and Technorati have done is the new hotness.

The more interesting thing to me is that the folks at Edgeio are implying that there is a market for a 'Make this blog post a classified listing' checkbox in traditional blog posting tools. From my perspective as someone who works closely with the MSN Spaces and Windows Live Expo teams this sounds very interesting. There is already some integration planned between both services but I'm not sure this is one of the options that was considered. I wonder how much user validation of this beilief Mike Arrington and company did before going ahead with launching their startup?

As far as business models go, I find it hard to imagine why anyone would consider this an eBay killer. I'm not going to claim that people posting things for sale on their blog and then having that picked up by classified listing services is inferior to eBay's model. However, I wonder why anyone thinks that services like eBay, Craig's List and Windows Live Expo wouldn't jump into this market if it turned out to be profitable. Since there doesn't seem to be any barrier to entry, ability to write a Web crawler and minor HTML parsing is all that is required, I wouldn't start eulogizing  eBay just yet. 


 

A couple of folks at work have been commenting on how the blogosphere has been raving about a couple of recent announcements from Google yet seemed to ignore similar functionality when it showed up in competing products. Here are three examples from this week.

  1. In his post entitled I know, cry me a river Reeves Little writes

    Case in point: looks like Google is in some sort of closed beta for a domains service and the digerati are all a-buzz.  Hmmm... turns out some of my colleagues in Redmond launched a new domains service for Windows Live way back in November, it's open to the public AND we have a bunch of folks using it including a slew of universities around the world

    I like that there is a Windows Live @ edu video so people can see what the program is like. But as Reeves points out, you don't have to be an educational institution to bring your own domain to Microsoft and have us host your email. With domains.live.com anyone can do that.

  2. In his post entitled Hotmail & IM Mike Torres writes

    The web is abuzz with talk of Google's new Gmail feature; Gmail Chat. I'm not too happy about giving one of our competitors airplay on my blog for integration that has been available in Hotmail for years... so instead, I'll take this opportunity to discuss the Hotmail features in a little more depth.  Note that I'm talking about the vanilla, standard-issue Hotmail used by hundreds of millions of people worldwide - not the amazing Windows Live Mail currently in limited beta testing.
     
    If you're already using Hotmail, you may know that Hotmail blended instant messaging with email a while back in a bunch of interesting ways. We started with merging your contact list into a unified list; a project I worked on about three years ago when I first joined MSN. Your Hotmail (or Windows Live Mail) contact list and your MSN Messenger (or Windows Live Messenger) contact list are one and the same - the only difference is that some contacts are "Messenger enabled".  It's fun to see other service providers start to pick up on this concept, as we've always thought this approach made a lot of sense.  A contact is a contact is a contact!

    Now that you've got your unified contact list... from within Hotmail, you can also see online presence information (online/offline/away) next to any email you receive or from within the Contacts tab (provided you have access to that contact's presence).
     
    Taking this a step further, whenever you receive an email from someone on your contact list, you can "Instant Reply" via IM instead of sending an email. Very handy feature for those of us smitten with IM. The Instant Reply feature immediately pops open a conversation window, complete with voice, video, games, and of course, text chat. No shortage of things to do with your friends here!

    But one of the great (and somewhat unsung) features in Hotmail is its ability to use MSN Web Messenger (http://webmessenger.msn.com) if you don't have the MSN Messenger client running on your PC. This means you don't have to install anything to get this stuff to sing. It just works for you.  When you sign-in to Hotmail, you immediately - without having to run anything else - have the ability to send and receive instant messages and check to see if your contacts are online.  Of course, things get a lot more interesting if you download MSN/Windows Live Messenger (http://messenger.msn.com) but if you're at a friend's house or at a kiosk in Bali, you don't have to.

    The IM integration into all of Microsoft's mail offerings (both Outlook & Hotmail) is something I keep seeing people ignore whenever they talk about IM integration in mail clients.

  3. Last but not least is Brandon Paddock's post entitled Want to search all your PCs from anywhere? Use Windows Desktop Search. where he writes

    Want to search all your PCs from anywhere?

    Don’t want all your personal data stored on an advertising companies’ server?

    Then you should try Windows Desktop Search combined with the free FolderShare application.  With FolderShare your data remains safely on your PCs, but you can search, browse, and access your data from any internet-connected PC.  FolderShare added search integration with WDS last summer.  They were acquired by Microsoft a few months ago and the product was made free at that time.

    Also, here’s more discussion about Google’s new "feature."

And that's just this week. Whew...
 

Categories: Windows Live

February 8, 2006
@ 03:16 AM

I've mentioned in the past that Microsoft is generally clueless at branding. One of my worries about the entire MSN/Windows Live rebranding effort is that it is needlessly confusing to end users. It seems a bunch of Microsoft watchers have begun to point this out.

In the blog post entitled Is it Live or MSN? Greg Linden writes

I think there is quite a bit of brand confusion here.

With Microsoft slapping the Live label on everything and its mother and promoting the Windows Live brand as the future of Microsoft's web effort, I'm not sure what happens to the existing MSN properties and well-established MSN brand.

Will MSN Search become Windows Live Search? Will MSN.com redirect to Live.com? If not, will Microsoft try to maintain two brands, Windows Live and MSN? Where is the dividing line? What is the difference? Will users understand that difference?

Back in December 2005, I rashly predicted that "Microsoft will abandon Windows Live." After a bit of a ruckus about that, I elaborated by saying that there is "too much confusion between live.com and msn.com" and that "the MSN brand is too valuable to be diluted with an expensive effort to build up a new Windows Live brand."

Perhaps I am overestimating the value of the MSN brand. Perhaps, at the end of the day, it will be Windows Live that is left standing.

Either way, there can be only one. Few outside of the digerati know about Windows Live right now but, when Microsoft tries to promote this to the mainstream, the brand confusion is going to be severe. Something will have to be done.

In a blog post entitled Warning: Massive upcoming consumer confusion one of the creators of LiveSide writes

Over the last few days I've realised just how bloody the battle of Windows Live vs MSN rebranding is going to be.
 
Wakeup call #1 was when I tried to explain Windows Live to a regular home user. Thirty minutes later and my progress was minimal to say the least, though they had at least grasped that Windows Live Messenger was infact MSN Messenger with a different name. I hadn't even started on Live Favorites, Live Local, Expo and Live.com. Nor had I mentioned that MSN was still going to exist.
 
Wakeup call #2 was reading the responses to my post yesterday. Notably this and this. The general consensus seems to be one of confusion. These are technology bloggers, they should be getting Windows Live 3 months on from the original announcement and only a few months short of the first wave of launches. No wonder the marketing and advertising people I've spoken to have been commenting on the massive amounts of money that are being pumped into this transition.
 
Windows Live Sessions has been a good start in educating the early adopters, however much more needs to be done and quickly too.

I personally think that MSN is a pretty strong brand especially when it came to its communication assets (MSN Spaces, Hotmail and MSN Messenger) and we shouldn't be trying to replace it. On the other hand, I can see the need to reinvigorate the Windows brand especially in a world where "Web 2.0" and "AJAX" are the only buzzwords that seem to get analysts excited. The way I see it, the die is already cast and we now have to stay the course. It will likely be confusing for end users but at the end of the day they'll have a bunch of compelling online services which improve their Web experience. At that point, who really cares what they are named?


 

Categories: Windows Live

From the press release Microsoft Announces Pricing and Licensing Details for Windows OneCare Live we learn

Microsoft Corp. today announced final licensing and pricing information for its soon-to-be-released Windows OneCare™ Live, the all-in-one, automatic and self-updating PC care service aimed at helping consumers more easily protect and maintain their PCs to keep them running well. Now available free to new beta testers in the United States, at http://ideas.live.com, Microsoft® Windows OneCare Live will be available in June from retailers and via the Web for an annual subscription of $49.95 MSRP for up to three personal computers. To thank its valuable beta customers and offer an easy transition to the paid service, Microsoft also announced today a promotional deal offering the first year of Windows OneCare Live service for $19.95 to beta customers who become subscribers between April 1 and April 30, 2006.
...
Designed to Fit Customer Needs

Microsoft research showed that most people’s computers are insufficiently protected from threats such as viruses because users find the protection process confusing and frustrating, and even if they once had protection services on their computers, they are often out of date. Many others have rarely, if ever, backed up the important data on their PCs or regularly run the performance maintenance tasks needed to keep their computers running well — which is risky in a digital age when consumers rely more and more on their PCs in their daily lives. As a part of Microsoft’s overarching efforts to deliver software and services that better protect customers, Windows OneCare Live provides a “just take care of it for me” service that keeps consumers’ needs at the center of the experience. When available as a paid subscription service in June, Windows OneCare Live will include the following features:

Protection Plus includes anti-virus and firewall protection and automatic updates, as well as anti-spyware functionality powered by Windows® Defender, to help protect the PC and the customer.

Performance Plus delivers regular PC tuneups to help maintain computer performance and reliability.

Backup and Restore delivers easy-to-use backup and restore functionality for the full PC.

Help and Support provides effective help when needed through a variety of modes — e-mail, phone and chat — with all service support coming from PC care experts at Microsoft for no additional charge.

Those who want to participate in the free beta test of Windows OneCare Live until April 30 should visit http://ideas.live.com.

I've been surprised to find out that Windows OneCare Live seems to be the one service that seems to resonate with end users the most when I talk to them about Windows Live. I can't tell if that is a good thing or a bad thing. :)


 

Categories: Windows Live

February 7, 2006
@ 12:35 AM
I've recently been thinking about the overlap and differences between applications for reading email and applications for reading RSS. I started thinking more about this topic after reading the following excerpted blog posts.

In his blog post The RSS Experience in IE7 Joshua Allen wrote

Dare says as much; IE7 was not intended to replace tools like RSS Bandit, NewsGator, or Outlook 12. It's not a matter of trying to keep small ISVs in business, as much as a decision to put the RSS-Bandit style reading experience in the products where it belongs; namely Outlook and OE. IE7 doesn't read NNTP feeds either; that's what OE is for.

In his blog post Email is Abused Omar Shahine wrote

I firmly believe that email is a fantastic tool, and that it’s also heavily abused in the work place. More often than not, what you hear when you send an email is deafening silence or a flurry of incomprehensible replies breaking threading and screwing up the conversation flow.

It is my firm belief that many folks don’t have any system for dealing with their email. They get overwhelmed by the amount of mail that they have, and as a result are unpredictable in getting back to you (if they do).

What this means is that not only do you have to manage your inbox, but you have to manage their inbox. I’ve started to write things down that I want to talk to people about, and every so often, walk into their offices and talk about the issues. It’s weird as this is what I used to do long before email got crazy.

On the one hand, Joshua Allen argues that consuming RSS feeds should be the purvey of traditional mail readers. On the other, Omar Shahine points out that traditional mail readers do a poor job of enabling people to manage information overload in environments with high rates of information flow. I agree 100% with the implications of Omar's post. Traditional 3-pane mail readers do a very poor job of enabling people keep on top of the information they consume. Thus, I think it's a bad idea to add yet another fire hose of information into the mix (i.e. making a traditional mail reader like Outlook my primary RSS reader).

I've not always been of this opinion. A few years ago I wrote a blog post entitled RSS, WinFS and Building a Universal Information Client where I discussed the concept of a universal information aggregator and argued that Outlook was the closest application to what I envisioned. Since then I've become familiar with the term digital lifestyle aggregator (DLA) which is similar to and better defined than my idea of a universal information aggregator. I believe that the DLA concept gives a clear idea of what information aggregators such as personal information managers and RSS readers should evolve into.

Why did I change my mind about Outlook being the ideal DLA? Well, the longer I worked on RSS Bandit, the more I felt that mimicing Outlook in its entirety wasn't the right approach for approaching building an RSS reader. I mentioned some of the problems I have with the Outlook model in my post The Problem With RSS Readers Inspired By Outlook where I wrote

The major problem is that the Outlook mail reading paradigm has a fundamental assumption which turns out to be flawed. It assumes you want to read every item you get in your inbox. This flawed assumption leads to the kind of information overload that hampers the productivity of lots of people I know at work. I've met several people who seem to always have hundreds unread items in their email inbox. For this reason I always have to learn who's easier to reach via IM or swinging by their office in person than sending them mail.

Most people I know get four classes of messages in their information aggregators (I am lumping reading email, reading news and reading RSS/Atom feeds into a single category). These are

1. notifications (checkin mails, comments to my blog, etc)
2. headlines (email newsletters, feeds from news sites, etc)
3. messages sent directly to me or that is similarly relevant
4. messages sent to an interest group I am a part of (XML-DEV mailing list, comp.text.xml newsgroup, etc)

The problem is that the typical Outlook inspired information aggregator treats all of the above as being of equal relevance. Even though Outlook does provide mechanisms for managing assigning relevance to incoming messages, they are either hard to find or cumbersome to use.

This is definitely one of the areas that needs to be improved in the world of information aggregators in general and RSS/Atom readers in particular.

The bottom line is that I think that traditional mail readers do a poor job of enabling people to manage the amount of information they consume today. With RSS, we've had the opportunity to experiment with different models of presenting information to users from "river of news" style aggregators to personalized portal pages instead of sticking to the traditional 2  or 3 pane readers which dominate email and news readers.

Unfortunately, the major browser vendors haven't gotten in on the act. Instead of using RSS as an opportunity to explore new ways of presenting information to users we've seen rather lame attempts at RSS integration into the browser such as Firefox's Live Bookmarks feature and the upcoming integration of RSS into IE 7 which is just slightly better.

So where are we? The major browsers have punted on solving the information overload problem caused by RSS while integrating it into their products. Similarly, mail readers already suck at dealing with email information overload let alone when RSS feeds are added to the mix. As it stands, I'm not sure where we're going to from here. In the meantime, I'm going to start exploring alternative Web browsers like Flock. Perhaps they'll be bolder in re-imagining how to improve the overall experience of people using the World Wide Web today.


 

February 6, 2006
@ 11:00 AM
I just spent 35 minutes working on a post on RSS and Email only to lose it because Firefox crashed. The main reason I started composing my blog posts in Firefox was because I had lost some posts due to crashes in Internet Explorer. I guess it's back to writing my blog posts in Emacs.

*sigh*


 

Categories: Ramblings

Nick Bradbury has a post entitled Feedback on IE7 Beta 2 from the Developer of FeedDemon where he gives a lot of good feedback on the recently released IE 7 beta from his perspective as the developer of an RSS reader. Although I've given some feedback on the RSS reading functionality of  the IE 7 beta, I realize it would be more valuable to give my thoughts on the Winows RSS platform since this is supposed to make the job of people like me who've built RSS readers better. Below is a smattering of feedback divided into pros and cons of using the Windows RSS platform versus using the version we've built for RSS Bandit. Note that as Nick says in his post given that I've already written a lot of the ugly code needed to handle feed downloading, caching, parsing, etc. actually switching to use the Windows RSS platform is a load of unnecessary work for me. My feedback is based on the kind of support I'd need from the platform to implement the scenarios currently supported by RSS Bandit .

PRO

  • COM API  was very straightforward to interact with from  .NET applications
  • Built-in support for downloading enclosures in the background is nice
  • Good support for asynchronously downloading feeds. This means application developers don't need to write a bunch of multithreaded/asynchronous code themselves. That is definitely a godsend.
  • One can serialize feed objects to  XML

CON

  • No support for application specific feeds. The Common Feed List assumes that user needs to use the same list of feeds in the various applications used for subscribing to feeds. I think this assumption is fundamentally flawed. I might use one application for downloading podcasts (e.g. iTunes), another for reading blogs (e.g. RSS Bandit), and yet another for browsing photo feeds. Since it doesn't make sense for my blogs to show up in iTunes, it would be cool if I could identify either the type of feed (podcast, text-based, etc) or the favored application for reading the feed via the API.
  • No support for password protected feeds. The number of password protected feeds on the Web continues to grow, Web sites such as GMail and LiveJournal provide authenticated feeds for users today. As the usage of syndication technologies like RSS continues to grow, the need to support authentication by feed readers will also grow as well. I can imagine a day when I can subscribe to a password protected feed from my bank or credit card company. Not having support for this today is a non-starter.
  • Support for obtaining XML elements which aren't supported by the API. It would be nice if there was a property for obtaining extension elements in a feed that didn't involve having to convert the feed object to XML then using XPath. Being able to perform a call like  Feed.GetItem("http://wellformedweb.org/CommentAPI/ ", "commentRss") to get an element which isn't mapped to a property in the Feed object is a lot more desirable than writing DOM or XPath code to extract that element from the results of calling Feed.Xml
  • No ability to append application specific metadata to feeds. RSS Bandit supports notions like flagging items and we'd need some way to indicate that items are flagged if we are using the API.

Most of this is just based on reading the Using the Microsoft Feeds API document on MSDN. I'm sure I'd have more feedback if I took a pass at replacing all the feed processing code in RSS Bandit with the Windows RSS platform. However I don't think I'll have time to do that anytime soon.


 

Next month, I'm currently scheduled to attend both the O'Reilly Emerging Technology Conference and MIX '06. Given my current work load it is unlikely that I can afford to be away from work for almost two weeks next month. It's likely that I'll just attend one conference next month, in which case it will be ETech not MIX. I was talking to some folks at work about this recently and we talked about the difference between O'Reilly conferences and Microsoft conferences which led me to this decision.

Microsoft's conferences are about technology and often are pitched as training events. The pitch is usually some variation come spend three to five days learning about exciting Microsoft technologies. The MIX '06 website currently has the following on the front page

  • Learn how to deliver revolutionary media-rich Web content with the new Windows Presentation Foundation,
  • Explore Windows Live!, Microsoft's new consumer services strategy
  • Find out how to extend your content, media and services into the living room with Windows Media Center and Xbox 360™
  • etc

O'Reilly conferences are often about getting interesting people together. The pitch is usually some variation of come spend three to five days listening to and meeting exciting people in the technology industry. The O'Reilly Emerging Technology Conference has the following speakers highlighted on the front page

  • Ray Ozzie
  • Jon Udell
  • Joel Spolsky
  • Tim Bray
  • Mark Pilgrim
  • Danah Boyd
  • Sam Ruby
  • Kevin Lynch
  • Linda Stone
  • Clay Shirky
  • etc

If you were a Web geek and only had enough time to attend one conference, which one would you attend?


 

Categories: Web Development

One cool side effect of the fact that so many people at Microsoft use RSS Bandit is that sometimes I get to have some of the folks who invented the technology it is built on helping me track down issues. For example, many of our users have complained about issue mentioned in the following post entitled Problems running from non-administrator account.

There's a slight problem if you run RSS Bandit from an account that isn't member of the Administrators security group.

When you run RSS Bandit (at least the first time after installing), it writes to a file called "rssbandit feed installer.InstallState" in "%ProgramFiles%\RssBandit". If you run as administrator that isn't a problem, but non-administrator accounts won't have write access to anything under %ProgramFiles%, which will prevent RSS Bandit from starting.

A workaround is to add write permission for "everyone" for that specific file.

It turns out that someone actually filed a bug against the Windows Installer team because they had problems installing RSS Bandit on their computer. Not only did the developer assigned the bug track me down to tell me what I was doing wrong in our installer but  Rob Mensching has also promised to swing by my office next week to give me some tips on writing installers.

Below is a description of what I was doing wrong from Carolyn Napier of the Windows Installer team.

If the file you’re manipulating for the feed information is in the ALLUSERS profile, then you will need to be an admin to access it. The current type specification for the custom action is 1025, which means the custom actions runs with the same privileges as the user that invoked the installation.

You can designate a custom action to run elevated (meaning at a higher privilege level) by adjusting its type. Visual Studio Installer doesn’t expose this, but you can use Orca, the MSI Table Editor, included in the Windows Installer SDK to tweak the type. (Other full-feature authoring tools make this available, like Wix, InstallShield, Wise, etc.).

Instead of 1025, make it 3073. Then your custom action will run with elevated privileges.

I installed Orca, the MSI Table Editor, and found the field she was talking about. It looks like this issue will finally fixed in the next version of RSS Bandit. Torsten has suggested that I use a full-featured installer tool instead of what ships with Visual Studio. I suspect this may be the straw that breaks the camel's back and gets me to start exploring Wix. I'll see what Rob advises next week.

I hope this post helps any other people who've had similar problems with installer projects built using Visual Studio.NET 2003.


 

Categories: RSS Bandit

February 3, 2006
@ 01:25 PM

Danny Sullivan, one of the guys behind the popular Search Engine Watch blog has written a blog post about his RSS reader of choice. The post is entitled Reading Feeds With RSS Bandit and begins

Dave Naylor and I were IMing today about IE 7's new RSS feature. He was very excited. I haven't tried it yet, but the screenshot he sent me didn't make me think it was better than the RSS Bandit feed reader I currently use. I've been meaning to write about that anyway, so this gave me an excuse.

Let me preface this by saying that everyone seems a bit different on how they read feeds. Some do it for pleasure, and they aren't worried about missing something, in the same way they might not worry if they missed a day or two of reading the newspaper. Others read for work and maybe manage a ton of feeds (that's me). Others seem to want to read one feed at a time, something I've seen some people describe as "wrong" or "stupid."

My feeling is that there is no "right" way to read feeds. Anyone who tells you that is the stupid one. What's the "right" way to read a newspaper or watch TV. Can you start with Business and then read the main news sections. Do you need to watch each program from beginning to end or is flipping allowed?

Read feeds however you want. What is helpful is to hear about how others do, because you can pick up tips or ideas on how you might improve your own reading.

I'm going to explain how I've shifted in my own reading. I hope some find that useful, but like I said, I'm not saying this is the "right" way to read nor that I use the "right" tool that everyone should use. It just what works for me.

Danny goes on to talk about the various ways one could choose to use RSS Bandit from treating it like a mail reader and viewing posts one by one as new items show up in each feed to consuming them in the "river of news" style by always reading the "Unread Items" folder. In building RSS Bandit we've tried to make it flexible so it can be adapted to multiple reading habits since as Danny says in his post there is no "right" way to read feeds. Different people find different approaches more suited to their needs. 

One thing Danny suggested which I haven't commented on before in my blog is the ability to organize feeds according to tags. I've thought about this a little over the past few weeks, specifically I've been comparing the user experience of Windows Live Favorites which is folder based with that of del.icio.us and Bookmarks in the Google Toolbar which are both tag based. One thing that seems clear is that it would be difficult to mix and atch (i.e. merge) both models. We'd probably have to let users switch between a traditional folder view which would use the current tree control and a tag view which would use a control similar to Eyefinder which mimics the Outlook 2003 user interface. Of course, this assumes that the main benefit of the tag view is so people can have feeds show up in multiple 'folders'. If people want other tag-based user interface features such as tag clouds then that would be problematic to implement as a Windows user interface component but may work as a newspaper view that is tied to the tag-based view.

The more I think about it the more I think there is definitely room for experimentation here. Now if only I could find some free time to experiment with some of these ideas. :)


 

Categories: RSS Bandit

A few days ago, in my blog post entitled Some Thoughts on the IE 7 Beta 2 Preview release I described the RSS features of IE 7 as unsatisfactory and disappointing. It seems I'm not the only one who dislikes what the Internet Explorer team has done with RSS.

In his post RSS Is a Glorified "Favorites" Feature Scott Karp writes

RSS is in Internet Explorer 7!!! The blogosphere is shouting from the rooftops. Yawn. I tried RSS in IE7, and it highlights the true shortcoming of current RSS applications — it’s really not much of an improvement over “favorites” or “bookmarks.”

IE7 goes so far as to put the RSS reader in same menu as favorites (or as TDavid puts it “A separate “Feed Center” exists inside the Favorites area.”), which appears in a left-hand navigation column.

So what’s the real innovation over Favorites/Bookmarks in terms of user experience? That it “automatically updates”? That I can get everything all in one place? That it highlights what’s new?

In his post RSS Really Sucks Paul Kedrosky writes

A while back I wrote that RSS sucks, and now that I've had some more time to think about it I've come to a deeper and more nuanced conclusion: RSS Really Sucks. The point was driven home recently as I read articles by people arguing that IE7 from Microsoft does RSS well enough to kill off a few standalone aggregators. I suppose, although that's a little like saying that buggy whips drive milk-wagons so well that people will soon stop using willow branches to goad horses.

Why? Because, as Scott Karp points out, the IE7 RSS implementation is as glorified "favorites" -- bookmarks, in other words. And they are particularly irritating bookmarks, ones that continually change and needle you as more "information" (I use that advisedly) comes beeping and streaming into your computer.

The main reason I am so irritated by IE 7's lackluster user experience around RSS is that you only get one chance to make a first impression. Using IE 7 will be the first time millions of people will be introduced to RSS and it would be unfortunate if they come away from thinking that is potentially transformative and liberating technology is simply a kind of "bookmarks that nag you all the time" feature.

I've heard some people say that if Microsoft integrates a high quality RSS reader into the browser then it would kill the desktop aggregator market which is the kind of thing Microsoft gets in legal trouble for all the time. My response? That is Death by Risk Aversion. What matters is making end users happy, not worrying about making features that suck just enough that people have to go out and buy software that does the job well so we don't get in legal trouble. 


 

February 3, 2006
@ 02:59 AM

One of the things I have learned about shipping software is that no matter how much work you put in beforehand, you're going to have to make some changes (fix bugs, tweak code, etc) after your software is actually in the hands of end users. Last week's update to MSN Spaces was no different.

Mike Torres talks about some of these changes in his post Some updates (and a new feature!) where he writes


We updated some things today; every one of those things was based on direct feedback from you guys.
 
I want to comment on just a few things quickly...
  • We have a new feature: the Windows Live Favorites Beta module.  OK, OK.  I know what you're thinking... "Didn't you guys just release a bunch of new features last week?"  Yes...  Yes, we did.  But we wanted to use this opportunity to introduce yet another cool new and exciting feature.  Don't know what Live Favorites is all about?  Check it out here - and then add the module to your space to share your bookmarks with your friends... or the world!  Bill has a complete overview on his space.
  • Links in the RSS feeds didn't point to the actual entry, it pointed to the blog page and now it points to the entry like it should have.  Hence everything is probably unread again in your RSS reader :(  But, it's FIXED for good! So if you were wondering what's up, that's what was up.
  • Overall performance and stability improvements.

And the kicker...

  • Comment ordering is back to the way it was before.  Thanks for all the feedback; I really didn't like it either.  When you're used to something, sometimes it's just better not to touch the thing.  Of course, there will be people who don't like it the "old" way either!  But that's a risk we're willing to take at this point to make sure the other 99% of you are happy again.  Thanks Eileen, Tony, Becky, and others who made this happen :)

There were also about a dozen or more fixes here and there...


What about Photos?  We're also working on some simply outstanding stuff here... but this work will take some more time.  Rest assured, we hear you loud and clear about Photos.  So we think you'll really like what's coming up!


One of the reasons I like Web-based software is that we can ship bug fixes to our users quickly without having them deal with installing patches, updates or downloading new installers as is the case with desktop software. I love the Web!!!

PS: Mike is right that there are some cool improvements to photos being planned for the MSN Spaces service.


 

Categories: Windows Live

In his post Thanks Bloglines Mike Torres writes

Over the course of the last few days, we noticed a problem in the way Bloglines was displaying feeds from MSN Spaces.  This problem was due to our recent URL change and the way we're redirecting visitors from http://spaces.msn.com/members/mike (as an example) to http://spaces.msn.com/mike.  Instead of providing the absolute URL to the RSS feed when Bloglines and others requested the feed, we're only returning the relative URL (i.e. "/mike").
 
Because of this, Bloglines had to turn around a fix to support relative URL redirects in record time.  Within just a couple of hours of contacting them, they had diagnosed the issue, fixed up all the Spaces feeds in their entire system, and patched the redirect logic to make sure it wouldn't happen again.  During this time, the subscriber lists/counts associated with a feed weren't updated for a little while (my 362 subscribers showed as 9, but my ego wasn't bruised) and they even did the extra work to merge "new" feeds with "old" feeds (because when the feed broke, and someone subscribed to the correct feed, Bloglines then had two records for the 'same' feed).
 
In short, this was truly great work by Mark Fletcher and the Bloglines staff.  Sorry guys for keeping you up so late on a Tuesday night!  We'll be making a change to the way we redirect shortly just to make sure this won't be a problem for anyone else in the future.  And for you Bloglines users, you should be back to normal for any MSN Spaces feeds in your list!

Mike and I exchanged mail with Mark Fletcher about this issue on Tuesday, and as he writes we were both grateful and impressed at how quickly the Bloglines folks made changes to fix the consequences of a bug in how we were sending HTTP redirects. Mad props to Mark Fletcher and the folks at Bloglines. You guys definitely rock.


 

In a recent post on the RSS Bandit forums entitled Microsoft Feeds API, one of our users asked when we plan to take addvantage of the Windows RSS Platform. Specifically the question asked was

I downloaded IE7 beta 2 preview and one of the new features is feed support. There really is no comparison between RSS Bandit and the minimilist support IE7 provideds however it is my understanding that there is more to the feed support then the basic UI IE provides. Apparently the Feed API is highly integrated into Vista and has been backported to XP as part of IE7. I would like to suggest (and I have no idea if this is even possible) that RSS Bandit embrace this new API. It's in it's early stages and I'd like to see it mature with the help of RSS Bandit into a usable common feed store for any number of apps (RSS Bandit, IE, plus anything else that decides to use it like the sample screensaver app in the API documentation.) Perhaps that's asking too much but I figured I should at least put the idea out there. It would be really great if, while surfing the net in IE I could subscribe to rss feeds using the IE mechanism, maybe take a quick look through them in IE, then later go back in RSS Bandit and be able to use the much more powerful features (such as stored searches, and folder aggregation) without having to have two copies of my actual feed lists to maintain.

Here's a link to the only info I could find on it so far:
http://msdn.microsoft.com/library/en-us/FeedsAPI/rss/rss_entry.asp

To the various people who have asked this question [including my friends on the IE team], the answer is YES we will support the Windows RSS Platform. As Walter, wrote in his post on Windows RSS Platform there are 3 main components of the platform; the Common Feed List, Feed Synchronization Engine, and Feed Store. Ideally I'd like to use all 3 in RSS Bandit but suspect that it'll be difficult to switch to using the Feed Synchronization Engine or the Feed Store provided by the Windows RSS platform. For example, our feed synchronization engine supports subscribing to USENET newsgroups which I doubt the Feed Syncrhonization Engine in the Windows RSS platform supports. On the other hand, it should be straightforward to satisfy the scenario requested in the quoted post where items subscribed in IE 7 are reflected in RSS Bandit and vice versa.

I need to work out the user interface with Torsten but it should be easy for us to support the Common Feed List. My current thinking is that we'll have a special folder for "My Internet Explorer Subscriptions" as opposed to mirroring the entire feed list in RSS Bandit within IE 7 and vice versa. Thoughts?


 

It seems like I'm not the only person underwhelmed by the recent Internet Explorer 7 beta release. Alex Russell, one of the guys behind the brilliant Dojo Toolkit, has a blog post entitled How IE7 Can Avoid Irrelevance which lists a number of places where Internet Explorer is deficient when it comes to DHTML/AJAX development. He writes

At a minimum, dynamic web apps need the following out of IE and JScript in the very near future:

  • Memory leaks need to simply disappear
  • Fix the cache+gzip bugs
  • Give us getters/setters in JScript or give back watch()
  • Fix the event object. Pass it in to DOM handlers by default. Also, offsetLeft and offsetTop are so ambiguious as to be useless. Give us currentTarget.
  • Bump the limit on the number of concurrent HTTP connections if those connections are initiated after onload (either via XMLHTTP or other methods)
  • Today, allocating more than 5K objects or so brings JScript to its knees. Object allocation cost needs to be O(1)
  • Either revive (and start to fix) VML or give it an SVG-Tiny+DOM facade
  • Give us a persistent, string-keyed, local cache in the MB range (5-10MB/domain seems a good start)
  • Fast DOM queries. CSS selectors or XPath, we don’t care. Just give us a way to say “get us all DOM node objects matching this”
  • A way to toggle the box model on a per-element basis without switching doctypes. The CSS 3 box model spec seems a good starting point

If Microsoft is to re-build any credibility around their browser, they need to show us the goods. CSS fixes won’t suffice this time around.

This is a pretty good list and it contains a lot of the features Jon Udell mentioned that he would like to see in future versions of Internet Explorer in his post Further adventures in lightweight service composition . The only thing I'd change about Alex's post would be to rename it How IE8 Can Avoid Irrelevance. I've worked at Microsoft long enough to know that by the time a product hits beta 2, the only kind of changes you are going to see are fixes to major [as in crashing] bugs, security fixes and low cost cosmetic changes. I can only hope that it doesn't take us another five years to see the next version of Internet Explorer

On the positive side, it looks like Dean Hachamovitch who runs the IE team not only has read Alex's blog post but posted a response . That's a good start. .


 

Categories: Web Development

February 1, 2006
@ 05:22 PM

Ken Levy has a blog post entitled From product manager to product planner where he writes

After working as a product manager in the developer division for the past 4.5 years, I've decided to accept an offer to work in a new position at Microsoft. Starting in March, I will be a product planner working on developer community efforts in a new group within the Windows Live division.

I'll definitely miss the regular interaction with VFP team members and the great Visual FoxPro community. I've also had great experiences working with the WebData XML team on the XML tools story for Visual Studio 2005, doing some community work with the VB team, and helping with content for Channel 9 both in front of and behind the camera. I expect to continue to do interviews and be interviewed for Channel 9 from time to time ongoing since it is such a great site for community efforts and transparency.
...
I can't say much about my new role just yet. To get an idea of just some of the developer centric things I'll be working on in the Windows Live team, check out the recent 21 minute video by Robert Scoble on Channel 9 interviewing my new manager, Windows Live group product planner Scott Swanson...MSN Messenger APIs

Given that I was one of the folks who pitched Ken on coming over to work on the developer platform activities in Windows Live, I'm glad to see him come over. When I was on the WebData XML team I saw Ken do great work in evangelizing the XML tools we built for Visual Studio 2005. I can't wait to see what he does for the various APIs we plan to develop around Windows Live.


 

Categories: Windows Live