Blog ⋅ Peter Nelson

Apple vs. Web Standards

by peterdn 5. June 2010 22:45

There was much excitement in the Twittersphere and elsewhere on the web when Apple launched it’s HTML5 showcase yesterday, the purported intention being to spread awareness of the upcoming features of HTML5 + CSS3.  In classic Apple fashion it succeeds at this quite well—assuming you are using their very own product.  In fact, the page goes as far as to misleadingly imply that Safari is the only HTML5-ready browser, and also prevents other (equally capable, if not more so) browsers from viewing the demos.*  I tweeted a somewhat tongue-in-cheek screenshot (see below) yesterday showing both Chrome and Safari displaying “The HTML5 Test” results and Apple’s HTML5 showcase, which sums up the deception nicely.  Additionally, the page headline and the blurb about “web standards” makes the whole thing even more ironic. 

This particular view on the story was picked up by a several tech news sites including TechCrunch and OSnews, and by a number of bloggers, notably the Guardian technology blog.  I won’t reiterate what has already been said by these guys, other than to jump on the bandwagon and berate Apple for its blatant hypocrisy and misuse of the term “web standards”.  If Steve Jobs really wants the likes of Flash to die, he may have to rethink his strategy.

Chrome vs Safari

Screenshot showing Chrome 5.0.375.55 and Safari 4.0.5 (531.22.7) (on Windows) displaying the results of the HTML5 test and the Apple HTML5 showcase


* At the time of writing, the HTML5 Showcase still blocks Google Chrome.  However, the exact same demos can be found on the Apple developer site where browser-sniffing is apparently disabled.

Some other vaguely relevant and interesting links:

Intellectual Honesty and HTML5 - Mozilla’s Chris Blizzard’s opinions.
Internet Explorer 9 Test Drive – A similar offering from Microsoft, showing off the (limited) HTML5 / CSS3 features that are to be supported by IE9.  Most of the demos seem to work in Chrome.
HTML5 Gallery – A showcase of “real” sites using HTML5.

Tags: , , ,


(First!) Using WebKit nightly builds with WebKit .NET

by peterdn 2. May 2010 00:53

Having finally built up the motivation to sort this site out, I now need to start thinking about what to actually blog about.  I’ve decided that the plan is to write about my experiences with hacking WebKit and developing WebKit .NET, and whatever else interesting comes to mind.  So, welcome to what will hopefully be the first post of many!  

I thought I’d start off simple with a guide to using the nightly builds of WebKit with WebKit .NET, which is something that a surprising number of people have asked me about.  These are builds of the ‘official’ Apple WebKit port for Windows.  Before continuing, let me reiterate the differences between this and the Cairo-based WebKit port.

The Apple port unfortunately requires certain libraries that are non-redistributable, in particular, CoreGraphics.dll and CFNetwork.dll, though luckily these come bundled with the Safari browser.  The Cairo port, developed by Brent Fulgham, uses the open source Cairo and cURL libraries instead, and is therefore fully redistributable.  It is this port that is distributed with WebKit .NET releases.  It lags a bit behind in terms of feature support, so it is sometimes necessary to fall back to the Apple port in order to try out new features.  To get started:

Download the latest build of WebKit .NET from  Extract the following files to a directory somewhere:

  • WebKitBrowser.dll
  • WebKit.Interop.dll
  • WebKitBrowser.dll.manifest
  • WebKitBrowserTest.exe (optional)

Download the latest nightly build of WebKit from  Extract the following to the same directory as above:

  • WebKit.dll
  • JavaScriptCore.dll
  • QTMovieWin.dll
  • JavaScriptCore.resources/
  • WebKit.resources/

Download and install Safari from, if you haven’t already.

Navigate to %ProgramFiles%/Common Files/Apple/Apple Application Support (or %ProgramFiles(x86)%/Common Files/Apple/Apple Application Support if you’re running Win64).  Copy everything except the files listed above into your WebKit directory.  Note that depending on the version of Safari, and other Apple software you have installed, some of these files may not be required by WebKit.  I’ll publish a precise list of dependencies at some later point. 

And, you’re done.  Run WebKitBrowserTest.exe to make sure that everything is working as intended.

Tags: , , , ,

WebKit | WebKit .NET