Today Google announced they are forking Webkit to make their own layout engine called Blink. Like most people, I’m of the opinion that this is a positive development. As someone who follows the development of the web platform in geeky detail, it’s been obvious for a while that some sort of split in the WebKit project was at least likely. Google and Apple’s engineers have engaged in barely civil spats on the projects mailing lists, and the feature sets of their respective browsers have drifted apart, as each chose to enable or disable certain features. It was also clear that the infrastructure required to build and test WebKit on its plethora of platforms ports was an absolute nightmare, with engineers having to spend an inordinate amount of time making sure things didn’t break.
For a long time, WebKit benefited from being the newest and fastest layout engine on the block. Both Mozilla and Microsoft seemed hampered by the technical debt they had acrewed in their layout engines (Gecko and Trident, respectively). However, in recent years, the situation has become a little muddier. Mozilla seemed to get more of a grip of Gecko engineering and sped-up its development considerably, although recently most of their effort has been poured into Firefox OS. Microsoft took the even more radical step of basically rewriting Trident from scratch for IE9. In the process they were able to benefit from the years of research that has gone into browser development, and use it produce an extremely performant, hardware accelerated layout engine.
It’s clear that Google have paid attention to the benefits Microsoft has gained by making such radical changes to its code. But such radical changes are impossible in WebKit, so they decided to break completely with the project in order to keep up. It’s the right decision, in my opinion.
Stop, Collaborate, and Listen
The collaboration between Apple and Google on WebKit was a bold experiment, and it worked surprisingly well for a long time, but it was never likely to last forever. The evolution of Apple’s market position, from a fellow underdog in a battle against Microsoft, to the biggest company on the planet, likely only exacerbated things. Apple are a famously secretive company, and WebKit, like Darwin, increasingly feels like a relic of the past, from when Apple embraced open source and open standards as a competitive tactic.
Alex Russell and others have opined both in brief and at length about the benefits Blink will bring to the web, and I concur with most of what they say. In particular, the fact that Opera will be contributing to Blink as well is good news. Opera’s decision to drop Presto and embrace Chromium (which at the time was understood to mean Webkit) caused quite a bit of backlash, but it makes a lot more sense in the context of this announcement. As one more chef in the noisy and sometimes acrimonious WebKit kitchen, it didn’t seem like they stood to gain much, but as a founding contributor to a project like Blink, maybe they do.
So Google and Opera will be fine, but what about Apple and WebKit? That is the big question that still remains from all this, and since I don’t expect Apple will be issuing any public statements about it anytime soon, I guess we’ll have to wait and see. Apple still contribute a lot of code to WebKit, even if their efforts have been eclipsed by Google’s in the last couple of years, but how will they react? It’s possible that the simplification provided by the removal of Chromium support from WebKit will accelerate Apple’s development, allowing them to progress their own browsers much faster. And they might be spurred to do so by the competitive threat that Google’s fork represents.
On the other hand, Apple might decide that the right response to the competitive threat is to try and constrain the evolution of the web platform, by introducing proprietary features to WebKit, and preventing their standardisation via IP threats (as they have done already with touch events), and/or by doubling-down on their native platforms. Fortunately, the popularity of Android should prove some protection against Apple abusing their popularity on mobile. Time will tell.