Tuesday, November 13, 2007

Safari: Ok, you win

I really thought Safari's web rendering engine was doomed, though I noted some caveats.

Ok, so even I can be wrong. Yes, I still use Firefox (kind of got away from Camino, though I use it on slower machines), but clearly WebKit is a winner.

The iPhone has established WebKit compatibility as a must-have for most web sites, but the use of WebKit in the Android platform has finished the deal.

This is from the Safari WebKit blog:

...Many of you have seen the announcement of the Android Mobile Platform (www.openhandsetalliance.com) followed by today’s release of the SDK (code.google.com/android). We (Android) were happy to highlight the use of the WebKit engine as the rendering core for Android’s browser. We have been working on our mobile implementation of WebKit for quite some time. A few changes that we made to WebKit, which make it more suitable for mobile devices, have been submitted to the Tip Of Tree prior to the release of the SDK...

Another interesting change we made, which is not mobile specific, was to make the canvas tag platform independent. Again we are working on migrating this to SVN.
Most changes made to WebKit are clearly identified with a #ifdef ANDROID_[feature name]...

Canvas is the drawing environment for applications in WebKit. Knowing little, I think of it as "QuickDraw for the web".

Making Canvas "platform independent" sounds interesting.

Anyway, sorry WebKit. I was wrong, you were right.

If Google changes their Docs and Blogger sites to work better with Safari, I might even switch back. (Safari editing in Blogger causes a tag mess in the output.)

Update: See the comments for a persuasive explanation of what Canvas does and it's relation to Quartz. I'd been using "QuickDraw" as a metaphor rather than a technology, but it's very nice to get more background.

Incidentally, I write this blog primarily as a way to create notes for my own learning and reference, and secondarily as a way to "give back" to the net. I get enormous help from people who share knowledge freely, this blog is a small way to share what I know, and sometimes what I think (I mostly put opinion elsewhere).

I assumed readership would only come incidentally, as the result of a Google Search to solve a specific problem I'd written about.

Somehow, for reasons that are unclear to me, I seem to have acquired some rather knowledgeable readers. It's an unexpected pleasure.

1 comment:

Anonymous said...

The canvas tag is there to expose the drawing tech that came from NeXT's DisplayPostscript (now known as Quartz 2D) rather than the legacy Mac screen drawing routines known as Quickdraw. The actual JavaScript commands to draw on the html canvas tag has been in the experimental branches of opera and firefox for a little while. By tossing support for drawing text, it narrows the vector drawing objects and actions down to a manageable couple of dozen. Canvas is an alternative to having a vector drawing tech in a web browser rather than engineering everything in a hybrid of SVG or Flash.