While the discussion appears to be a debate, I actually find myself agreeing with what Adam says (or not disagreeing at least.)
- We both agree writing cross platform software is hard and can go horribly awry when done poorly.
- We both agree that well-executed cross-platform software is a sign of an excellent development team.
- We both agree (if you read the comments, etc.) that games and productivity software may be different in the need to be "native" feeling (that games like WoW don't need to feel "OS X-like" or "Vista-like" because they take over the whole screen and don't really interact with other apps or the OS.
- We even agree that working cross platform teaches and grows developers in a way that working on a single platform may not.
Where we may disagree is whether this productivity gain offsets the additional costs of working cross platform. I suppose that depends on the product, how much additional work is required to work cross platform, and how good your team is.
Finally, Adam is correct to introduce what is, perhaps, the ultimate metric by which to determine whether a team should do cross platform work: which approach will allow the product to best succeed? Ultimately, this depends on the metrics of success for that product and the market they're in.
In particular, he raises the question of whether our decision to focus IE on a single platform was smart and whether that decision opened the door for Firefox. It's my belief that web browsing should be an integrated part of the overall computing experience, not simply a sandboxed TV-set on the Internet. The work we did on the RSS platform in IE7 and the availability of IE components as Windows platform elements are a reflection of that view. I don't know how efficiently we could further this model by working cross platform. Success for me and IE is how well we can deliver on this vision, so single-platform development makes sense for us. (We had Mac and Unix versions of IE in an earlier day when browser share was our only success metric. As our view changed, those versions made less sense, so we dropped them.)
I think Firefox was able to establish their share because they brought a solid browser to the market when we took our eye off the ball and had stopped investing in the browser; I don't think the fact they're cross platform helps them that much. The vast majority of their users are on Windows (I don't think they're even the most popular browser on the Mac). I really wonder if they'd be better off just focusing on Windows; looking at their bugs and work items, they certainly have a lot of work to do keeping FF running well on Macs, downlevel Windows, and Linux distros. Could they have delivered more of the stuff they had to cut from Firefox 2 if they only had to do Windows? Probably. Would it have mattered? Who knows.
At the end of the day, the market will decide which approach is best in each case. I wouldn't have it any other way.