The amount of detail shared in this post is very impressive. There’s a good discussion of how the feature will work from the user’s point of view, an insight into the tradeoffs that the design team had to make, and a very frank admission that some of this stuff didn’t really fit into the existing implementation or object model. Knowing how Microsoft works, all of these details probably took a considerable amount of time to hammer out, with input coming in from all sorts of internal and external sources. Rationalizing all of this input in a finite amount of time is a very daunting task.
From time to time I see, hidden behind clouds, an image of a new Microsoft, a bit more eager to discuss what they are doing, able to admit that they are not the center of the universe, open to outside influence and ideas, more eager to leave the campus to interact with outside developers and partners, and far less inclined to simply bang the table and say “We’re Microsoft, they have to do it that way!”