Just One WebKit

Disclaimer: My opinion, not my employers, blah blah. You know the drill.

Every once in a while, something happens that makes a few people scream: “If only everyone used WebKit, everything would be so much better.”

I have two problems with this. One you’ve heard a hundred times (monoculture is bad). The other you hear less often, because it pokes a hole in the “one rendering engine” pipe dream:

There will never be one rendering engine.

Chrome is now forking WebKit because, well, who cares why, they are forking. Any of a thousand reasons could be legitimate.

Imagine a world where everyone came together and said “you know what, it’s best for the web, let’s all agree on (this one particular flavor of) WebKit.” (Yes, that would mean we no longer care about our entire standardization process, but, this is a thought experiment.)

Now imagine that world two years later.

Nobody agrees on anything now. What the hell would happen if we were all working on the same code base.

I give 6 months as the over/under on someone forking this “one true rendering engine.”

Maybe it would be security or architecture concerns, like Chrome. Maybe a feature no one else wants to implement (WebSQL/IndexedDB, depending on which side your on). Maybe mobile performance or memory usage. Maybe project governance—we open source geeks do love to fight.

Any of a thousand reasons.

And there’s one.