Major news about core web browser technology is not very frequent so it was quite a surprise that there were two big stories this week on the topic. Both of which can have a serious effect on how we browse on mobile devices in the coming years.
Google announced on the Chromium blog that they moving to a new rendering engine called Blink. Blink is a fork of Webkit, the engine that powers Chrome and Safari today. Their reasoning is that the changes they need to make for Chrome are too difficult to roll back into Webkit and this is slowing down the pace of their development. At some point soon Chrome on desktop OSes, ChromeOS, and Android will be running on this new codebase.
This is an important development because Google has been a major contributor to the Webkit project and the loss of their efforts to the project will certainly hinder Webkit’s progress. This will likely have negative effects for other platforms using Webkit, most notably Safari on both iOS and OS X. Apple will likely need to increase staff dedicated to Webkit to keep Webkit modern. Apple tends to like to be in control of strategic pieces of functionality of its platforms so I find it unlikely they will move away from Webkit any time soon.
In other web engine news this week, Mozilla announced it is developing a new web browser engine called Servo. Servo’s design goals are to be secure and support the latest hardware (e.g. multicore processors).
To develop Servo, Mozilla is developing a new programming language called Rust. Rust is a C like language with an emphasis on security. I find it interesting that Mozilla decided it could not rely on any existing language and had to go to the bother to create something new. Rust should be available to developers by the end of 2013. No word on when Servo would be available but I would guess it wouldn’t be until late 2014 at the earliest.
Who would be a potential customer of Servo? Interestingly, Samsung. Samsung is working with Mozilla to get Servo working on Android on ARM processors. Samsung’s relationship with Google has been called into question as Samsung gains more power in the smartphone market. Having their own browser engine is another way Samsung can break its dependency on Google.
Servo is an important project for Mozilla as it tries to stay relevant as the market is increasing moving to mobile devices. Firefox Mobile has negligible market share and the future of Firefox OS is hardly certain. Servo could help keep Mozilla on the map.
I have heard many web developers openly wish that all browsers would standardize on Webkit so that it would be easier to write web pages that would work better across browsers. Even though supporting multiple browsers is a hard problem, I never supported that position. Having only one engine would be a bad thing for the evolution of the web. Having multiple competing products is what forces progress. Remember the IE6 days? Multiple browsers may make writing pages harder, but browser technology will likely move ahead at a faster pace which is a good thing for everyone.
Just as Webkit stole Mozilla’s and Microsoft’s thunder several years ago, Blink or Servo may take over as the dominant browser engine in the coming years. If nothing else, this will force the Webkit project to take a look at itself and do the hard work to keep up with the competition. It is good to see work going on to advance the state of the art in browser technology. With competition, everyone benefits.