Outlook, Email, and CSS

Update July 13, 2009: Thanks to some comments, I’ve got new links and minor updates in the post now.

Note: I work for Microsoft, in the Office division, but I don’t work in or with the Outlook team. I don’t have any specific knowledge about their decisions or plans, and this post is based only my own experience here at Microsoft.

The web community has been up in arms the last day or so about a campaign via Twitter pushing for Outlook 2010 to stop using the Word rendering engine for HTML email. I engaged in a short friendly discussion with my buddy Vlad on Twitter about the issue, and that got me thinking about the issue a bit more deeply. And the more I thought about it, and read everything that was being written, the more I realized that people aren’t actually communicating effectively, and that pisses me off…

The fixoutlook.org website says this: “Microsoft has confirmed they plan on using the Word rendering engine to display HTML emails in Outlook 2010.” (emphasis added) Based on that, and the rest of the text on the site, it seems like the big beef they have is that Word’s rendering engine for HTML is not up to snuff. Fair point – it isn’t. But they contradict themselves in their updated response to Microsoft’s response when they say, “We’re asking that the HTML produced by the Word engine be standards compliant. This in turn will ensure that the engine will correctly render standards-based emails.” (emphasis added)

Wait a second. Do they want an editor that produces HTML, or a rendering engine that works properly? Doing the work to make sure the editor is producing clean markup might produce a rendering engine that renders nicely, perhaps it even should produce one, but that doesn’t mean it will. Those two pieces of work are not the same thing.

Lots of people have been pointing to a post from Zeldman about this. Zeldman’s a brilliant guy, but he completely misses the point when he perpetuates a rumor about why Outlook chose Word’s engine: “Rumor has it that Microsoft chose the Word rendering engine because its Outlook division “couldn’t afford” to pay its browser division for IE8. And by “couldn’t afford” I don’t mean Microsoft has no money; I mean someone at this fabulously wealthy corporation must have neglected to budget for an internal cost.”

Ummmm… no. In my experience, the phrase “couldn’t afford” at Microsoft R&D has nothing to do with monetary cost. It has to do with engineering cost. Features don’t exist just because you want them to exist. (An aside: Raymond Chen has a great quote about this that I can’t find. If you have a link, please let me know.) So I imagine that the rationale in the Outlook team went something more like this:

Well, we want Outlook to produce really rich emails, and we want it to have a really familiar look and feel, so people already using our products will feel at home. Hmmm, building an editor is extremely hard to get right, plus we, being part of the Office suite, have several editing tools already. Emails tend to be a lot like documents, so Word seems to be a reasonable choice. This way we can leverage all the editor features Word already has, plus things they’re building this release, and focus on the Outlook-specific work we have to do. We don’t want to invest our engineering time in building an editor when we already have one.

From this standpoint, it’s easy to see why using Word for rendering as well is the next logical step. You could argue that they should use IE (or Gecko, or Webkit, as Zeldman does, but again, just because those engines are free doesn’t mean using them is without cost) to render email, and Word to author it. That’s a reasonable idea. In fact, the Outlook team seems to agree with you, because if you get an HTML email that looks wrong, you see a link to open it in a browser. In fact, even the example image at fixoutlook.org has the “info bar” at the top that does this.

You can take issue with the implementation, certainly, because it sucks mightily. The fact that I have to open the email in a browser separately blows. I shouldn’t have to do that. But don’t kid yourself into thinking that integrating an IE window into the message window is so stupidly simple that Microsoft is maliciously avoiding doing it to somehow screw users. It might be straightforward – I honestly don’t know. But do you? If you think you do, please go read Steve Yegge’s post “Have you ever legalized marijuana?” and come back.

What really bugs me about this whole thing is that people immediately jumped on the fact that Outlook uses Word for rendering, instead of sticking to the real problem that Outlook’s rendering of HTML sucks in some cases. The rendering engine they’re using is immaterial, really, because if the team goes and fixes the rendering inadequacies, then the issue goes away. They can choose how to fix the issues, should they choose to fix them at all, but at this point, even if all the rendering issues are fixed, many people will still be pissed because Word is used to render the email. The argument has shifted from being about the support proper email display to being about Word used for rendering, so there doesn’t seem to be a path to redemption for Microsoft in the court of public opinion that doesn’t involve ripping out Word completely.

I completely agree, personally, that web standards serve as a reasonable basis for email format standards even though there is no formal effort to standardize email. But please argue about the right things. Spend your energy trying to see those standards acknowledged rather than perpetuating this silly argument about ripping out Word from Outlook. Hopefully this effort will have the desired effect, and these rendering issues will get resolved prior to Outlook 2010 RTM. But I can almost completely guarantee that if you want Word completely ripped from Outlook, you’re not going to get what you want.

By the way, does anyone have a screenshot of what the email used in the example image looks like in Outlook 2007, which also used Word for rendering? That struck me as a strange omission. I’m wondering if the issues displayed in that screenshot are just bugs in the 2010 beta. I doubt it, but would still like to see it.

Update: Turns out you can see this in the Email Standards project’s review of Outlook 2007. As I suspected, no real differences.

Also – is there any way to get a sample HTML email from the Email Standards Project’s email acid test? Seems ridiculous there’s no “email me this sample email” form on the acid test page. I can and will file a bug against Outlook if I can get a copy mailed to me.

Update: You can now mail yourself a copy of the email directly from the acid test page.


This didn’t really fit into the overall flow of the post above, but I still think it’s reasonable info to consider, so I’m including it here anyway. I’m about to throw out a bunch of numbers and statistics that are not backed up by any data. They are based only on my own logic and occasionally rational mind. I think they’re true and reasonable statements, but I welcome data that contradicts them.

I think it’s safe to say that a majority, say, 80%, of Outlook users use it with Exchange. Also, a majority of Exchange users use Outlook, and Exchange is primarily used in business settings. Since a large majority of email sent in a business setting is sent to other people in your business, then they’re probably also using Exchange, and also probably using Outlook. Based on this not-so-scientific reasoning, I argue that the number of emails received in Outlook that didn’t originate in Outlook is relatively small. That means, practically speaking, that as long as Outlook can render email that started in Outlook, you’re hitting the majority of your users’ needs.

Now, the idealist in you (and me, for the record) is screaming bloody murder, because you want to see the “right thing” happen for all cases, not just the majority case. But unfortunately, software is more about practicality than idealism, and at some point some smart, but possibly naive people in Outlook made a tradeoff. I’d say with 99% certainty that at some point a developer or two in Outlook estimated the cost of different approaches and implementations, and this one wound up cheaper. They made a cut. They made a tradeoff. And we disagree with the tradeoff.

Tagged : , , , ,

11 Responses to “Outlook, Email, and CSS”

  1. Wait a second. Do they want an editor that produces HTML, or a rendering engine that works properly?

    That’s a good point Tyler, they are not the same thing, but I think there are significant benefits to getting both sides fixed. The benefits of the rendering supporting standards are obvious, but if an editor *produces* standards compliant HTML it will then render correctly for any recipients not using Outlook. That’s a win for both senders and receivers.

    The argument has shifted from being about the support proper email display to being about Word used for rendering, so there doesn’t seem to be a path to redemption for Microsoft in the court of public opinion that doesn’t involve ripping out Word completely.

    Our message has never been that Outlook shouldn’t use Word to render emails. If you look at our original post, we’re asking for the Word rendering engine to compose and render standards based HTML and CSS. There absolutely is a path to redemption for Microsoft. The engine used is relevant if they both support web standards.

    You can take issue with the implementation, certainly, because it sucks mightily. The fact that I have to open the email in a browser separately blows.

    What the screenshot can’t show you is what happens when you click on this bar. First click displays a drop down dialog with the option “View in browser”. Clicking that opens the email again in Outlook with a security warning. You need to press OK to finally open the email in a browser. This might change in future versions, but right now it takes 3 clicks just to get the email to open in a browser. The icing on the cake is that even if it’s not your default browser, it opens the email in IE.

    By the way, does anyone have a screenshot of what the email used in the example image looks like in Outlook 2007, which also used Word for rendering? That struck me as a strange omission. I’m wondering if the issues displayed in that screenshot are just bugs in the 2010 beta. I doubt it, but would still like to see it.

    Sure, you can check that out on the Outlook 2007 screenshot and full review on the Email Standards project site. Compare that to how Outlook 2010 renders the acid test and you can quickly see the results are exactly the same. There is no indication of any HTML rendering improvements between Outlook 2007 and Outlook 2010.

    Also – is there any way to get a sample HTML email from the Email Standards Project’s email acid test? Seems ridiculous there’s no “email me this sample email” form on the acid test page. I can and will file a bug against Outlook if I can get a copy mailed to me.

    Thanks for the heads up Tyler, it was available on the site but wasn’t easy to find. I’ve just added a simple form to the acid test page making it easy for anyone to send the acid test to their email address. Any help you can provide filing bugs or following up would be much appreciated.

  2. Sorry Tyler, forgot the link. Here’s the acid test page where you can send yourself the page for testing.

  3. A thoughtful article Tyler though I think the point a lot of people are missing here is the reversal Outlook has undergone – Outlook 2000 worked fine and then we go backwards with Outlook 2007 and on to 2010 – it doesn’t make sense… Also I think your figures on Outlook – Outlook usage would be way off. All the ESP are looking for is the same consistency in email rendering as we now (thanks to IE8) have in the browser market and I for one can’t think of any rational reason to disagree with the logic in that.

  4. Is there a reason outlook can’t render emails created in word with word and everything else with IE8?

  5. Good response overall Tyler. However…

    I argue that the number of emails received in Outlook that didn’t originate in Outlook is relatively small.

    This is a silly assumption. I work with all sorts of institutions (banks, governments, non-profits, businesses): they all receive email from the “outside” in varying numbers.

    Also, many of them are using an email newsletter app to send email internal newsletters to their own staff. In the bigger orgs, we’re talking about thousand of legitimate emails being sent internally that look like garbage when received by Outlook 2007.

  6. Why put all the effort into making Word do what IE already does (and is getting better at doing)? It seems to me that this would essentially be making Word into a HTML rendering engine, and IE already has that ability. I think that is the reason it sounds like some would argue for IE inclusion into Outlook.

  7. Tyler, I get what your saying, but I think the main reason people are saying “Stop using word to render html” is that it seems like an inefficiency to be maintaining 2 different rendering engines within one company. As web developers we have been waiting a long time for the IE team to improve its existing rendering engine. As we start to finally see that happening it is frustrating to see Outlook not taking advantage of those efforts for the better of ALL their users/products. I can not see any logic at all in having the Outlook/Word team work to improve and update their rendering engine, when Microsoft already has a team doing that with the IE engine.

    It seems logical that the “engineering cost” to bring the current word rendering engine up to the capabilities of the IE8 engine would be greater then the “engineering cost” of integrating the existing IE8 engine.

    Based on that one could quite easily come to the conclusion that since they have not opted to use IE8s engine, as it would cost to much (engineering cost), then it would also cost to much to bring Words rendering engine up to par as well.

    The next logical step is to think that they do not intend to improve the Word Rendering engine (as is supported by the fact that there is also no change since 2007).

    Does it not make sense from that point for developers to to ask for them to take path with the lowest “engineering cost” that will also provide standard complaint rendering of HTML in email?

  8. You know what really bothers me, as a developer? The disingenuous nature of the response. And I mean, REALLY bothers me, because I use Microsoft technology (Visual Studio, .NET, IIS, MS SQL Server). To see that company treat developers with so much disrespect is truly aggravating, and it saddens me.

    It’s aggravating, because it turns out that even if developers join forces and use social networks to speak out, Microsoft feels that it’s fine to ignore them, because they are not the customers. It means to me personally that the ones that cause my very real experienced frustration of developing for Microsoft Internet Explorer 6 and Outlook 2007, think it’s ok not to take me seriously. It’s like a slap in the face.

    It’s sad because apparently, there is a culture in one of the biggest software companies in the world where management feels it’s ok to twist some issue until the message fits the marketing and then shut down the venue of discourse. This is again very disingenuous of Microsoft. And I love software development, and so I’m sad that managers in this industry (Microsoft being such a large entity in this industry) feel that they can subvert the developers’ opinions. Even while their own career is built on the product that is actually built by those developers. It is my opinion that those managers and PR employees should very ashamed and guilty about their acts. If not, they don’t have their heart in the right place, and should consider working in the tobacco industry or becoming lobbyists for oil companies.

    Notice the EXTREME use of corporate speak at the end of the comments on the Outlook blog. They flat out say that they read them and that they are not going to publish any more comments? Why? WHY? I’ll let you think about that yourself, it’s the weekend, so you have two days to think about the company that you work for, that is built on developers, developers, developers, where management shuts down comments BY developers on an MSDN blog FOR developers, because they don’t like the message.

    Me personally, I would have to much pride in my work as a developer to work in such an environment.

    And finally, let me quote you on this:

    “but at this point, even if all the rendering issues are fixed, many people will still be pissed because Word is used to render the email.”

    Let’s wait until they fix ANY rendering issues ok? Because there are simply too many to fix. But all fixes are in IE8, so switching to IE8 would be the most efficient way to fix them for sure. Using zones, securoty cannot and should not be a problem. THEN you can back your claim about the ‘many’ people that would ‘still be pissed’ (I wonder how you are going to back that claim). Because as I see it, roughly 80% of commenters on the MSDN blog complained that they had issues with the rendering. So I can do nothing but conclude that NOT many people would remain pissed when rendering issues are fixed. Quite how you could get to your conclusion baffles me.

    Have fun working in an environment that does not value the opinions of those that created the very company you work for!

  9. @Dave:

    The benefits of the rendering supporting standards are obvious, but if an editor *produces* standards compliant HTML it will then render correctly for any recipients not using Outlook. That’s a win for both senders and receivers.

    Totally agree with you here, but my point is that it seemed contradictory to specify that the rendering was sub-par but then to later say specifically you were unhappy with the quality of the markup produced. They’re related, certainly, and both requests are valid, but from my perspective the overall goal was muddied by the change in messaging.

    Our message has never been that Outlook shouldn’t use Word to render emails.

    Understood. My point is that at some point, the conversation shifted, at least in the Twitter-sphere/blogosphere. I started hearing people cry, “Stop using Word for rendering!” not “Outlook should render email properly.” Obviously I can’t (and don’t) hold you responsible for the change in perception once things hit the masses and got “twisted,” but my point is that if public opinion is that Word for rendering is the culprit, then there’s no real solution to address *public opinion* except removing Word completely.

    What the screenshot can’t show you is what happens when you click on this bar.

    Yeah, it’s worse than I imagined. For what it’s worth, I filed a separate bug on the fact that we’re not obeying your browser preferences. I’ll be posting a follow-up post shortly with a little more detail.

    Thanks for the links – I updated the post to point to them.

    @Damien:

    Good point. It’s worth noting, though, that this behavior actually regressed in Outlook 2007. I think a lot of people are getting the idea that this is somehow a 2010-only thing. That’s not to say the criticism isn’t valid and warranted, but I do, in many ways, wish that it had come last release. (Maybe it did and was ignored then, though.)

    Unfortunately there is a tendency to only look one release back, especially on large multi-year projects like Office, when using historical behavior to help inform decisions about what to fix. That hurts the likelihood of broad change in this case, which sucks.

    @Russell:

    It’s always an issue of engineering cost. Someone has to go and implement that behavior somehow. I can’t think of a technical reason.

    @Dan, @Alex:

    I agree, the trade-off seems incorrect, but my point is that it’s not always clear the risks associated with each approach, and we simply don’t know what went into the decision. I would hope that if the Outlook team chooses to address this that they wouldn’t invest a bunch of time making Word into a perfect HTML renderer. However, I wouldn’t be surprised if this gets fixed “halfway” by addressing some of the rendering issues in Word directly. That might still be cheaper than integrating IE (though I really hope this isn’t the case).

    @Mike:

    I didn’t like the official response either, which is one reason I wrote this post. That, and I wanted to address Zeldman’s “cost” assumptions since I think he missed the mark there.

    I don’t agree with your description of Microsoft culture, but I can see how the Outlook response would give you the impressions you appear to have, and I’m not going to spend time here trying to change your mind.

  10. [...] post on Outlook’s HTML+CSS rendering generated a bit of buzz, due in no small part, I’m sure, to Zeldman linking to it from his own [...]

  11. blockquoteIt’s worth noting, though, that this behavior actually regressed in Outlook 2007. I think a lot of people are getting the idea that this is somehow a 2010-only thing. That’s not to say the criticism isn’t valid and warranted, but I do, in many ways, wish that it had come last release. (Maybe it did and was ignored then, though.)/blockquote

    As I recall, there was quite a hubbub about the regression in Outlook 2007, at least among those who cared. See here:
    http://www.campaignmonitor.com/blog/post/2396/the-truth-behind-the-outlook-2007-change-and-what-you-can-do-about-it/
    I think the Outlook 2007 regression was one of the key events that led the Freshview guys to launch the E-mail Standards Project.

    Youll notice the above linked post ends in earnest optimism, calling for everyone to submit complaints to Microsoft since theyve promised theyll listen. Of course, that promise was relayed by Molly Holzschlag, who maybe had closer ties to the IE team than the Office team. Anyway, this gives context to why people were so upset to find that nothing was changing in Outlook 2010.

    More historical details:
    Pre-Outlook 2007, IE was used to view HTML e-mails in Outlook. Word was used to compose HTML e-mails. (according to a href=http://www.molly.com/2007/01/18/what-happened-with-html-and-css-in-outlook-2007/ rel=nofollowMolly/a). Maybe one reason some people want Word pulled is that they see it as putting IE back, rather than doing something new. Though I doubt its actually that simple!

    Back in 2007, the story from Microsoft (via Molly) on the reason for switching to Word for viewing HTML e-mails was that customers were unhappy when the e-mails they had composed (in Word), looked different (rendered by IE). I can see how the short-term cheaper (engineering-time-wise) solution may have been to render using Word, but to many people that seemed like propagating an error rather than fixing it! This history of reasoning on the Office teams part probably plays into the call to fix the Word *compose* engine, not just the render engine.

    Anyway, thanks for the thoughtful and open-minded discussion of these sensitive issues, and for trying to help make things better.