On Nov 30, 2009, at 1:58 PM, David Hyatt wrote:

On Nov 30, 2009, at 3:45 PM, Maciej Stachowiak wrote:

WebKit (or at least the mainline) is not necessarily a great place for experiments. As our Project Goals say: "WebKit is an engineering project, not a science project." <http://webkit.org/projects/goals.html >. Of course, that's a pretty fuzzy line, because sometimes a use case is really well proven and we're not willing to wait for standards groups to get their butt in gear. But there are some potential bad scenarios with building features that don't have a clear path to standardization:

1) It will be rejected by other browser vendors and end up a WebKit- only (or nearly WebKit-only) feature, but enough WebKit-specific content depends on it that we can't drop it, even if we would like to. Then we are stuck maintaining a dead-end technology indefinitely. It seems like the SQL database may be on this path.


This is really the scenario to worry about the most. Having to support "failed" technologies is painful.

2) It will get adopted into standards, but with significant changes when other implementors and standards experts jump on the bandwagon. These changes can cause a very painful transition, since we need to remain compatible with legacy WebKit-specific content, yet at the same time we don't want to be in violation of the consensus spec. This actually happened with <canvas> - it changed incompatibly in ways that broke a bunch of WebKit-specific content (in particular Dashboard widgets), but we had to implement the standard to support content coded to Firefox. This really sucked and we have Dashboard-specific hacks still lying around in our code base as a result.


I don't really think it's fair to bring this up as a negative. Having the experiment adopted as a standard is a complete win. That the transition from experiment to reality can be painful is just an inevitable consequence of a maturing standard.

The transition could have been somewhat less painful if we'd gotten more review on <canvas> before shipping it in product. But I do agree that overall, <canvas> is a technology success story even if the path there was painful for us.


CSS gradients are a good example. The new syntax coming out of the CSS WG is way better, but none of it would have happened without the initial WebKit experiment. Because of that experiment we're eventually going to have gradients in all browsers. Will the transition be a bit painful? Sure, but the end result is that we pushed the Web forward.

Probably much less pain than <canvas> for a couple of reasons:
(a) We started getting outside review before shipping in product.
(b) The CSS prefixing convention makes it easier to support preliminary syntax at relatively low cost.


Now I don't know if GlobalScript falls into this category or not. If no other browser vendors are interested in it, we should be pretty wary. If we think the implementation of the feature can change their minds, though, then I'd say it's worth at least experimenting with.

What do other browser vendors think of this feature right now?

My impression was they weren't really into it but we could always ask directly.

Regards,
Maciej

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to