George and Lars on KHTML and WebKit

Longtime KDE/KHTML developers Lars Knoll and George Staikos recently gave a presentation on KHTML and WebKit at Yahoo. Here’s a video of their presentation. They cover the early history of KHTML, as well as some of the newer things going on with WebKit and KHTML.

One point they mention a number of times is that many sites do a user agent check specifically for Safari. Safari sends the following User-Agent header: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/418.9 (KHTML, like Gecko) Safari/419.3.

We strongly recommend looking for the AppleWebKit string and its version number, not for Safari. There are many other browsers and other applications based on WebKit which should have a near-identical web compatibility profile, both o the Mac and the other platforms. These include other Mac browsers, like OmniWeb, Shiira and Sunrise Browser. They include ports like the S60 browser. And there are non-browser apps like NetNewsWire or Dashboard that may still include live web content.

For the vast majority of cases, you want to check for the layout engine, not for the specific app.

Rant aside though, there’s a lot of interesting info in the video and you should all watch.