MSHTML: layout engine completely rewritten for Internet Explorer 8

MSHTML is the Windows component that renders HTML. It is part of Internet Explorer but also used by other applications (both from Microsoft and from third-parties) to embed HTML content; it is still sometimes called by its code-name, Trident. I’ve been interested in MSHTML for some time, and have worked on a free .NET wrapper called HtmlEditor.

At Mix08 I attended a session by Lead Program Manager Scott Dickens on cross-platform layout with IE 8. He told us that the layout engine in MSHTML “could not get us to where we needed to be” for the more standards-compliant IE8, which implements the CSS 2.1 spec. Therefore, the engine has apparently been completely rewritten.

As an aside, Dickens mentioned that the IE team worked with other teams in Microsoft that have layout expertise in order to rewrite MSHTML – he didn’t say which, but one imagines the XAML/WPF folk could have been helpful.

I clarified this point later. MSHTML actually lives on in IE8, but contains both the old and the new layout engines as different code paths. If you specify a quirks mode in IE8, it will use the old layout engine; but if you ask for best standards support (now the default), it will use the new layout engine. However, where MSHTML is embedded into another application, it will still use the old layout engine by default. “For hosted Trident, it will maintain that IE7 compatibility,” Dickens told me, though it will still be possible to opt-in to the new layout engine.

Technorati tags: , , , ,

Steve Ballmer: post Yahoo, we will be a PHP shop

Steve Ballmer took a few questions yesterday at Mix08 in Las Vegas, and I asked him what Microsoft would do with all Yahoo’s PHP applications if its takeover bid succeeds, especially where they duplicate home-grown applications that are running on ASP.NET.  PHP is deeply embedded into Yahoo’s culture, and Rasmus Lerdorf, who invented PHP, works at Yahoo as Infrastructure Architect.

He gave me a fuller answer than I expected, which is worth quoting in its entirety:

There’s really two different questions. In a number of areas, and I won’t go into specifics, but we will have to make some kind of integration plans after presumably we reach deal and it will be appropriate to talk to the Yahoo guys. We shouldn’t have two of everything. It won’t make sense to have two search services, two advertising services, two mail services, and we’ll have to sort some of that through. Some of that technology undoubtedly will come from Microsoft’s side, and some will undoubtedly come from Yahoo’s side, whatever technology comes, it will also come with an infrastructure that runs it.

You ask what we will do with those PHP applications? I’m sure a bunch of them will be running, at high scale and in production for a long time to come.

I think there’s going to be a lot of innovation in the core infrastructure which we have on Windows today with ASP.NET, and Yahoo have in Linux and PHP today, and over time probably most of the big applications on the Internet will wind up being rebuilt and redone, whether those are ours, or Yahoo’s, or any of the other competitors. But for the foreseeable future we will be a PHP shop, I guess if we own Yahoo, as well as being an ASP.NET shop.

One of the things I love which we got into the new Windows Server, is that we put a lot of attention in to making sure that PHP applications run well on Windows Server. That’s not the current Yahoo environment and I’m not suggesting that we would transition that way, but for those of you who do have PHP skills, we are going to try and make Windows Server the best place to have PHP applications in the future.

It was a good answer, though I’d still expect integration to be difficult. One danger is that post-merger infighting over what gets preserved and what gets scrapped could stifle innovation. Microsoft’s Live platform actually looks increasingly interesting, as we’ve learned here at Mix, and I imagine that some of these teams will be nervous about what will happen to their efforts in Microsoft-Yahoo becomes a reality.

Thoughts on Mix08 Day One

So how was the Mix08 keynote? Let’s start with the good stuff. It went without a hitch; it was engaging; we saw some terrific Silverlight demos; and Internet Explorer 8 looks like a compelling upgrade. Not all Microsoft’s keynotes are this good.

Did Ray Ozzie make sense of Microsoft’s overall Internet strategy? I’m not sure. He was too visionary for my taste. That said, he made some interesting remarks. He says that “all our software will be significantly refactored” to better integrate with cloud-based services. He says that businesses will be able to choose between on-premise and cloud-based services. He says that virtualization is the key to a rise in utility computing. He also spoke of advertising as the commercial engine behind the next generation Internet.

Scott Guthrie, now Corporate Vice President of Developer Division, gave an impressive tour of what is happening with ASP.NET and Silverlight, with the latter the main focus. He says that Silverlight is now getting 1.5 million downloads daily. As expected, he announced the beta of Silverlight 2.0, which you can download now. He also announced Nokia’s support for Silverlight on Symbian, though this news actually broke on Monday. It is still significant, though getting any runtime deployed on mobiles is an arduous task: carriers as well as manufacturers have to be convinced of the value. He also mentioned that Sharepoint is getting Silverlight web parts.

Silverlight demos included Aston Martin, Hard Rock Cafe, and NBC’s site for the 2008 Olympics. Highlighted features included Silverlight’s zooming ability, which is the technology formerly known as Seadragon and now called DeepZoom, and HD video. The Olympic demos were engaging, with features like the ability to do instant, user-controlled replay of live video. Aston Martin’s demo showed how well Silverlight works for exploring an online showroom, inspecting and customizing your chosen vehicle in a virtual environment (I saw a similar Flash-based demo at Adobe’s Flex and Air launch a couple of weeks ago).

Dean Hachamovitch showed off IE8; I blogged about this yesterday.

Now, the tough questions. Silverlight looks great; but we saw similar demos here last year. Silverlight 2.0, which is the one most people care about, is now closer to release; but equally Adobe has moved forward with Flash, in particular improving its video capabilities, and the question hanging in the air is: what does Silverlight offer that Flash does not? In this respect, one of the more interesting remarks in the keynote came from a guy from Weatherbug, who demoed a Silverlight app which he said was running on Symbian. He observed that their developers had also tried to develop in Flash Lite, but it has proved costly (in development time) and “didn’t really work”. The Silverlight app by contrast had been done in three weeks. This is Flash Lite of course, not the full desktop Flash, but it would be fascinating to know what the critical differences were.

As for IE8, it is a huge step forward in standards support, but if you subtract what is arguably catch-up to FireFox, what are we left with? Activities and Web Slices look handy, but these are not major pieces. IE8 is not done yet, and apparently there will be more user-centric features before it ships – but when will that be? Microsoft’s Chris Wilson told me last year that it would be around two years after IE7, which would be autumn 2008, but that looks optimistic to me.

Overall my feelings are appropriately mixed. There is plenty of good stuff here, and Silverlight will be great for Microsoft platform developers who can integrate it seamlessly into their ASP.NET web applications. Whether it can mount a serious challenge to Flash in the wider Internet remains an open question.

Technorati tags: , , ,

What’s new in IE8: Activities and Web Slices, developer tools

Here at Mix08 in Las Vegas, IE head honcho Dean Hachamovitch has introduced Internet Explorer 8, which he told us will be available for beta download later today.

The big features are CSS 2.1 standards compliance (now the default), and two new things called Activities and Web Slices.

Activities are a way of installing browser add-ons that enables new instant links. You can select text in a web page, right-click, and get links for things like “buy on eBay” or “see user reviews”. This is enabled by an XML specification called the OpenService Architecture, which is being released under the Microsoft Open Specification Promise.

Web Slices are a way of subscribing to page fragments, or perhaps pagelets (my term). This then appear as links in the IE8 toolbar. Examples we were shown were an eBay auction, and Facebook feeds. Like Activities, this is enabled by an XML specification, this one called the Web Slices Specification. The page author determines what content ends up in the pagelet.

If the specifications catch on, I imagine other browsers could easily implement them.

Activities remind me of the almost-dead Smart Tags, in the way that they enable a new in-page menu of options related to a keyword or phrase. The difference is that there is no auto-recognition; the user has to select some text and right-click.

Finally, we saw some great developer tools for debugging JavaScript and CSS. In particular, I liked the feature which lets you select an element and discover which CSS rule is winning in the rendered page.

Note: Post edited to clarify how Activities work. I misunderstood these at first, thinking they were extra links authored into a page. Apparently they are not: you have to select some text and then use a pop-up menu. The advantage is that we will not get pages festooned with extra links. The disadvantage is that you can easily select text that returns no meaningful result.

I rather liked the idea of multiple destinations for a single link, but it seems this isn’t it.

Technorati tags: , , , ,

Moonlight update: Silverlight 2 on Linux hardly started

Miguel de Icaza has an update on Moonlight, a third-party but official implemention of Silverlight for Linux.

Although progress is rapid, it is disappointing to read that a Silverlight 2.0 implementation is hardly started:

Silverlight 2.0 Other than the JIT support for Silvelright 2.0 at this point we have not done any work on it (well there are 3 classes stubbed privately).

There are two reasons for this: the updated 2.0 API is not public and although we have access to it, it is a bit of a mess to try to keep two separate trees (public and private) to support this and since Mix is just around the corner, we will just wait until next week.

The second reason is that we want to focus on shipping 1.0, completing the media pack integration and working on the configuration aspects of Moonlight (auto-update configuration for instance).

Good reasons; but the question it raises is this: by how long will Linux implementations lag the Windows and Mac releases of Silverlight? Silverlight 2.0 is hugely important because it enables .NET code to run. I constantly meet folk who are developing for Silverlight but waiting for version 2.0 as the real thing. Version 1.0 is browser JavaScript only.

More positively, at least we know that Mono already has a decent desktop implementation of .NET, so the fundamentals are there.

Technorati tags: , , ,

Latest stats: Video web growing fast

Nielsen Online has released statistics about the most popular social networking sites in the UK and their growth year-on-year:

Jan 08

Rank Jan 07


UK Unique Audience (000s) Jan 08

UK Unique Audience (000s) Jan 07

Change in UA Jan 07 – Jan 08

Social media type

















































Add-on tool



Yahoo! Answers







Windows Live Spaces











Travel reviews

Source: Nielsen Online, UK NetView, home & work data, including applications, Jan 2007 – Jan 2008
E.g. YouTube was visited by 10.4 million Britons in Jan 08, 56% more than in Jan 07

Three things I found interesting. First, huge growth for Facebook and a decline for MySpace – but this is a volatile market and Facebook may the the next site to beome less fashionable.

Second, the huge reach of these sites. Neilsen reckons that 20.8 million Brits visited at least one of these sites in January, representing 63% of those online.

Third, the growth of video. I think this is the most reliable long-term trend. You can see it more clearly in Neilsen’s figures for the fastest growing sites, five of which are video sites (vidShadow, Veoh, Youku (Chinese site), Tudou (Chinese site) and Video Jug), as well as in the rise of YouTube to first place.

Is the Internet moving towards video in the same way as traditional media (print -> radio -> TV)? Possibly.

There is a technical story here too. I’m at Mix08 this week, where Microsoft is promoting its Silverlight plug-in for video and rich visual content. However, all these sites currently use Adobe’s Flash plug-in, which will be hard to shift. Without the ubiquity and ease of installation which Adobe has achieved with Flash, I doubt we would be seeing this growth in video content.

Mix08: Rich Internet the Microsoft way

I’ve just registered here at Microsoft’s Mix08 conference in Las Vegas. I’ve heard a lot from Adobe recently, with Adobe AIR just launched, so this is a great opportunity to get Microsoft’s angle on the Rich Internet Application concept. Silverlight 2.0 will be prominent, as will Internet Explorer 8. I asked a developer on the plane what he likes about Silverlight compared to Flash. He told me that it is much easier to create Silverlight content dynamically at runtime, thanks to XAML. Silverlight renders XAML, whereas Flex compiles MXML – a significant difference.

In the Mix “Sandbox” lounge I got my first glimpse of Microsoft surface, which looks compelling. I hope to have  a better play later.

This evening O’Reilly is launching a new book by Christian Lenz called Essential Silverlight 2 Up-to-date. It is a new concept from O’Reilly, using a kind of ring binder (not actually a ring, but you know the kind of thing). The book which I saw is 50% blank pages; but the idea is that you will be able to receive or download additional pages and insert them into the book to keep it up-to-date. Not a new concept, but still an interesting attempt to address the problem of technical books quickly becoming out-of-date. It is particularly suitable for Silverlight 2.0 which is not done yet. At the same time, I can imagine this being a considerable hassle, and pages bound like this don’t turn quite as easily. I hope to review the book in due course.

It turns out that the Venetian Hotel and Casino, where Mix takes place, is a Microsoft customer. How do I know? Well, many of the rooms sport screens over the door advertising various hotel attractions, and I spotted one that has a distinctive Microsoft flavour.

Which goes to show that wherever you are in the world, you are never more than 12 screens from a Windows error message.

If you’re at Mix and would like to chat, by all means get in touch.

New gadgety home page at

The BBC has a new customizable home page, with gadgets similar to those at Netvibes, iGoogle and elsewhere.

First impressions are mixed. I don’t like it’s large size (1024 x 768), even though this is the trend. This issue is not the size of my display, but that I don’t necessarily want the browser to occupy so much of it. I’m sorry there is not more effort put into web pages that resize nicely – one of the reasons I like Times Reader and its cousins.

Second, I found myself with large blank areas after a quick go at customization. I also noticed that even if I selected many more subcategories for the News panel, it is still much less informative and useful than the old-style (and smaller) News home page, which to be honest is normally where I go to when I visit the BBC. I hope there is no rush to update the News page to the same style.

Technorati tags: , , ,

Fixing Server 2003: reprise after two and a half years

Sometimes the Internet reminds me of Tony Hancock’s Blood Donor. You post advice when you have it, and take it back when you need it.

It was like that last night. I am following my own advice and weeding out any instances where username/password combinations are transmitted in plain text. Occasionally I send mail via Exchange as an SMTP server, so I’ve now configured this to use TLS (Transport Layer Security).

All went well until a fatal reboot produced event 32777: The LSA was unable to register its RPC interface over the TCP/IP interface. This is nasty, and causes a host of further errors which pretty much kill networking on the box. I have no idea what provoked it.

Fortunately I’ve had this before – two and a half years ago. Last time I used the blunt instrument of a repair install, but by going back to my earlier post and reading the comments I was able to apply fix this quickly:

  • Change the logon of the RPC service to Local System, as a temporary fix to networking
  • Make changes to local security policy (domain controller policy in this case): Add Adminstrators and Service to the Create Global Objects and Impersonate client after authentication in User Rights Assignment
  • Change the logon of the RPC service back to NT AUTHORITY\Network Service

All very obscure and the kind of thing you have little chance of working out for yourself. It is all to do with changes made by Server 2003 SP1 which appear to break important stuff in some circumstances.

Why not Server 2008? All in good time.

Technorati tags: ,