Who develops WebKit?

February 06, 2010

Edit: I wrote a followup to this post. Please read that before jumping to conclusions.

Who develops WebKit? Open-source projects that come from a single company typically have trouble attracting contributors from outside, but WebKit seems more successful than most in broad usage and contributions from both the industry and enthusiasts. I was curious about the trends of the project so I thought I'd dive into the commit history.

I hesitated to post this because it's easy to misinterpret. So please read the following carefully before jumping to conclusions. I am skeptical it is possible to measure contribution in a meaningful way; counting lines of diff credits people who make whitespace changes too heavily and penalizes people who spend weeks tracking down a subtle bug that results a one-liner change, while tracking commit counts weights people who commit frequently (e.g., Git users) more heavily. With that said, surely either way of counting at least correlates with investment.

Furthermore, Apple has had a working WebKit port since the first release of Safari, so the majority of continuing work that Apple does is core features that benefit everyone: all of that yummy stuff like CSS3 gradients and transforms. The work of ports (including Chromium) is primarily adapting WebKit to the particular platform, which only benefits the port. (Though as I mentioned earlier Google is gradually migrating towards more core features — I missed a bunch in that earlier list, including web forms 2 and Gears-derived HTML5 features like storage/database/app cache.)

Finally, it's difficult to credit the work of many people to a particular company, as companies tend to hire from the talent pool of existing WebKit hackers, and people like Eric worked on WebKit at Apple, then at a startup, now on WebKit at Google. I took the easy way out and credited these to the latest applicable company; for example, the work done Qt hackers on WebKit before Nokia acquired Trolltech are credited below to Nokia, which isn't accurate.

Ok, enough disclaimers. Here's a graph of commits/day with some of the heavier committers split out into separate lines. I still think it's interesting despite its many flaws. The two spikes in Apple work appear to be related to Safari releases (though the first also correlates with the release of Chrome and appear to be a lot of work on the JavaScriptCore JavaScript engine).

I'd also at some point like to take a look at which projects attract which developers. As I looked at this data I noticed in particular that SVG and the inspector seem to have attracted, better than other parts of WebKit, developers outside of any particular community. I suspect it is because those pieces of WebKit are relatively self-contained; stuff like the core layout engine are way more difficult to hack on (unless your last name is Hyatt). If you'd like to play with the data I've collected (or improve it!) the code is up on github.